Don't set a background-pixel for our client frame windows

Previously we would get a short black flicker when a client closes. This
happened because first the client's window would get hidden and only a short
moment later would awesome react to this and close its own window. In the mean
time, the X server filled the frame window with its background-pixel which was
black.

Just removing the background-pixel means we get the default value which is None.
This means that the content will be left untouched and the client's window will
be visible for a moment longer.

Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Uli Schlachter 2014-03-30 14:58:03 +02:00
parent ed3d0489ce
commit a44b3a2daf
1 changed files with 2 additions and 4 deletions

View File

@ -455,12 +455,10 @@ client_manage(xcb_window_t w, xcb_get_geometry_reply_t *wgeom, bool startup)
xcb_create_window(globalconf.connection, globalconf.default_depth, c->frame_window, s->root, xcb_create_window(globalconf.connection, globalconf.default_depth, c->frame_window, s->root,
wgeom->x, wgeom->y, wgeom->width, wgeom->height, wgeom->x, wgeom->y, wgeom->width, wgeom->height,
wgeom->border_width, XCB_COPY_FROM_PARENT, globalconf.visual->visual_id, wgeom->border_width, XCB_COPY_FROM_PARENT, globalconf.visual->visual_id,
XCB_CW_BACK_PIXEL | XCB_CW_BORDER_PIXEL | XCB_CW_BIT_GRAVITY XCB_CW_BORDER_PIXEL | XCB_CW_BIT_GRAVITY | XCB_CW_WIN_GRAVITY
| XCB_CW_WIN_GRAVITY | XCB_CW_OVERRIDE_REDIRECT | XCB_CW_EVENT_MASK | XCB_CW_OVERRIDE_REDIRECT | XCB_CW_EVENT_MASK | XCB_CW_COLORMAP,
| XCB_CW_COLORMAP,
(const uint32_t []) (const uint32_t [])
{ {
globalconf.screen->black_pixel,
globalconf.screen->black_pixel, globalconf.screen->black_pixel,
XCB_GRAVITY_NORTH_WEST, XCB_GRAVITY_NORTH_WEST,
XCB_GRAVITY_NORTH_WEST, XCB_GRAVITY_NORTH_WEST,