ignore another type of crossing event, caused when leaving gtk popup menus
This commit is contained in:
parent
c2b3a49e69
commit
6a9e7dea8e
1 changed files with 14 additions and 2 deletions
|
@ -333,12 +333,24 @@ static gboolean event_ignore(XEvent *e, Client *client)
|
||||||
case LeaveNotify:
|
case LeaveNotify:
|
||||||
/* NotifyUngrab occurs when a mouse button is released and the event is
|
/* NotifyUngrab occurs when a mouse button is released and the event is
|
||||||
caused, like when lowering a window */
|
caused, like when lowering a window */
|
||||||
/* NotifyVirtual occurs when ungrabbing the pointer */
|
/* NotifyVirtual occurs when ungrabbing the pointer,
|
||||||
|
NotifyNonlinearVirtual occurs when closing a gtk app's menu */
|
||||||
if (e->xcrossing.mode == NotifyGrab ||
|
if (e->xcrossing.mode == NotifyGrab ||
|
||||||
e->xcrossing.detail == NotifyInferior ||
|
e->xcrossing.detail == NotifyInferior ||
|
||||||
(e->xcrossing.mode == NotifyUngrab &&
|
(e->xcrossing.mode == NotifyUngrab &&
|
||||||
e->xcrossing.detail == NotifyVirtual))
|
(e->xcrossing.detail == NotifyVirtual ||
|
||||||
|
e->xcrossing.detail == NotifyNonlinearVirtual))) {
|
||||||
|
#ifdef DEBUG_FOCUS
|
||||||
|
g_message("EnterNotify mode %d detail %d on %lx IGNORED",
|
||||||
|
e->xcrossing.mode,
|
||||||
|
e->xcrossing.detail, client?client->window:0);
|
||||||
|
#endif
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
}
|
||||||
|
#ifdef DEBUG_FOCUS
|
||||||
|
g_message("EnterNotify mode %d detail %d on %lx", e->xcrossing.mode,
|
||||||
|
e->xcrossing.detail, client?client->window:0);
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
Loading…
Reference in a new issue