From f0175d12347523d0c0c09255f541ec93f097af10 Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Mon, 28 Apr 2014 16:58:45 -0400 Subject: [PATCH] window: Don't reset pending_compositor_effect too early With our surface_mapped strategy, implement_showing might not change whether the window has been shown or not, and thus we might end up clearing pending_compositor_effect before the window is mapped. Only clear pending_compositor_effect when the effect has actually been used. --- src/core/window.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/window.c b/src/core/window.c index 24fba0d43..22f768b6d 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -1842,8 +1842,6 @@ implement_showing (MetaWindow *window, } else meta_window_show (window); - - window->pending_compositor_effect = META_COMP_EFFECT_NONE; } void @@ -2619,6 +2617,7 @@ meta_window_show (MetaWindow *window) meta_compositor_show_window (window->display->compositor, window, effect); + window->pending_compositor_effect = META_COMP_EFFECT_NONE; } /* We don't want to worry about all cases from inside @@ -2708,6 +2707,7 @@ meta_window_hide (MetaWindow *window) } meta_compositor_hide_window (window->display->compositor, window, effect); + window->pending_compositor_effect = META_COMP_EFFECT_NONE; } did_hide = FALSE;