namespace otk {
OtkEventDispatcher::OtkEventDispatcher()
- : _fallback(0), _master(0), _focus(None)
+ : _fallback(0), _master(0)
{
}
void OtkEventDispatcher::dispatchFocus(const XEvent &e)
{
-
if (e.type == FocusIn) {
//printf("Got FocusIn!\n");
} 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;