From 48a2b6cb0bb4a615fd273c9256019786fe17baf8 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Sat, 29 Jun 2019 13:22:08 -0300 Subject: [PATCH] baseAppView: Call loadGrid() directly Now that the three views follow the exact same loading routine (remove all + load apps + load grid), we don't need each view call loadGrid() directly anymore. This is an important step in order to animate adding and removing icons, since now we can diff old and new app icons properly. Move all calls to BaseAppView.loadGrid() to a single one after BaseAppView._loadApps(). Also add the underscore prefix, since this is now considered a protected function. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/645 --- js/ui/appDisplay.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index 714f6d148..6bdd2ee51 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -123,6 +123,7 @@ class BaseAppView { _redisplay() { this.removeAll(); this._loadApps(); + this._loadGrid(); } getAllItems() { @@ -146,7 +147,7 @@ class BaseAppView { return a.name.localeCompare(b.name); } - loadGrid() { + _loadGrid() { this._allItems.sort(this._compareItems); this._allItems.forEach(item => this._grid.addItem(item)); this.emit('view-loaded'); @@ -417,8 +418,10 @@ var AllView = class AllView extends BaseAppView { { isDraggable: favoritesWritable }); this.addItem(icon); }); + } - this.loadGrid(); + _loadGrid() { + super._loadGrid(); this._refilterApps(); } @@ -733,8 +736,6 @@ var FrequentView = class FrequentView extends BaseAppView { { isDraggable: favoritesWritable }); this.addItem(appIcon); } - - this.loadGrid(); } // Called before allocation to calculate dynamic spacing @@ -1173,8 +1174,6 @@ var FolderView = class FolderView extends BaseAppView { addAppId(appInfo.get_id()); }); - - this.loadGrid(); } };