Bugfix: handle MapRequests sent between i3 registering as a wm and handling events
This fixes the problem where i3-nagbar does not come up because its MapRequest is ignored. fixes #892
This commit is contained in:
parent
bf2b25a915
commit
625401d162
14
src/main.c
14
src/main.c
|
@ -777,6 +777,20 @@ int main(int argc, char *argv[]) {
|
|||
xcb_aux_sync(conn);
|
||||
xcb_generic_event_t *event;
|
||||
while ((event = xcb_poll_for_event(conn)) != NULL) {
|
||||
if (event->response_type == 0) {
|
||||
free(event);
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Strip off the highest bit (set if the event is generated) */
|
||||
int type = (event->response_type & 0x7F);
|
||||
|
||||
/* We still need to handle MapRequests which are sent in the
|
||||
* timespan starting from when we register as a window manager and
|
||||
* this piece of code which drops events. */
|
||||
if (type == XCB_MAP_REQUEST)
|
||||
handle_event(type, event);
|
||||
|
||||
free(event);
|
||||
}
|
||||
manage_existing_windows(root);
|
||||
|
|
Loading…
Reference in New Issue