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 @@
-
+
+
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;
@@ -3796,6 +3802,20 @@ init_builtin_key_bindings (MetaDisplay *display)
META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD,
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,
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,