]> Dogcows Code - chaz/openbox/blobdiff - openbox/stacking.c
when focusing or raising a window which is modal child for a direct parent, raise...
[chaz/openbox] / openbox / stacking.c
index 92a5285d79f3a1ec22882868bbccd136fa5a7675..4c24e3e87f06ed2414006f41abe266e3872ba7a9 100644 (file)
@@ -221,6 +221,15 @@ static void restack_windows(ObClient *selected, gboolean raise)
     GList *modals = NULL;
     GList *trans = NULL;
 
+    if (raise) {
+        ObClient *p;
+
+        /* if a window is modal for another single window, then raise it to the
+           top too, the same is done with the focus order */
+        while (selected->modal && (p = client_direct_parent(selected)))
+            selected = p;
+    }
+
     /* remove first so we can't run into ourself */
     it = g_list_find(stacking_list, selected);
     g_assert(it);
This page took 0.021375 seconds and 4 git commands to generate.