[gnome-shell/gbsneto/custom-icon-positions: 35/35] appDisplay: Create app folder where the drop happened



commit d02ae6470440a3a9102be80bc0fcbed77837f586
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Tue May 26 22:29:29 2020 -0300

    appDisplay: Create app folder where the drop happened
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1284
    Create the app folder where the icon we drop at is located. This
    ensures the folder icon doesn't go into the last page, hidden and
    solitary.

 js/ui/appDisplay.js | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
---
diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js
index 40c816e83c..63c307292e 100644
--- a/js/ui/appDisplay.js
+++ b/js/ui/appDisplay.js
@@ -1160,6 +1160,9 @@ class AppDisplay extends BaseAppView {
             return false;
         }
 
+        const [folderPage, folderPosition] =
+            this._grid.getItemPosition(this._items.get(apps[0]));
+
         let appItems = apps.map(id => this._items.get(id).app);
         let folderName = _findBestFolderName(appItems);
         if (!folderName)
@@ -1170,7 +1173,11 @@ class AppDisplay extends BaseAppView {
         newFolderSettings.set_strv('apps', apps);
         newFolderSettings.apply();
 
-        this.selectApp(newFolderId);
+        this._redisplay();
+
+        // Move the folder to where the icon target icon was
+        const folderIcon = this._items.get(newFolderId);
+        this.moveItem(folderIcon, folderPage, folderPosition);
 
         return true;
     }


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