]> Dogcows Code - chaz/openbox/blobdiff - openbox/stacking.c
when placing transients in the stacking order, only use relatives that are on screen...
[chaz/openbox] / openbox / stacking.c
index b6e81dbf5e3adce2eb53b29bcf60037cd76b8302..2c80ada00cc42712e3d384b2eb8e5828a86311f5 100644 (file)
@@ -382,8 +382,14 @@ static GList *find_highest_relative(ObClient *client)
         for (it = stacking_list; !ret && it; it = g_list_next(it)) {
             if (WINDOW_IS_CLIENT(it->data)) {
                 ObClient *c = it->data;
-                /* only look at windows in the same layer */
-                if (c->layer == client->layer) {
+                /* only look at windows in the same layer and that are
+                   visible */
+                if (c->layer == client->layer &&
+                    !c->iconic && 
+                    (c->desktop == client->desktop ||
+                     c->desktop == DESKTOP_ALL ||
+                     client->desktop == DESKTOP_ALL))
+                {
                     GSList *sit;
 
                     /* go through each top level parent and see it this window
This page took 0.020264 seconds and 4 git commands to generate.