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



commit a5f0db5ecb98f967e31ff337e4c81b2dc597e2cc
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 5739367..1ff6e0e 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -2398,7 +2398,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);
@@ -2451,10 +2450,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)
     {
@@ -2527,8 +2522,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]