[clutter] scroll-actor: Paint children in pick mode



commit c54c3047f80274e9ab773541bc7d99c2d692778f
Author: Emmanuele Bassi <ebassi linux intel com>
Date:   Tue May 15 15:06:20 2012 +0100

    scroll-actor: Paint children in pick mode
    
    Chaining up to the parent's implementation of pick() is not enough: we
    need to paint our children explicitly because of the compatibility mode
    checks we use to avoid breaking custom containers.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=676088

 clutter/clutter-scroll-actor.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/clutter/clutter-scroll-actor.c b/clutter/clutter-scroll-actor.c
index 888dd59..c1a7b23 100644
--- a/clutter/clutter-scroll-actor.c
+++ b/clutter/clutter-scroll-actor.c
@@ -155,10 +155,20 @@ static void
 clutter_scroll_actor_pick (ClutterActor       *actor,
                            const ClutterColor *pick_color)
 {
+  ClutterActorIter iter;
+  ClutterActor *child;
+
   clutter_scroll_actor_push_clip (actor);
 
   CLUTTER_ACTOR_CLASS (clutter_scroll_actor_parent_class)->pick (actor, pick_color);
 
+  /* FIXME - this has to go away when we remove the vfunc check inside
+   * the ClutterActor::pick default implementation
+   */
+  clutter_actor_iter_init (&iter, actor);
+  while (clutter_actor_iter_next (&iter, &child))
+    clutter_actor_paint (child);
+
   cogl_clip_pop ();
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]