messageTray: Don't create notification policy on demand

This was changed in commit 8f15193b4 as a work-around for an ES6
class limitation, but now that Sources are GObject subclasses, we
no longer need to use that somewhat surprising pattern.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1131
This commit is contained in:
Florian Müllner 2020-03-23 20:59:31 +01:00 committed by Georges Basile Stavracas Neto
parent 279072795f
commit 01a57206bc
4 changed files with 9 additions and 11 deletions

View File

@ -292,12 +292,12 @@ class TelepathyClient extends Tp.BaseClient {
var ChatSource = HAVE_TP ? GObject.registerClass( var ChatSource = HAVE_TP ? GObject.registerClass(
class ChatSource extends MessageTray.Source { class ChatSource extends MessageTray.Source {
_init(account, conn, channel, contact, client) { _init(account, conn, channel, contact, client) {
super._init(contact.get_alias());
this._account = account; this._account = account;
this._contact = contact; this._contact = contact;
this._client = client; this._client = client;
super._init(contact.get_alias());
this.isChat = true; this.isChat = true;
this._pendingMessages = []; this._pendingMessages = [];

View File

@ -762,12 +762,10 @@ var Source = GObject.registerClass({
this.notifications = []; this.notifications = [];
this._policy = null; this._policy = this._createPolicy();
} }
get policy() { get policy() {
if (!this._policy)
this._policy = this._createPolicy();
return this._policy; return this._policy;
} }

View File

@ -416,11 +416,11 @@ var FdoNotificationDaemon = class FdoNotificationDaemon {
var FdoNotificationDaemonSource = GObject.registerClass( var FdoNotificationDaemonSource = GObject.registerClass(
class FdoNotificationDaemonSource extends MessageTray.Source { class FdoNotificationDaemonSource extends MessageTray.Source {
_init(title, pid, sender, appId) { _init(title, pid, sender, appId) {
super._init(title);
this.pid = pid; this.pid = pid;
this.app = this._getApp(appId); this.app = this._getApp(appId);
super._init(title);
this.initialTitle = title; this.initialTitle = title;
if (this.app) if (this.app)
@ -631,12 +631,12 @@ class GtkNotificationDaemonAppSource extends MessageTray.Source {
if (!app) if (!app)
throw new InvalidAppError(); throw new InvalidAppError();
super._init(app.get_name());
this._appId = appId; this._appId = appId;
this._app = app; this._app = app;
this._objectPath = objectPath; this._objectPath = objectPath;
super._init(app.get_name());
this._notifications = {}; this._notifications = {};
this._notificationPending = false; this._notificationPending = false;
} }

View File

@ -57,11 +57,11 @@ var WindowAttentionHandler = class {
var WindowAttentionSource = GObject.registerClass( var WindowAttentionSource = GObject.registerClass(
class WindowAttentionSource extends MessageTray.Source { class WindowAttentionSource extends MessageTray.Source {
_init(app, window) { _init(app, window) {
super._init(app.get_name());
this._window = window; this._window = window;
this._app = app; this._app = app;
super._init(app.get_name());
this.signalIDs = []; this.signalIDs = [];
this.signalIDs.push(this._window.connect('notify::demands-attention', this.signalIDs.push(this._window.connect('notify::demands-attention',
this._sync.bind(this))); this._sync.bind(this)));