[gnome-shell/gbsneto/icon-grid-part0: 5/6] appIcon: Use a real BaseIcon as the drag actor



commit 3b57da8cc1a626dd59e15b6081c3f755c134b5a0
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Wed Jul 3 13:29:20 2019 -0300

    appIcon: Use a real BaseIcon as the drag actor
    
    Moving an app icon to other positions is semantically different
    to dragging an actor to the dash; the act of moving should itself
    be semantic, in that we should feel like we are moving the actual
    icon.
    
    Currently, AppIcon gives the DnD code a simplified version of itself,
    with just its icon, instead of a complete copy with the label.
    
    Make AppIcon create a new IconGrid.BaseIcon and use it as the drag
    actor.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/643

 js/ui/appDisplay.js | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
---
diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js
index 699a95a82..292d596a0 100644
--- a/js/ui/appDisplay.js
+++ b/js/ui/appDisplay.js
@@ -1713,7 +1713,12 @@ var AppIcon = class AppIcon {
     }
 
     getDragActor() {
-        return this.app.create_icon_texture(Main.overview.dashIconSize);
+        let iconParams = { createIcon: this._createIcon.bind(this),
+                           showLabel: (this.icon.label != null),
+                           setSizeManually: false };
+
+        let icon = new IconGrid.BaseIcon(this.name, iconParams);
+        return icon;
     }
 
     // Returns the original actor that should align with the actor


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