overview: Propagate crossing events in cover pane

When animating the overview we temporarily cover it with an actor that
ignores events. This actor should still allow crossing events to go through
as per Mutter requirements.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2045>
This commit is contained in:
Carlos Garnacho 2022-01-12 17:19:53 +01:00
parent 35d293df6c
commit 05a6b35991

View File

@ -162,7 +162,11 @@ var Overview = class {
this._coverPane = new Clutter.Actor({ opacity: 0, this._coverPane = new Clutter.Actor({ opacity: 0,
reactive: true }); reactive: true });
Main.layoutManager.overviewGroup.add_child(this._coverPane); Main.layoutManager.overviewGroup.add_child(this._coverPane);
this._coverPane.connect('event', () => Clutter.EVENT_STOP); this._coverPane.connect('event', (_actor, event) => {
return event.type() === Clutter.EventType.ENTER ||
event.type() === Clutter.EventType.LEAVE
? Clutter.EVENT_PROPAGATE : Clutter.EVENT_STOP;
});
this._coverPane.hide(); this._coverPane.hide();
// XDND // XDND