]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.c
add new windows to the back of the focus order list
[chaz/openbox] / openbox / client.c
index dfc7034838dd9ec4b485522c0d804a28a7b55f0a..0d319652dcfe4839a3a66f62e29382226aa37af6 100644 (file)
@@ -121,6 +121,7 @@ void client_manage(Window window)
     XWindowAttributes attrib;
     XSetWindowAttributes attrib_set;
 /*    XWMHints *wmhint; */
+    guint i;
 
     grab_server(TRUE);
 
@@ -187,6 +188,15 @@ void client_manage(Window window)
     stacking_list = g_list_append(stacking_list, client);
     g_hash_table_insert(client_map, (gpointer)window, client);
 
+    /* update the focus lists */
+    if (client->desktop == DESKTOP_ALL) {
+        for (i = 0; i < screen_num_desktops; ++i)
+            focus_order[i] = g_list_append(focus_order[i], client);
+    } else {
+        i = client->desktop;
+        focus_order[i] = g_list_append(focus_order[i], client);
+    }
+
     stacking_raise(client);
 
     screen_update_struts();
This page took 0.021639 seconds and 4 git commands to generate.