summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2016-03-18 19:27:31 -0700
committerMatthias Clasen <mclasen@redhat.com>2016-03-21 11:50:27 -0400
commitca63330b19c920a02d02f1bc96463ba156312483 (patch)
treea2dcf1d85aade80ab09c905cbd9aa1fb44d475dc
parent5107c4a75f64e710960f5f65e41e30f0dd4d2187 (diff)
downloadgtk+-ca63330b19c920a02d02f1bc96463ba156312483.tar.gz
stack: query preferred size for last_visible_child
When animating, we might be changing the size allocation of the previous stack child. However, we were not querying the size in the process meaning you would often see warnings about allocating the size without knowing what it should be. This simply adds an innocuous size request, since responding to last_child sizing requests is not all that critical in the transition. https://bugzilla.gnome.org/show_bug.cgi?id=763900
-rw-r--r--gtk/gtkstack.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gtk/gtkstack.c b/gtk/gtkstack.c
index 8eaa09017a..89ddf58117 100644
--- a/gtk/gtkstack.c
+++ b/gtk/gtkstack.c
@@ -2258,7 +2258,14 @@ gtk_stack_allocate (GtkCssGadget *gadget,
child_allocation.height = allocation->height;
if (priv->last_visible_child)
- gtk_widget_size_allocate (priv->last_visible_child->widget, &child_allocation);
+ {
+ int min, nat;
+
+ gtk_widget_get_preferred_height_for_width (priv->last_visible_child->widget,
+ allocation->width,
+ &min, &nat);
+ gtk_widget_size_allocate (priv->last_visible_child->widget, &child_allocation);
+ }
if (priv->visible_child)
{