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.
This commit is contained in:
Florian Müllner 2017-03-14 17:04:36 +01:00 committed by Ray Strode
parent 585cf9c17d
commit e11404d1cf

View File

@ -123,6 +123,22 @@ var WindowMenu = new Lang.Class({
window.change_workspace(workspace.get_neighbor(dir));
});
}
let nWorkspaces = global.screen.n_workspaces;
if (nWorkspaces > 1 && !Meta.prefs_get_dynamic_workspaces()) {
item = new PopupMenu.PopupSubMenuMenuItem(_("Move to another workspace"));
this.addMenuItem(item);
let currentIndex = global.screen.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);
}
}
}
}