messageTray: Disable unredirection while showing banners
We don't usually show notification banners while the monitor is in fullscreen, but when we do - the notification is urgent - we should actually show the banner, even if the top-most window is unredirected. To achieve that, disable unredirection while the banner is showing. https://gitlab.gnome.org/GNOME/gnome-shell/issues/430
This commit is contained in:
parent
f1195ecb01
commit
4dc2039859
@ -1295,8 +1295,10 @@ var MessageTray = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
this._banner = this._notification.createBanner();
|
this._banner = this._notification.createBanner();
|
||||||
this._bannerClickedId = this._banner.connect('done-displaying',
|
this._bannerClickedId = this._banner.connect('done-displaying', () => {
|
||||||
this._escapeTray.bind(this));
|
Meta.enable_unredirect_for_display(global.display);
|
||||||
|
this._escapeTray();
|
||||||
|
});
|
||||||
this._bannerUnfocusedId = this._banner.connect('unfocused', () => {
|
this._bannerUnfocusedId = this._banner.connect('unfocused', () => {
|
||||||
this._updateState();
|
this._updateState();
|
||||||
});
|
});
|
||||||
@ -1308,6 +1310,7 @@ var MessageTray = new Lang.Class({
|
|||||||
this._bannerBin.y = -this._banner.actor.height;
|
this._bannerBin.y = -this._banner.actor.height;
|
||||||
this.actor.show();
|
this.actor.show();
|
||||||
|
|
||||||
|
Meta.disable_unredirect_for_display(global.display);
|
||||||
this._updateShowingNotification();
|
this._updateShowingNotification();
|
||||||
|
|
||||||
let [x, y, mods] = global.get_pointer();
|
let [x, y, mods] = global.get_pointer();
|
||||||
|
Loading…
Reference in New Issue
Block a user