]> Dogcows Code - chaz/openbox/blobdiff - openbox/client_list_menu.c
when holding Shift for the client list menus, bring the selected client to the curren...
[chaz/openbox] / openbox / client_list_menu.c
index 2e87259befef7828d6ef5e1e6d6d2352469e0c3a..c49e63e997f2dd3bca6bfa1e60a81b1aeefda7b4 100644 (file)
@@ -101,10 +101,12 @@ static void desk_menu_execute(ObMenuEntry *self, ObMenuFrame *f,
 {
     ObClient *t = self->data.normal.data;
     if (t) { /* it's set to NULL if its destroyed */
-        client_activate(t, TRUE, FALSE, TRUE, TRUE, TRUE);
+        gboolean here = state & ShiftMask;
+
+        client_activate(t, TRUE, here, TRUE, TRUE, TRUE);
         /* if the window is omnipresent then we need to go to its
            desktop */
-        if (t->desktop == DESKTOP_ALL)
+        if (!here && t->desktop == DESKTOP_ALL)
             screen_set_desktop(self->id, FALSE);
     }
     else
This page took 0.023776 seconds and 4 git commands to generate.