all repos — openbox @ eb1cd9cc499da864b04cc39a2cf6bd8bf247248b

openbox fork - make it a bit more like ryudo

ignore some focus events that shouldnt be reacted to
Dana Jansens danakj@orodu.net
commit

eb1cd9cc499da864b04cc39a2cf6bd8bf247248b

parent

dc43b74abdfdf9f8d847ba562accd8ea6dcd52b1

1 files changed, 6 insertions(+), 5 deletions(-)

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

@@ -348,10 +348,6 @@ /* This means focus moved from one client to another */

if (detail == NotifyNonlinearVirtual) return TRUE; - /* This means focus reverted off of a client */ - if (detail == NotifyInferior) - return TRUE; - /* Otherwise.. */ return FALSE; } else {

@@ -391,7 +387,12 @@ static gboolean event_ignore(XEvent *e, ObClient *client)

{ switch(e->type) { case FocusIn: + if (!wanted_focusevent(e)) + return TRUE; + break; case FocusOut: + if (client == NULL) + return TRUE; if (!wanted_focusevent(e)) return TRUE; break;

@@ -454,7 +455,7 @@ /* crossing events for menu */

event_handle_menu(e); } else if (e->type == FocusIn) { if (e->xfocus.detail == NotifyPointerRoot || - e->xfocus.detail == NotifyDetailNone) { + e->xfocus.detail == NotifyDetailNone) { ob_debug_type(OB_DEBUG_FOCUS, "Focus went to root\n"); /* Focus has been reverted to the root window or nothing FocusOut events come after UnmapNotify, so we don't need to