From e70da5bea9a3aa91b5950a3ad9d3f58b69ad12fc Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Fri, 11 May 2012 11:51:51 +0100 Subject: actor: Hide children before ourselves Fixes errors like: Gtk-WARNING **: GtkClutterEmbed 0x11a3300 is mapped but visible child GtkClutterOffscreen 0x15d0490 is not mapped when destroying a GtkClutterActor. GTK+'s invariants checks expect children to not be visible anymore if they're not mapped. This can happen if we don't forcefully hide the GtkClutterActor's widget before unrealizing it. https://bugzilla.gnome.org/show_bug.cgi?id=675867 --- clutter-gtk/gtk-clutter-actor.c | 1 + 1 file changed, 1 insertion(+) diff --git a/clutter-gtk/gtk-clutter-actor.c b/clutter-gtk/gtk-clutter-actor.c index 0e282da..22a8fb5 100644 --- a/clutter-gtk/gtk-clutter-actor.c +++ b/clutter-gtk/gtk-clutter-actor.c @@ -163,6 +163,7 @@ gtk_clutter_actor_unrealize (ClutterActor *actor) if (priv->widget == NULL) return; + gtk_widget_hide (priv->widget); gtk_widget_unrealize (priv->widget); priv->surface = NULL; -- cgit v1.2.1