From fb4a4ca4a28a4a7b250ba84685d6d8868002592d Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Tue, 19 May 2020 17:32:22 -0300 Subject: [PATCH] appDisplay: Redisplay folders before AppDisplay When filtering out the app icons, AppDisplay calls FolderIcon.getAppIds(), which then calls FolderView.getAllItems(). This last function reads the already added app icons inside the given folder, and return their app ids. So far, so good. When the GSettings backing a folder changes, FolderIcon emits 'apps-changed' to notify AppDisplay that the folder changed. Cool. When AppDisplay receives this signal, it first recreates its own icons, then updates the folders, and finally hides the icons that are inside folders. This series of events is unfortunate. Future patches will need the folder to be updated *before* AppDisplay updates its own icons. Update folder icons before chaining up to BaseAppView._redisplay(). https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1271 --- js/ui/appDisplay.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index 0b545230a..68b60d700 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -430,11 +430,11 @@ class AppDisplay extends BaseAppView { } _redisplay() { - super._redisplay(); - this._folderIcons.forEach(icon => { icon.view._redisplay(); }); + + super._redisplay(); this._refilterApps(); }