appDisplay: Don't clear signal handler id before emitting

Otherwise we won't clear the 'view-loaded' handler after it was emitted.

Also move field initialization to the correct place, i.e. the init
function of the base class.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1169
This commit is contained in:
Jonas Ådahl 2020-04-02 19:47:52 +02:00 committed by Florian Müllner
parent 343b3351f1
commit a9df4e7516

View File

@ -157,6 +157,10 @@ var BaseAppView = GObject.registerClass({
this._items = new Map(); this._items = new Map();
this._orderedItems = []; this._orderedItems = [];
this._animateLaterId = 0;
this._viewLoadedHandlerId = 0;
this._viewIsReady = false;
} }
_childFocused(_actor) { _childFocused(_actor) {
@ -192,8 +196,6 @@ var BaseAppView = GObject.registerClass({
this._items.set(icon.id, icon); this._items.set(icon.id, icon);
}); });
this._animateLaterId = 0;
this._viewLoadedHandlerId = 0;
this._viewIsReady = true; this._viewIsReady = true;
this.emit('view-loaded'); this.emit('view-loaded');
} }
@ -412,8 +414,6 @@ var AllView = GObject.registerClass({
this._lastOvershootY = -1; this._lastOvershootY = -1;
this._lastOvershootTimeoutId = 0; this._lastOvershootTimeoutId = 0;
this._viewIsReady = false;
Main.overview.connect('hidden', () => this.goToPage(0)); Main.overview.connect('hidden', () => this.goToPage(0));
this._redisplayWorkId = Main.initializeDeferredWork(this, this._redisplay.bind(this)); this._redisplayWorkId = Main.initializeDeferredWork(this, this._redisplay.bind(this));