From fea5ecc9e8f4a2c70f1fc518696164b920fd4bcb Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Mon, 11 Nov 2019 13:10:53 -0300 Subject: [PATCH] allView: Ensure event blocker is reactive before popup is open The event blocker in AllView is responsible for stealing click events from the icon grid and closing the folder popup. The event blocker is kept unreactive when no folder popup is visible, and it's made reactive as a response to the 'open-state-changed' signal. Using this signal, though, is problematic. When opening an app folder, the icon grid first opens space for the folder to fit in; during this period, it's possible to click on another folder icon, and break the icon grid state. Make sure the event blocker is reactive immediately after clicking on a folder icon. Related: https://gitlab.gnome.org/GNOME/gnome-shell/issues/1470 https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/816 --- js/ui/appDisplay.js | 1 + 1 file changed, 1 insertion(+) diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index f9706aa2e..51d108b0c 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -600,6 +600,7 @@ var AllView = GObject.registerClass({ openSpaceForPopup(item, side, nRows) { this._updateIconOpacities(true); this._displayingPopup = true; + this._eventBlocker.reactive = true; this._grid.openExtraSpace(item, side, nRows); }