X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fgrab.c;h=34fd2302811db7d8b3c0313dffe696622590890a;hb=74f36c587ca5ae456434115ae28e3e07bf8a970c;hp=9c6065a745fb92b980f953558bc76a7a8b098241;hpb=1b75005e0d86ef8f4a80ad4f1ecda1d7c2c55048;p=chaz%2Fopenbox diff --git a/openbox/grab.c b/openbox/grab.c index 9c6065a7..34fd2302 100644 --- a/openbox/grab.c +++ b/openbox/grab.c @@ -80,35 +80,6 @@ gboolean grab_pointer(gboolean grab, ObCursor cur) } else if (pgrabs > 0) { if (--pgrabs == 0) { XUngrabPointer(ob_display, event_lasttime); - - /* ignore all enter events caused by ungrabbing the pointer */ - { - GSList *saved = NULL, *it; - XEvent *e; - guint n = 0; - - XSync(ob_display, FALSE); - - /* count the events */ - while (TRUE) { - e = g_new(XEvent, 1); - if (XCheckTypedEvent(ob_display, EnterNotify, e)) { - saved = g_slist_append(saved, e); - ++n; - } else { - g_free(e); - break; - } - } - /* put the events back */ - for (it = saved; it; it = g_slist_next(it)) { - XPutBackEvent(ob_display, it->data); - g_free(it->data); - } - g_slist_free(saved); - /* ignore the events */ - event_ignore_enter_focus(n); - } } ret = TRUE; } @@ -128,8 +99,9 @@ gboolean grab_pointer_window(gboolean grab, ObCursor cur, Window win) else ret = TRUE; } else if (pgrabs > 0) { - if (--pgrabs == 0) + if (--pgrabs == 0) { XUngrabPointer(ob_display, event_lasttime); + } ret = TRUE; } return ret;