allow focus to be moved off top level managed windows, as long as its not None or the root.
Dana Jansens danakj@orodu.net
1 files changed,
9 insertions(+),
2 deletions(-)
jump to
M
openbox/event.c
→
openbox/event.c
@@ -355,8 +355,15 @@
focus_hilite = focus_in; if (focus_client != last) { - if (!focus_client) - focus_fallback(OB_FOCUS_FALLBACK_NOFOCUS); + if (!focus_client) { + Window w; + int r; + + /* is focus anywhere valid? */ + XGetInputFocus(ob_display, &w, &r); + if (!w || w == RootWindow(ob_display, ob_screen)) + focus_fallback(OB_FOCUS_FALLBACK_NOFOCUS); + } last = focus_client; }