From c54c3047f80274e9ab773541bc7d99c2d692778f Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Tue, 15 May 2012 15:06:20 +0100 Subject: [PATCH] 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 file changed, 10 insertions(+) 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 (); } -- 2.7.4