]> Dogcows Code - chaz/openbox/blobdiff - openbox/screen.c
When moving focus across desktops, make sure Openbox doesn't think that a window...
[chaz/openbox] / openbox / screen.c
index 3e27903fba2c95c70bf994e90cfa5c53a2994e7e..b0fa17dd45e2fcd09f87f4669a8a1013eb26240e 100644 (file)
@@ -727,6 +727,15 @@ void screen_set_desktop(guint num, gboolean dofocus)
         if (WINDOW_IS_CLIENT(it->data)) {
             ObClient *c = it->data;
             client_hide(c);
+            if (c == focus_client) {
+                /* c was focused and we didn't do fallback clearly so make sure
+                   openbox doesnt still consider the window focused.
+                   this happens when using NextWindow with allDesktops, since
+                   it doesnt want to move focus on desktop change, but the
+                   focus is not going to stay with the current window, which
+                   has now disappeared */
+                focus_set_client(NULL);
+            }
         }
     }
 
This page took 0.022087 seconds and 4 git commands to generate.