use ignore enters instead of removing them from the queue
Dana Jansens danakj@orodu.net
2 files changed,
4 insertions(+),
9 deletions(-)
M
openbox/client.c
→
openbox/client.c
@@ -512,11 +512,9 @@ events */
XSync(ob_display, FALSE); if (focus_client == self) { - XEvent e; - - /* focus the last focused window on the desktop, and ignore enter - events from the unmap so it doesnt mess with the focus */ - while (XCheckTypedEvent(ob_display, EnterNotify, &e)); + /* ignore enter events from the unmap so it doesnt mess with the focus + */ + event_ignore_queued_enters(); }
M
openbox/popup.c
→
openbox/popup.c
@@ -213,14 +213,11 @@
void popup_hide(ObPopup *self) { if (self->mapped) { - XEvent e; - XUnmapWindow(ob_display, self->bg); self->mapped = FALSE; /* kill enter events cause by this unmapping */ - XSync(ob_display, FALSE); - while (XCheckTypedEvent(ob_display, EnterNotify, &e)); + event_ignore_queued_enters(); } }