[gtk+/wip/baedert/gtkimageview: 621/625] stack: Don't underallocate the last_child



commit 88b307dda8a1e0c07b50bef3aac94c75b5ff8c78
Author: Timm Bäder <mail baedert org>
Date:   Fri Feb 26 21:58:36 2016 +0100

    stack: Don't underallocate the last_child

 gtk/gtkstack.c |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)
---
diff --git a/gtk/gtkstack.c b/gtk/gtkstack.c
index 3484360..b8f56c8 100644
--- a/gtk/gtkstack.c
+++ b/gtk/gtkstack.c
@@ -2254,11 +2254,21 @@ gtk_stack_allocate (GtkCssGadget        *gadget,
 
   child_allocation.x = 0;
   child_allocation.y = 0;
-  child_allocation.width = allocation->width;
-  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_width (priv->last_visible_child->widget, &min, &nat);
+      child_allocation.width = MAX (min, allocation->width);
+      gtk_widget_get_preferred_height (priv->last_visible_child->widget, &min, &nat);
+      child_allocation.height = MAX (min, allocation->height);
+
+      gtk_widget_size_allocate (priv->last_visible_child->widget, &child_allocation);
+    }
+
+  child_allocation.width = allocation->width;
+  child_allocation.height = allocation->height;
 
   if (priv->visible_child)
     {


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