windowManager: Add shortcut for toggling quick settings

Ever since the various status menus were combined into a single
aggregate menu, the menu has been an important entry point. Alas,
we never got around to adding a shortcut for it, not least because
there never was a good candidate.

We just freed super+s which works as either "system" or
"(quick) settings", so use that.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5670

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2716>
This commit is contained in:
Florian Müllner
2023-03-21 17:07:19 +01:00
parent e9cabd00fb
commit ace8676ad0
4 changed files with 25 additions and 0 deletions

View File

@ -640,6 +640,10 @@ class Panel extends St.Widget {
this._toggleMenu(this.statusArea.dateMenu);
}
toggleQuickSettings() {
this._toggleMenu(this.statusArea.quickSettings);
}
closeCalendar() {
this._closeMenu(this.statusArea.dateMenu);
}

View File

@ -812,6 +812,13 @@ var WindowManager = class {
Shell.ActionMode.POPUP,
this._toggleCalendar.bind(this));
this.addKeybinding('toggle-quick-settings',
new Gio.Settings({schema_id: SHELL_KEYBINDINGS_SCHEMA}),
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW |
Shell.ActionMode.POPUP,
this._toggleQuickSettings.bind(this));
this.addKeybinding('switch-to-application-1',
new Gio.Settings({schema_id: SHELL_KEYBINDINGS_SCHEMA}),
Meta.KeyBindingFlags.IGNORE_AUTOREPEAT,
@ -1723,6 +1730,10 @@ var WindowManager = class {
Main.panel.toggleCalendar();
}
_toggleQuickSettings() {
Main.panel.toggleQuickSettings();
}
_showWorkspaceSwitcher(display, window, binding) {
let workspaceManager = display.get_workspace_manager();