summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Müllner <fmuellner@gnome.org>2012-11-23 03:48:14 +0100
committerFlorian Müllner <fmuellner@gnome.org>2012-12-05 18:45:22 +0100
commit2282326f3045d876e71e2eee1fbc3e3cbe087898 (patch)
tree487ec30265ae92c1c56e594af1726577957c21f2
parent8703daccbe5ee3c1679248c19f2cdb345d12931c (diff)
downloadmutter-2282326f3045d876e71e2eee1fbc3e3cbe087898.tar.gz
Add 'switch-applications' keybinding
Add an additional "switcher" keybinding for switching between applications rather than windows (like the existing 'switch-windows' and 'switch-group' bindings). The purpose of the new keybinding is to be taken over by gnome-shell's application-based alt-tab popup, so rather than actually implementing an application switcher in mutter, let it duplicate the normal window switcher when run standalone. https://bugzilla.gnome.org/show_bug.cgi?id=688913
-rw-r--r--src/50-mutter-navigation.xml.in5
-rw-r--r--src/core/keybindings.c20
-rw-r--r--src/meta/prefs.h2
3 files changed, 26 insertions, 1 deletions
diff --git a/src/50-mutter-navigation.xml.in b/src/50-mutter-navigation.xml.in
index bf56d086c..829bef80f 100644
--- a/src/50-mutter-navigation.xml.in
+++ b/src/50-mutter-navigation.xml.in
@@ -29,9 +29,12 @@
<KeyListEntry name="move-to-workspace-down"
_description="Move window one workspace down" />
- <KeyListEntry name="switch-windows"
+ <KeyListEntry name="switch-applications"
_description="Switch applications"/>
+ <KeyListEntry name="switch-windows"
+ _description="Switch windows"/>
+
<KeyListEntry name="switch-group"
_description="Switch windows of an application"/>
diff --git a/src/core/keybindings.c b/src/core/keybindings.c
index 63b0e1387..2ec3c89ba 100644
--- a/src/core/keybindings.c
+++ b/src/core/keybindings.c
@@ -2317,8 +2317,10 @@ process_tab_grab (MetaDisplay *display,
case META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_PANELS:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS:
case META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD:
case META_KEYBINDING_ACTION_CYCLE_GROUP:
case META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_GROUP:
@@ -2425,8 +2427,10 @@ process_tab_grab (MetaDisplay *display,
break;
case META_KEYBINDING_ACTION_SWITCH_PANELS:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS:
case META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD:
/* SWITCH_* are traditionally Tab-based actions,
* and should cancel traditionally Escape-based ones.
*/
@@ -2497,11 +2501,13 @@ process_tab_grab (MetaDisplay *display,
break;
case META_KEYBINDING_ACTION_SWITCH_PANELS:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS:
case META_KEYBINDING_ACTION_SWITCH_GROUP:
key_used = TRUE;
break;
case META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD:
case META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD:
key_used = TRUE;
backward = TRUE;
@@ -3797,6 +3803,20 @@ init_builtin_key_bindings (MetaDisplay *display)
handle_switch, META_TAB_LIST_GROUP);
add_builtin_keybinding (display,
+ "switch-applications",
+ common_keybindings,
+ META_KEY_BINDING_REVERSES,
+ META_KEYBINDING_ACTION_SWITCH_APPLICATIONS,
+ handle_switch, META_TAB_LIST_NORMAL);
+
+ add_builtin_keybinding (display,
+ "switch-applications-backward",
+ common_keybindings,
+ REVERSES_AND_REVERSED,
+ META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD,
+ handle_switch, META_TAB_LIST_NORMAL);
+
+ add_builtin_keybinding (display,
"switch-windows",
common_keybindings,
META_KEY_BINDING_REVERSES,
diff --git a/src/meta/prefs.h b/src/meta/prefs.h
index f480f5892..93e1919d0 100644
--- a/src/meta/prefs.h
+++ b/src/meta/prefs.h
@@ -160,6 +160,8 @@ typedef enum _MetaKeyBindingAction
META_KEYBINDING_ACTION_WORKSPACE_RIGHT,
META_KEYBINDING_ACTION_WORKSPACE_UP,
META_KEYBINDING_ACTION_WORKSPACE_DOWN,
+ META_KEYBINDING_ACTION_SWITCH_APPLICATIONS,
+ META_KEYBINDING_ACTION_SWITCH_APPLICATIONS_BACKWARD,
META_KEYBINDING_ACTION_SWITCH_GROUP,
META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD,
META_KEYBINDING_ACTION_SWITCH_WINDOWS,