[gnome-shell/wip/clutter-deprecation-fixes: 2/18] st-widget: Don't use deprecated API
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/clutter-deprecation-fixes: 2/18] st-widget: Don't use deprecated API
- Date: Thu, 16 Feb 2012 18:52:56 +0000 (UTC)
commit 4b2b3660467b88f80150320138609563b1339ff0
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Mon Feb 13 19:54:43 2012 -0500
st-widget: Don't use deprecated API
clutter_container_foreach is deprecated, so let's replace that
with some ClutterActorIter usage. Additionally, remove the checks
for ClutterContainer, as all ClutterActors are now ClutterContainers.
https://bugzilla.gnome.org/show_bug.cgi?id=670034
src/st/st-widget.c | 33 +++++++++++++--------------------
1 files changed, 13 insertions(+), 20 deletions(-)
---
diff --git a/src/st/st-widget.c b/src/st/st-widget.c
index f09093b..eb90e2b 100644
--- a/src/st/st-widget.c
+++ b/src/st/st-widget.c
@@ -394,25 +394,20 @@ st_widget_unmap (ClutterActor *actor)
st_widget_set_hover (self, FALSE);
}
-static void notify_children_of_style_change (ClutterContainer *container);
-
static void
-notify_children_of_style_change_foreach (ClutterActor *actor,
- gpointer user_data)
+notify_children_of_style_change (ClutterActor *self)
{
- if (ST_IS_WIDGET (actor))
- st_widget_style_changed (ST_WIDGET (actor));
- else if (CLUTTER_IS_CONTAINER (actor))
- notify_children_of_style_change ((ClutterContainer *)actor);
-}
+ ClutterActorIter iter;
+ ClutterActor *actor;
-static void
-notify_children_of_style_change (ClutterContainer *container)
-{
- /* notify our children that their parent stylable has changed */
- clutter_container_foreach (container,
- notify_children_of_style_change_foreach,
- NULL);
+ clutter_actor_iter_init (&iter, self);
+ while (clutter_actor_iter_next (&iter, &actor))
+ {
+ if (ST_IS_WIDGET (actor))
+ st_widget_style_changed (ST_WIDGET (actor));
+ else
+ notify_children_of_style_change (actor);
+ }
}
static void
@@ -425,9 +420,7 @@ st_widget_real_style_changed (StWidget *self)
return;
clutter_actor_queue_redraw ((ClutterActor *) self);
-
- if (CLUTTER_IS_CONTAINER (self))
- notify_children_of_style_change ((ClutterContainer *)self);
+ notify_children_of_style_change ((ClutterActor *) self);
}
void
@@ -454,7 +447,7 @@ static void
on_theme_context_changed (StThemeContext *context,
ClutterStage *stage)
{
- notify_children_of_style_change (CLUTTER_CONTAINER (stage));
+ notify_children_of_style_change (CLUTTER_ACTOR (stage));
}
static StThemeNode *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]