From 03742e83fb0b12588a5461465a39f3e2587feafb Mon Sep 17 00:00:00 2001 From: Tristan Van Berkom Date: Mon, 6 Jun 2016 11:55:44 +0900 Subject: [PATCH] scrolledwindow: Bug 767238 - Fixing up for max content sizes Needed to adjust this again after applying commit 4e5ecb7 for bug 742281. Now that we also have max content size properties, pushed the addition of possible scrollbar sizes to after the clause which clamps the child request size into min/max content sizes. --- gtk/gtkscrolledwindow.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index c6a9ca4bf2..1a5014de2f 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -1796,12 +1796,6 @@ gtk_scrolled_window_measure (GtkCssGadget *gadget, extra_width = -1; } - if (policy_may_be_visible (priv->vscrollbar_policy) && !priv->use_indicators) - { - minimum_req.width += vscrollbar_requisition.width; - natural_req.width += vscrollbar_requisition.width; - } - if (priv->max_content_width > -1 && priv->max_content_width > natural_req.width && nat_child_size > natural_req.width) @@ -1815,6 +1809,12 @@ gtk_scrolled_window_measure (GtkCssGadget *gadget, minimum_req.width = MAX (minimum_req.width, width); natural_req.width = MAX (natural_req.width, width); } + + if (policy_may_be_visible (priv->vscrollbar_policy) && !priv->use_indicators) + { + minimum_req.width += vscrollbar_requisition.width; + natural_req.width += vscrollbar_requisition.width; + } } } else /* GTK_ORIENTATION_VERTICAL */ @@ -1838,12 +1838,6 @@ gtk_scrolled_window_measure (GtkCssGadget *gadget, extra_height = -1; } - if (policy_may_be_visible (priv->hscrollbar_policy) && !priv->use_indicators) - { - minimum_req.height += hscrollbar_requisition.height; - natural_req.height += hscrollbar_requisition.height; - } - if (priv->max_content_height > -1 && priv->max_content_height > natural_req.height && nat_child_size > natural_req.height) @@ -1857,6 +1851,12 @@ gtk_scrolled_window_measure (GtkCssGadget *gadget, minimum_req.height = MAX (minimum_req.height, height); natural_req.height = MAX (natural_req.height, height); } + + if (policy_may_be_visible (priv->hscrollbar_policy) && !priv->use_indicators) + { + minimum_req.height += hscrollbar_requisition.height; + natural_req.height += hscrollbar_requisition.height; + } } } }