diff --git a/otk/eventdispatcher.cc b/otk/eventdispatcher.cc index d8bd539c..ff3b8b64 100644 --- a/otk/eventdispatcher.cc +++ b/otk/eventdispatcher.cc @@ -99,6 +99,10 @@ void EventDispatcher::dispatchEvents(void) void EventDispatcher::dispatchFocus(const XEvent &e) { + // ignore focus changes from grabs + if (e.xfocus.mode == NotifyGrab) + return; + if (e.type == FocusIn) { //printf("Got FocusIn!\n"); @@ -109,10 +113,6 @@ void EventDispatcher::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;