lookingGlass: Use lookingGlass dialog for modal grab

We want the whole dialog to handle events while shown. To compensate
for the entry not being "grabbed", make it take focus when showing.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2045>
This commit is contained in:
Carlos Garnacho 2021-11-18 00:38:11 +01:00
parent 05a6b35991
commit bad385d15c

View File

@ -1560,7 +1560,7 @@ class LookingGlass extends St.BoxLayout {
if (this._open) if (this._open)
return; return;
if (!Main.pushModal(this._entry, { actionMode: Shell.ActionMode.LOOKING_GLASS })) if (!Main.pushModal(this, { actionMode: Shell.ActionMode.LOOKING_GLASS }))
return; return;
this._notebook.selectIndex(0); this._notebook.selectIndex(0);
@ -1580,6 +1580,7 @@ class LookingGlass extends St.BoxLayout {
}); });
this._windowList.update(); this._windowList.update();
this._entry.grab_key_focus();
} }
close() { close() {
@ -1601,7 +1602,7 @@ class LookingGlass extends St.BoxLayout {
duration, duration,
mode: Clutter.AnimationMode.EASE_OUT_QUAD, mode: Clutter.AnimationMode.EASE_OUT_QUAD,
onComplete: () => { onComplete: () => {
Main.popModal(this._entry); Main.popModal(this);
this.hide(); this.hide();
}, },
}); });