summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <llandwerlin@gmail.com>2014-08-16 11:19:22 +0100
committerLionel Landwerlin <llandwerlin@gmail.com>2014-08-17 16:59:10 +0100
commit304e9f8cc15ad9cd446f286780ef06dba93e849b (patch)
treebaf20caabd0c3df7f6f5782225a984e3cd328053
parent5b3fd166f0051020b200d589fdbae69fe3c1743a (diff)
downloadclutter-gtk-304e9f8cc15ad9cd446f286780ef06dba93e849b.tar.gz
gtk-clutter-actor: fix inconsistent condition in actor update
Using the gdk backend of Clutter, you could end up in situation where none of the embedded widgets were being displayed. That's because the conditions for invalidating the canvas where inconsistent with the rest of the code. https://bugzilla.gnome.org/show_bug.cgi?id=734905
-rw-r--r--clutter-gtk/gtk-clutter-actor.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/clutter-gtk/gtk-clutter-actor.c b/clutter-gtk/gtk-clutter-actor.c
index b5de571..1732abc 100644
--- a/clutter-gtk/gtk-clutter-actor.c
+++ b/clutter-gtk/gtk-clutter-actor.c
@@ -579,13 +579,9 @@ _gtk_clutter_actor_update (GtkClutterActor *actor,
{
GtkClutterActorPrivate *priv = actor->priv;
- if (gtk_clutter_actor_use_image_surface ())
- {
- clutter_content_invalidate (priv->canvas);
- }
- else
#if defined(CLUTTER_WINDOWING_X11)
- if (clutter_check_windowing_backend (CLUTTER_WINDOWING_X11))
+ if (!gtk_clutter_actor_use_image_surface () &&
+ clutter_check_windowing_backend (CLUTTER_WINDOWING_X11))
{
clutter_x11_texture_pixmap_update_area (CLUTTER_X11_TEXTURE_PIXMAP (priv->texture),
x, y, width, height);
@@ -593,7 +589,7 @@ _gtk_clutter_actor_update (GtkClutterActor *actor,
else
#endif
{
- /* ... */
+ clutter_content_invalidate (priv->canvas);
}
clutter_actor_queue_redraw (CLUTTER_ACTOR (actor));