diff options
author | Daniel Drake <drake@endlessm.com> | 2014-01-07 10:12:31 -0600 |
---|---|---|
committer | Daniel Drake <drake@endlessm.com> | 2014-01-07 14:26:35 -0600 |
commit | 0bd30696b14bf5e4374d82f7a9d750b6f0aa7ff6 (patch) | |
tree | 44b379590282ea9789f8d3d42540067dbd587c61 | |
parent | fb4e9d2232e588446de02c9f7df1a09a30453ecf (diff) |
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
-rw-r--r-- | 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 d6c3f253..fba7e024 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -2249,7 +2249,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); @@ -2302,10 +2301,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) { @@ -2378,8 +2373,6 @@ idle_calc_showing (gpointer data) } } - meta_display_ungrab (first_window->display); - g_slist_free (copy); g_slist_free (unplaced); |