summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-06-02 03:16:02 +0000
committerDana Jansens <danakj@orodu.net>2007-06-02 03:16:02 +0000
commitc768a7dae74ddc127527d64a12f42da925c73925 (patch)
tree1ab180facbcd62b25620d444981e22ca333f7695
parenta866259d1f3fc88eb56a16e8b09712871fd09bcf (diff)
catch focus out events on the frame window - this happens with revert to parent when a window is iconified. we get focusin on the frame without a focus out - which then makes us fallback. but catch the resulting focusout on the frame to make the window lose its focused decor
-rw-r--r--openbox/event.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/openbox/event.c b/openbox/event.c
index ad146b47..f67c3d5a 100644
--- a/openbox/event.c
+++ b/openbox/event.c
@@ -363,6 +363,13 @@ static gboolean wanted_focusevent(XEvent *e, gboolean in_client_only)
/* This means focus moved from one client to another */
if (detail == NotifyNonlinearVirtual)
return TRUE;
+ /* This means focus moved off of our frame window.
+ When the client reverts to parent and it lands on our frame window,
+ and they are iconifying (not being unmanaged), then we don't get
+ a focus out from the client but only from the frame window, which
+ is this event */
+ if (detail == NotifyNonlinear)
+ return TRUE;
/* Otherwise.. */
return FALSE;