]> Dogcows Code - chaz/openbox/commitdiff
allow focus to be moved off top level managed windows, as long as its not None or...
authorDana Jansens <danakj@orodu.net>
Sun, 12 Oct 2003 20:28:35 +0000 (20:28 +0000)
committerDana Jansens <danakj@orodu.net>
Sun, 12 Oct 2003 20:28:35 +0000 (20:28 +0000)
openbox/event.c

index 05024e72a9a59eaffc83debe8ef1461ebab86654..bb138d3dca77815f0766410e492776f7bf4be2fb 100644 (file)
@@ -355,8 +355,15 @@ static void event_done(gpointer data)
     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;
     }
 
This page took 0.02396 seconds and 4 git commands to generate.