X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Feventdispatcher.cc;h=6c15a60bcf8d0aa9be411a517971eaf42b24630b;hb=bc88d310fea71823fb2c61d071ff499579bffaba;hp=ad44fe2e21e70aa5bf30f4038a7c89ab72502101;hpb=b8f89ee368324f54a95f9ac8c5a24948365fb5ab;p=chaz%2Fopenbox diff --git a/otk/eventdispatcher.cc b/otk/eventdispatcher.cc index ad44fe2e..6c15a60b 100644 --- a/otk/eventdispatcher.cc +++ b/otk/eventdispatcher.cc @@ -99,10 +99,6 @@ void OtkEventDispatcher::dispatchEvents(void) void OtkEventDispatcher::dispatchFocus(const XEvent &e) { - // ignore all focus changes from grabs - if (e.xfocus.mode != NotifyNormal) - return; - if (e.type == FocusIn) { //printf("Got FocusIn!\n"); @@ -113,6 +109,10 @@ void OtkEventDispatcher::dispatchFocus(const XEvent &e) } else if (e.type == FocusOut) { //printf("Got FocusOut!\n"); + // ignore FocusOut changes from grabs + if (e.xfocus.mode == NotifyGrab) + return; + // FocusOut events just make us look for FocusIn events. They are ignored // otherwise. XEvent fi;