windowManager: Replace sessionMode.allowKeybindingsWhenModal

The original condition the property was based on was added to make
the a11y switcher available in the login screen, though it did never
work properly - after popping up the switcher, additional tab key
presses were ignored. As we are now able to filter bindings much more
selectively, we can simplify the check and drop the sessionMode property.

https://bugzilla.gnome.org/show_bug.cgi?id=688202
This commit is contained in:
Florian Müllner 2012-08-20 16:20:23 +02:00
parent 76d776245b
commit 28b559e812
2 changed files with 2 additions and 6 deletions

View File

@ -14,7 +14,6 @@ const _modes = {
showCalendarEvents: false,
allowSettings: false,
allowExtensions: false,
allowKeybindingsWhenModal: false,
hasRunDialog: false,
hasWorkspaces: false,
hasWindows: false,
@ -32,7 +31,6 @@ const _modes = {
},
'gdm': {
allowKeybindingsWhenModal: true,
hasNotifications: true,
isGreeter: true,
isPrimary: true,

View File

@ -474,10 +474,8 @@ const WindowManager = new Lang.Class({
},
_filterKeybinding: function(shellwm, binding) {
if (!Main.sessionMode.allowKeybindingsWhenModal) {
if (Main.modalCount > (Main.overview.visible ? 1 : 0))
if (Main.keybindingMode == Main.KeybindingMode.NONE)
return true;
}
// There's little sense in implementing a keybinding in mutter and
// not having it work in NORMAL mode; handle this case generically