[gnome-shell] Layout: don't minimize fullscreen windows that are focused



commit b6bf8d5b2d67c152496570ba920c5a5f75b3160d
Author: Giovanni Campagna <gcampagna src gnome org>
Date:   Thu Feb 28 23:17:47 2013 +0100

    Layout: don't minimize fullscreen windows that are focused
    
    Windows can sometimes be focused, or appear to be focused, without being
    at the exact top of the stack, for example in the case of override-redirect
    windows, or with attached modal dialogs. In that case, we should not
    try to minimize them (as it creates a loop that makes it impossible to restore
    the window)
    
    https://bugzilla.gnome.org/show_bug.cgi?id=694905

 js/ui/layout.js |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/js/ui/layout.js b/js/ui/layout.js
index 8fdf57a..8fe1eb7 100644
--- a/js/ui/layout.js
+++ b/js/ui/layout.js
@@ -923,7 +923,7 @@ const LayoutManager = new Lang.Class({
 
         if (primaryWasInFullscreen != this.primaryMonitor.inFullscreen) {
             let windows = this._getWindowActorsForWorkspace(global.screen.get_active_workspace());
-            for (let i = 0; i < windows.length - 1; i++) {
+            for (let i = 0; i < windows.length; i++) {
                 let window = windows[i];
                 let metaWindow = window.meta_window;
 
@@ -935,8 +935,9 @@ const LayoutManager = new Lang.Class({
                 if (!metaWindow.is_on_primary_monitor())
                     continue;
 
-                // Minimize monitor sized windows
-                if (metaWindow.is_monitor_sized())
+                // Minimize monitor sized windows that are not focused
+                if (metaWindow.is_monitor_sized() &&
+                    !metaWindow.appears_focused)
                     metaWindow.minimize();
             }
             this.emit('primary-fullscreen-changed', this.primaryMonitor.inFullscreen);


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