[gnome-shell/wip/rstrode/login-screen-extensions: 66/134] windowMenu: Bring back workspaces submenu for static workspaces




commit 4001f827456d07f608e79c6ff2204377a1cfd8da
Author: Florian Müllner <fmuellner gnome org>
Date:   Tue Mar 14 17:04:36 2017 +0100

    windowMenu: Bring back workspaces submenu for static workspaces
    
    When the titlebar context menu was moved to the shell, the submenu for
    moving to a specific workspace was intentionally left out; some people
    are quite attached to it though, so bring it back when static workspaces
    are used.

 js/ui/windowMenu.js | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
---
diff --git a/js/ui/windowMenu.js b/js/ui/windowMenu.js
index 628f145ea9..f8eb4398c3 100644
--- a/js/ui/windowMenu.js
+++ b/js/ui/windowMenu.js
@@ -115,6 +115,23 @@ var WindowMenu = class extends PopupMenu.PopupMenu {
                         window.change_workspace(workspace.get_neighbor(dir));
                     });
                 }
+
+                let { workspaceManager } = global;
+                let nWorkspaces = workspaceManager.n_workspaces;
+                if (nWorkspaces > 1 && !Meta.prefs_get_dynamic_workspaces()) {
+                    item = new PopupMenu.PopupSubMenuMenuItem(_("Move to another workspace"));
+                    this.addMenuItem(item);
+
+                    let currentIndex = workspaceManager.get_active_workspace_index();
+                    for (let i = 0; i < nWorkspaces; i++) {
+                        let index = i;
+                        let name = Meta.prefs_get_workspace_name(i);
+                        let subitem = item.menu.addAction(name, () => {
+                            window.change_workspace_by_index(index, false);
+                        });
+                        subitem.setSensitive(currentIndex != i);
+                    }
+                }
             }
         }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]