[mutter] Add 'switch-applications' keybinding



commit 2282326f3045d876e71e2eee1fbc3e3cbe087898
Author: Florian MÃllner <fmuellner gnome org>
Date:   Fri Nov 23 03:48:14 2012 +0100

    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

 src/50-mutter-navigation.xml.in |    5 ++++-
 src/core/keybindings.c          |   20 ++++++++++++++++++++
 src/meta/prefs.h                |    2 ++
 3 files changed, 26 insertions(+), 1 deletions(-)
---
diff --git a/src/50-mutter-navigation.xml.in b/src/50-mutter-navigation.xml.in
index bf56d08..829bef8 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 63b0e13..2ec3c89 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 f480f58..93e1919 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,



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