[mutter/wip/surface-two: 1/4] Revert "compositor: Delay meta_compositor_add_window until the first show"
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/surface-two: 1/4] Revert "compositor: Delay meta_compositor_add_window until the first show"
- Date: Mon, 24 Feb 2014 19:47:04 +0000 (UTC)
commit 9b24ae2033f2b512bd955d5be02c690c389d75d2
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Mon Feb 24 12:56:30 2014 -0500
Revert "compositor: Delay meta_compositor_add_window until the first show"
This reverts commit 4efe4483fbc7602e8358fda936074216a8e5544b.
src/compositor/compositor.c | 26 ++++++++++++++++----------
src/core/window.c | 7 +++++--
2 files changed, 21 insertions(+), 12 deletions(-)
---
diff --git a/src/compositor/compositor.c b/src/compositor/compositor.c
index a323c31..dcf1136 100644
--- a/src/compositor/compositor.c
+++ b/src/compositor/compositor.c
@@ -141,6 +141,19 @@ meta_compositor_destroy (MetaCompositor *compositor)
}
static void
+add_win (MetaWindow *window)
+{
+ MetaScreen *screen = meta_window_get_screen (window);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+
+ g_return_if_fail (info != NULL);
+
+ meta_window_actor_new (window);
+
+ sync_actor_stacking (info);
+}
+
+static void
process_damage (MetaCompositor *compositor,
XDamageNotifyEvent *event,
MetaWindow *window)
@@ -819,20 +832,13 @@ meta_compositor_add_window (MetaCompositor *compositor,
{
MetaScreen *screen = meta_window_get_screen (window);
MetaDisplay *display = meta_screen_get_display (screen);
- MetaCompScreen *info = meta_screen_get_compositor_data (screen);
- g_return_if_fail (info != NULL);
+ DEBUG_TRACE ("meta_compositor_add_window\n");
+ meta_error_trap_push (display);
- /* Window was already added previously, probably coming
- * back from hiding */
- if (window->compositor_private != NULL)
- return;
+ add_win (window);
- meta_error_trap_push (display);
- meta_window_actor_new (window);
meta_error_trap_pop (display);
-
- sync_actor_stacking (info);
}
void
diff --git a/src/core/window.c b/src/core/window.c
index 81ca3f8..10a1b40 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -1217,6 +1217,9 @@ _meta_window_shared_new (MetaDisplay *display,
set_net_wm_state (window);
}
+ if (screen->display->compositor)
+ meta_compositor_add_window (screen->display->compositor, window);
+
/* Sync stack changes */
meta_stack_thaw (window->screen->stack);
@@ -2769,8 +2772,8 @@ meta_window_show (MetaWindow *window)
break;
}
- meta_compositor_add_window (window->display->compositor, window);
- meta_compositor_show_window (window->display->compositor, window, effect);
+ meta_compositor_show_window (window->display->compositor,
+ window, effect);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]