all repos — openbox @ 6a9e7dea8e9c20a65e5bb513ca9d7a92f3db47d3

openbox fork - make it a bit more like ryudo

ignore another type of crossing event, caused when leaving gtk popup menus
Dana Jansens danakj@orodu.net
commit

6a9e7dea8e9c20a65e5bb513ca9d7a92f3db47d3

parent

c2b3a49e692b723bd277ef4360f89b9aaae4afd6

1 files changed, 14 insertions(+), 2 deletions(-)

jump to
M openbox/event.copenbox/event.c

@@ -333,12 +333,24 @@ case EnterNotify:

case LeaveNotify: /* NotifyUngrab occurs when a mouse button is released and the event is 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 || e->xcrossing.detail == NotifyInferior || (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; + } +#ifdef DEBUG_FOCUS + g_message("EnterNotify mode %d detail %d on %lx", e->xcrossing.mode, + e->xcrossing.detail, client?client->window:0); +#endif break; } return FALSE;