[gnome-shell] Bug 589437 - Switch to workspace of target app to activate



commit 2cc650e38935d8af8e584e6430bfdd738a3701ca
Author: Colin Walters <walters verbum org>
Date:   Wed Jul 22 18:57:33 2009 -0400

    Bug 589437 - Switch to workspace of target app to activate
    
    The user explicitly selected a window, so take them to it.

 js/ui/appDisplay.js |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)
---
diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js
index adc94cf..2eaf51b 100644
--- a/js/ui/appDisplay.js
+++ b/js/ui/appDisplay.js
@@ -519,8 +519,17 @@ WellDisplayItem.prototype = {
         if (this._windows.length == 0)
             this.launch();
         else {
+            /* Pick the first window and activate it, switching to its workspace
+             * if necessary.  In the future, we want to have a menu dropdown here. */
             let first = this._windows[0];
-            first.activate(Clutter.get_current_event_time());
+            let firstWorkspace = first.get_workspace();
+            let currentWorkspaceIndex = Shell.Global.get().screen.get_active_workspace_index();
+            let currentWorkspace = Shell.Global.get().screen.get_workspace_by_index(currentWorkspaceIndex);
+            let ts = Clutter.get_current_event_time();
+            if (currentWorkspace != firstWorkspace)
+                firstWorkspace.activate_with_focus(first, ts);
+            else
+                first.activate(ts);
         }
         this.emit('activated');
     },



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