summaryrefslogtreecommitdiff
path: root/gtk/gtkbox.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkbox.c')
-rw-r--r--gtk/gtkbox.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gtk/gtkbox.c b/gtk/gtkbox.c
index f97a80d583..b711a52aa5 100644
--- a/gtk/gtkbox.c
+++ b/gtk/gtkbox.c
@@ -1612,10 +1612,12 @@ gtk_box_reorder_child (GtkBox *box,
priv->children = g_list_insert_before (priv->children, new_link, child_info);
gtk_widget_child_notify (child, "position");
+
+ gtk_box_invalidate_order (box);
+
if (gtk_widget_get_visible (child)
&& gtk_widget_get_visible (GTK_WIDGET (box)))
{
- gtk_box_invalidate_order (box);
gtk_widget_queue_resize (child);
}
}
@@ -1799,12 +1801,13 @@ gtk_box_remove (GtkContainer *container,
g_list_free (children);
g_free (child);
+ gtk_box_invalidate_order (box);
+
/* queue resize regardless of gtk_widget_get_visible (container),
* since that's what is needed by toplevels.
*/
if (was_visible)
{
- gtk_box_invalidate_order (box);
gtk_widget_queue_resize (GTK_WIDGET (container));
}