[clutter] actor: Setting the child-transform invalidates the children's modelview
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [clutter] actor: Setting the child-transform invalidates the children's modelview
- Date: Mon, 27 Aug 2012 11:26:47 +0000 (UTC)
commit 3937a7c74c67e7ef0de149c7b536a5cd15aa3124
Author: Emmanuele Bassi <ebassi gnome org>
Date: Mon Aug 27 12:24:20 2012 +0100
actor: Setting the child-transform invalidates the children's modelview
We need to ensure that the children's cached modelview matrix gets
invalidated when setting the :child-transform property on their parent.
clutter/clutter-actor.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
---
diff --git a/clutter/clutter-actor.c b/clutter/clutter-actor.c
index 3f4b192..36c4f48 100644
--- a/clutter/clutter-actor.c
+++ b/clutter/clutter-actor.c
@@ -19948,6 +19948,8 @@ clutter_actor_set_child_transform (ClutterActor *self,
const ClutterMatrix *transform)
{
ClutterTransformInfo *info;
+ ClutterActorIter iter;
+ ClutterActor *child;
GObject *obj;
g_return_if_fail (CLUTTER_IS_ACTOR (self));
@@ -19961,6 +19963,11 @@ clutter_actor_set_child_transform (ClutterActor *self,
info->child_transform_set = transform != NULL;
+ /* we need to reset the transform_valid flag on each child */
+ clutter_actor_iter_init (&iter, self);
+ while (clutter_actor_iter_next (&iter, &child))
+ child->priv->transform_valid = FALSE;
+
clutter_actor_queue_redraw (self);
obj = G_OBJECT (self);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]