[mutter] window: don't grab server during calc_showing



commit 02426c50cbf41c1e03d7b0073f9f3ec2228a4ada
Author: Daniel Drake <drake endlessm com>
Date:   Tue Jan 7 10:12:31 2014 -0600

    window: don't grab server during calc_showing
    
    This grab was added in commit caf43a123f40d3a68599ac5453a79759b828e8f0
    https://bugzilla.gnome.org/show_bug.cgi?id=381127
    to minimize window flickering when switching workspaces.
    
    While this grab is held, some signals are emitted to the shell,
    which can lead to deadlocks (reproduced under Mali binary OpenGLESv2
    drivers).
    
    Now that we are a compositing window manager, we do not have to
    worry about flickers, this grab should no longer be necessary.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=721709

 src/core/window.c |    7 -------
 1 files changed, 0 insertions(+), 7 deletions(-)
---
diff --git a/src/core/window.c b/src/core/window.c
index a2f04aa..57a8b2a 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -2254,7 +2254,6 @@ idle_calc_showing (gpointer data)
   GSList *should_hide;
   GSList *unplaced;
   GSList *displays;
-  MetaWindow *first_window;
   guint queue_index = GPOINTER_TO_INT (data);
 
   g_return_val_if_fail (queue_pending[queue_index] != NULL, FALSE);
@@ -2307,10 +2306,6 @@ idle_calc_showing (gpointer data)
   should_show = g_slist_sort (should_show, stackcmp);
   should_show = g_slist_reverse (should_show);
 
-  first_window = copy->data;
-
-  meta_display_grab (first_window->display);
-
   tmp = unplaced;
   while (tmp != NULL)
     {
@@ -2383,8 +2378,6 @@ idle_calc_showing (gpointer data)
         }
     }
 
-  meta_display_ungrab (first_window->display);
-
   g_slist_free (copy);
 
   g_slist_free (unplaced);


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