[gnome-shell/gbsneto/pagination: 2/8] appDisplay: Don't destroy FolderView directly



commit 3c3c3b7c69b14819a95d893dfb5a451614e0ad5d
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Wed May 20 16:22:36 2020 -0300

    appDisplay: Don't destroy FolderView directly
    
    When FolderIcon is destroyed, it destroyed the FolderView and, if
    there's a folder dialog present, it destroys the dialog as well.
    
    Turns out, the folder dialog adds the icon's FolderView to itself.
    The view becomes part of the dialog's actor tree. When the dialog
    is destroyed, it also tries to destroy the view - but the folder
    view was already destroyed by FolderIcon!
    
    Fix that by letting the dialog destroy the folder view if it exists,
    otherwise destroy the folder view directly.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1271

 js/ui/appDisplay.js | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js
index f50d9158cb..76546c887f 100644
--- a/js/ui/appDisplay.js
+++ b/js/ui/appDisplay.js
@@ -1175,15 +1175,15 @@ var FolderIcon = GObject.registerClass({
             this._dragMonitor = null;
         }
 
-        this.view.destroy();
+        if (this._dialog)
+            this._dialog.destroy();
+        else
+            this.view.destroy();
 
         if (this._folderChangedId) {
             this._folder.disconnect(this._folderChangedId);
             delete this._folderChangedId;
         }
-
-        if (this._dialog)
-            this._dialog.destroy();
     }
 
     vfunc_clicked() {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]