summaryrefslogtreecommitdiff
path: root/gtk/gtkbox.c
diff options
context:
space:
mode:
authorTimm Bäder <mail@baedert.org>2018-02-06 22:11:01 +0100
committerTimm Bäder <mail@baedert.org>2018-02-09 11:36:53 +0100
commit5e9f5c17b5e502dd09fcb89672bcc535189c3188 (patch)
tree8b83f3024ba1a786a84a5c8cb9bc0b6ce6881364 /gtk/gtkbox.c
parentff5928754fc1618e3eb6f31fa9b7f187ffbbeeec (diff)
downloadgtk+-5e9f5c17b5e502dd09fcb89672bcc535189c3188.tar.gz
box: Use widget child list in compute_size_for_orientation
And remove the non-NULL checks for minimum_size and natural_size since these are non-NULL by definition since this function is only called from measure().
Diffstat (limited to 'gtk/gtkbox.c')
-rw-r--r--gtk/gtkbox.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/gtk/gtkbox.c b/gtk/gtkbox.c
index 3567ecbe5f..fac5464e53 100644
--- a/gtk/gtkbox.c
+++ b/gtk/gtkbox.c
@@ -1231,21 +1231,20 @@ gtk_box_compute_size_for_orientation (GtkBox *box,
gint *natural_size)
{
GtkBoxPrivate *private = gtk_box_get_instance_private (box);
- GList *children;
+ GtkWidget *child;
gint nvis_children = 0;
gint required_size = 0, required_natural = 0, child_size, child_natural;
gint largest_child = 0, largest_natural = 0;
gint spacing = get_spacing (box);
- for (children = private->children; children != NULL;
- children = children->next)
+ for (child = gtk_widget_get_first_child (GTK_WIDGET (box));
+ child != NULL;
+ child = gtk_widget_get_next_sibling (child))
{
- GtkBoxChild *child = children->data;
-
- if (_gtk_widget_get_visible (child->widget))
+ if (_gtk_widget_get_visible (child))
{
- gtk_widget_measure (child->widget,
+ gtk_widget_measure (child,
private->orientation,
avail_size,
&child_size, &child_natural,
@@ -1276,11 +1275,8 @@ gtk_box_compute_size_for_orientation (GtkBox *box,
required_natural += (nvis_children - 1) * spacing;
}
- if (minimum_size)
- *minimum_size = required_size;
-
- if (natural_size)
- *natural_size = required_natural;
+ *minimum_size = required_size;
+ *natural_size = required_natural;
}