diff options
author | Emmanuele Bassi <ebassi@linux.intel.com> | 2010-07-21 14:52:46 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@linux.intel.com> | 2010-07-21 14:52:46 +0100 |
commit | facf106a0de65fc95019baa20296f2cbeac4b132 (patch) | |
tree | 765ecd6e401a947e57e1bf79acad24a9d1ee068c /clutter-gtk | |
parent | 34fbba24f40cccf2d71a4e8c9e43ec1031498996 (diff) | |
download | clutter-gtk-facf106a0de65fc95019baa20296f2cbeac4b132.tar.gz |
actor: Use GtkSizeRequest
Gtk 3.0 got a new size requisition mechanism which matches Clutter's, so
we should use it when embedding a widget inside a Clutter stage.
Diffstat (limited to 'clutter-gtk')
-rw-r--r-- | clutter-gtk/gtk-clutter-actor.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/clutter-gtk/gtk-clutter-actor.c b/clutter-gtk/gtk-clutter-actor.c index 59b8c80..5528737 100644 --- a/clutter-gtk/gtk-clutter-actor.c +++ b/clutter-gtk/gtk-clutter-actor.c @@ -164,15 +164,18 @@ gtk_clutter_actor_get_preferred_width (ClutterActor *actor, { GtkClutterActor *clutter = GTK_CLUTTER_ACTOR (actor); GtkClutterActorPrivate *priv = clutter->priv; - GtkRequisition requisition; + gint min_width, natural_width; - gtk_widget_size_request (priv->widget, &requisition); + gtk_size_request_get_width_for_height (GTK_SIZE_REQUEST (priv->widget), + (for_height + 0.5), + &min_width, + &natural_width); if (min_width_p) - *min_width_p = requisition.width; + *min_width_p = min_width; if (natural_width_p) - *natural_width_p = requisition.width; + *natural_width_p = natural_width; } static void @@ -183,15 +186,19 @@ gtk_clutter_actor_get_preferred_height (ClutterActor *actor, { GtkClutterActor *clutter = GTK_CLUTTER_ACTOR (actor); GtkClutterActorPrivate *priv = clutter->priv; - GtkRequisition requisition; + gint min_height, natural_height; - gtk_widget_size_request (priv->widget, &requisition); + min_height = natural_height = 0; + gtk_size_request_get_height_for_width (GTK_SIZE_REQUEST (priv->widget), + (for_width + 0.5), + &min_height, + &natural_height); if (min_height_p) - *min_height_p = requisition.height; + *min_height_p = min_height; if (natural_height_p) - *natural_height_p = requisition.height; + *natural_height_p = natural_height; } static void |