diff options
| author | Dana Jansens <danakj@orodu.net> | 2007-06-02 03:16:02 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2007-06-02 03:16:02 +0000 |
| commit | c768a7dae74ddc127527d64a12f42da925c73925 (patch) | |
| tree | 1ab180facbcd62b25620d444981e22ca333f7695 | |
| parent | a866259d1f3fc88eb56a16e8b09712871fd09bcf (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.c | 7 |
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; |
