[gnome-shell] status/keyboard: Don't allow the switcher in the message tray



commit e5ca53e56c3a1c97bbfd801ee7996c7424089fc0
Author: Rui Matos <tiagomatos gmail com>
Date:   Mon Mar 4 14:41:55 2013 +0100

    status/keyboard: Don't allow the switcher in the message tray
    
    SwitcherPopup relies on being able to pushModal(), setting the stage
    input mode to FULLSCREEN, and then doing regular event processing on
    the actor it adds to uiGroup. But MessageTray uses GrabHelper which
    sets up a 'captured-event' handler on the stage and thus gets all
    events itself.
    
    This, of course, breaks the switcher if it's brought up in the message
    tray so, for now, we'll just prevent it from being used there.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=693907

 js/ui/status/keyboard.js |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/status/keyboard.js b/js/ui/status/keyboard.js
index eb668fa..9243905 100644
--- a/js/ui/status/keyboard.js
+++ b/js/ui/status/keyboard.js
@@ -337,14 +337,14 @@ const InputSourceIndicator = new Lang.Class({
             Main.wm.addKeybinding('switch-input-source',
                                   new Gio.Settings({ schema: "org.gnome.desktop.wm.keybindings" }),
                                   Meta.KeyBindingFlags.REVERSES,
-                                  Shell.KeyBindingMode.ALL,
+                                  Shell.KeyBindingMode.ALL & ~Shell.KeyBindingMode.MESSAGE_TRAY,
                                   Lang.bind(this, this._switchInputSource));
         this._keybindingActionBackward =
             Main.wm.addKeybinding('switch-input-source-backward',
                                   new Gio.Settings({ schema: "org.gnome.desktop.wm.keybindings" }),
                                   Meta.KeyBindingFlags.REVERSES |
                                   Meta.KeyBindingFlags.REVERSED,
-                                  Shell.KeyBindingMode.ALL,
+                                  Shell.KeyBindingMode.ALL & ~Shell.KeyBindingMode.MESSAGE_TRAY,
                                   Lang.bind(this, this._switchInputSource));
         this._settings = new Gio.Settings({ schema: DESKTOP_INPUT_SOURCES_SCHEMA });
         this._settings.connect('changed::' + KEY_CURRENT_INPUT_SOURCE, Lang.bind(this, 
this._currentInputSourceChanged));


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