[gnome-shell] appDisplay: Don't leave overview for drag&drop of an app



commit 9f5a5ad63500a11e36705e63c8e1c91f41864f6a
Author: Colin Walters <walters verbum org>
Date:   Wed Aug 19 16:54:49 2009 -0400

    appDisplay: Don't leave overview for drag&drop of an app
    
    The design says we stay in the overview for these situations.

 js/ui/appDisplay.js |   25 ++++++++++---------------
 1 files changed, 10 insertions(+), 15 deletions(-)
---
diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js
index d69a3b5..dcd6152 100644
--- a/js/ui/appDisplay.js
+++ b/js/ui/appDisplay.js
@@ -528,24 +528,24 @@ WellDisplayItem.prototype = {
     },
 
     _handleActivate: function () {
-        if (this._windows.length == 0)
-            this.launch();
-        else {
+        if (this._windows.length == 0) {
+            this.appInfo.launch();
+            Main.overview.hide();
+        } else {
             /* Pick the first window and activate it;
              * In the future, we want to have a menu dropdown here. */
             let first = this._windows[0];
             Main.overview.activateWindow(first, Clutter.get_current_event_time());
         }
-        this.emit('activated');
-    },
-
-    // Opens an application represented by this display item.
-    launch : function() {
-        this.appInfo.launch();
     },
 
     shellWorkspaceLaunch : function() {
-        this.launch();
+        if (this._windows.length == 0) {
+            this.appInfo.launch();
+        } else {
+            // We should open a new window for the app here, once we know
+            // how to do that.
+        }
     },
 
     getDragActor: function(stageX, stageY) {
@@ -563,8 +563,6 @@ WellDisplayItem.prototype = {
     }
 };
 
-Signals.addSignalMethods(WellDisplayItem.prototype);
-
 function WellGrid() {
     this._init();
 }
@@ -818,9 +816,6 @@ AppWell.prototype = {
         for (let i = 0; i < apps.length; i++) {
             let app = apps[i];
             let display = new WellDisplayItem(app, this.isFavorite);
-            display.connect('activated', Lang.bind(this, function (display) {
-                Main.overview.hide();
-            }));
             this._grid.actor.add_actor(display.actor);
         }
     },



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