Pass events to the OSK in dialogs which grab events
With commit c29e0cf6e60a1296b43fc33d94f2acc649046cf9 the grabHelper already started using a similar mechanism to funnel events to the osk while a ClutterGrab is in effect. ModalDialog, the unlockDialog and lookingGlass don't make use of the grabHelper though, they use Main.pushModal() themselves, so those need to funnel the events to the OSK themselves. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2263>
This commit is contained in:
parent
61713c7366
commit
66331e1244
@ -1421,6 +1421,13 @@ class LookingGlass extends St.BoxLayout {
|
||||
this._resize();
|
||||
}
|
||||
|
||||
vfunc_captured_event(event) {
|
||||
if (Main.keyboard.maybeHandleEvent(event))
|
||||
return Clutter.EVENT_STOP;
|
||||
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
_updateFont() {
|
||||
let fontName = this._interfaceSettings.get_string('monospace-font-name');
|
||||
let fontDesc = Pango.FontDescription.from_string(fontName);
|
||||
|
@ -114,6 +114,13 @@ var ModalDialog = GObject.registerClass({
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
vfunc_captured_event(event) {
|
||||
if (Main.keyboard.maybeHandleEvent(event))
|
||||
return Clutter.EVENT_STOP;
|
||||
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
clearButtons() {
|
||||
this.dialogLayout.clearButtons();
|
||||
}
|
||||
|
@ -625,6 +625,13 @@ var UnlockDialog = GObject.registerClass({
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
vfunc_captured_event(event) {
|
||||
if (Main.keyboard.maybeHandleEvent(event))
|
||||
return Clutter.EVENT_STOP;
|
||||
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
_createBackground(monitorIndex) {
|
||||
let monitor = Main.layoutManager.monitors[monitorIndex];
|
||||
let widget = new St.Widget({
|
||||
|
Loading…
x
Reference in New Issue
Block a user