]> git.sur5r.net Git - i3/i3/commit
Major change: Redirect events instead of handle the notifies.
authorMichael Stapelberg <michael+x200@stapelberg.de>
Mon, 9 Mar 2009 23:51:15 +0000 (00:51 +0100)
committerMichael Stapelberg <michael+x200@stapelberg.de>
Mon, 9 Mar 2009 23:51:15 +0000 (00:51 +0100)
commitc025678177ae0a82ffc714000f5a8461685a1bc3
treebd2d3739044d555111736a7851285ee54f39cb48
parent3f482bd3b35e33194954dbcde37645c981881a34
Major change: Redirect events instead of handle the notifies.

By specifying XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT, the window manager
will get map request events instead of map notify events, and therefore
can act sooner (the window won’t be positioned on the screen and moved
afterwards).

Furthermore, this fixes some problems with GIMP/VLC (and probably others)
which caused endless loops.

Also, events which should be ignored are now saved in a queue rather than
saving just the last event. This should eliminate race conditions.

Note that there is a new FIXME in src/handlers.c. Some windows generate
unmap notify events when reparenting while others don’t. We need to
understand, document and implement a more correct way to handle this.
include/data.h
include/handlers.h
src/handlers.c
src/mainx.c