messageTray: Use new notification-removed
signal to cleanup notifications
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3173>
This commit is contained in:
parent
ec5bbfe319
commit
050e4e9a6e
@ -925,6 +925,7 @@ export const MessageTray = GObject.registerClass({
|
|||||||
|
|
||||||
source.connectObject(
|
source.connectObject(
|
||||||
'notification-show', this._onNotificationShow.bind(this),
|
'notification-show', this._onNotificationShow.bind(this),
|
||||||
|
'notification-removed', this._onNotificationRemoved.bind(this),
|
||||||
'destroy', () => this._removeSource(source), this);
|
'destroy', () => this._removeSource(source), this);
|
||||||
|
|
||||||
this.emit('source-added', source);
|
this.emit('source-added', source);
|
||||||
@ -952,7 +953,7 @@ export const MessageTray = GObject.registerClass({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_onNotificationDestroy(notification) {
|
_onNotificationRemoved(source, notification) {
|
||||||
if (this._notification === notification) {
|
if (this._notification === notification) {
|
||||||
this._notificationRemoved = true;
|
this._notificationRemoved = true;
|
||||||
if (this._notificationState === State.SHOWN ||
|
if (this._notificationState === State.SHOWN ||
|
||||||
@ -983,8 +984,6 @@ export const MessageTray = GObject.registerClass({
|
|||||||
let bannerCount = this._notification ? 1 : 0;
|
let bannerCount = this._notification ? 1 : 0;
|
||||||
let full = this.queueCount + bannerCount >= MAX_NOTIFICATIONS_IN_QUEUE;
|
let full = this.queueCount + bannerCount >= MAX_NOTIFICATIONS_IN_QUEUE;
|
||||||
if (!full || notification.urgency === Urgency.CRITICAL) {
|
if (!full || notification.urgency === Urgency.CRITICAL) {
|
||||||
notification.connect('destroy',
|
|
||||||
this._onNotificationDestroy.bind(this));
|
|
||||||
this._notificationQueue.push(notification);
|
this._notificationQueue.push(notification);
|
||||||
this._notificationQueue.sort(
|
this._notificationQueue.sort(
|
||||||
(n1, n2) => n2.urgency - n1.urgency);
|
(n1, n2) => n2.urgency - n1.urgency);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user