calendar: Disconnect signals when resetting notification
Since commit 5fb8d4f730
, a NotificationMessage's notification property
is reset to null when the notification is destroyed. However at that
point we still have connected signal handlers around that we'll try
to disconnect later.
Avoid the warnings by disconnecting and resetting the handler IDs at
the same time as the notification.
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/308
This commit is contained in:
parent
945a019974
commit
b57832716a
@ -779,6 +779,7 @@ var NotificationMessage = new Lang.Class({
|
|||||||
this.notification.destroy(MessageTray.NotificationDestroyedReason.DISMISSED);
|
this.notification.destroy(MessageTray.NotificationDestroyedReason.DISMISSED);
|
||||||
});
|
});
|
||||||
this._destroyId = notification.connect('destroy', () => {
|
this._destroyId = notification.connect('destroy', () => {
|
||||||
|
this._disconnectNotificationSignals();
|
||||||
this.notification = null;
|
this.notification = null;
|
||||||
if (!this._closed)
|
if (!this._closed)
|
||||||
this.close();
|
this.close();
|
||||||
@ -808,7 +809,10 @@ var NotificationMessage = new Lang.Class({
|
|||||||
|
|
||||||
_onDestroy() {
|
_onDestroy() {
|
||||||
this.parent();
|
this.parent();
|
||||||
|
this._disconnectNotificationSignals();
|
||||||
|
},
|
||||||
|
|
||||||
|
_disconnectNotificationSignals() {
|
||||||
if (this._updatedId)
|
if (this._updatedId)
|
||||||
this.notification.disconnect(this._updatedId);
|
this.notification.disconnect(this._updatedId);
|
||||||
this._updatedId = 0;
|
this._updatedId = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user