viewSelector: Avoid stealing focus from other entries into overview entry

The captured-event handler just redirects focus there on the first keypress,
what it doesn't account for is that other entries may be active while the
Activities overview is opened (eg. alt-f2, or other modal dialogs). Play
along with other entries, and make it only steal focus if no other entry
is selected.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/33

Closes: #33
This commit is contained in:
Carlos Garnacho 2018-02-10 00:18:26 +01:00 committed by Florian Müllner
parent 1ce5ed8685
commit bc4462cd0c

View File

@ -606,7 +606,7 @@ var ViewSelector = new Lang.Class({
// - cancel the search // - cancel the search
this.reset(); this.reset();
} }
} else if (!this._text.has_key_focus() && } else if (!(global.stage.get_key_focus() instanceof Clutter.Text) &&
(event.type() == Clutter.EventType.KEY_PRESS || (event.type() == Clutter.EventType.KEY_PRESS ||
event.type() == Clutter.EventType.KEY_RELEASE)) { event.type() == Clutter.EventType.KEY_RELEASE)) {
let unichar = event.get_key_unicode(); let unichar = event.get_key_unicode();