From 5d94ee85842ed91007ebf6bdf6a1f54237987536 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 7 Apr 2017 19:02:35 +0200 Subject: listbox: Properly remove placeholders --- gtk/gtklistbox.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'gtk/gtklistbox.c') diff --git a/gtk/gtklistbox.c b/gtk/gtklistbox.c index 31cfc45d81..e8fd95ac77 100644 --- a/gtk/gtklistbox.c +++ b/gtk/gtklistbox.c @@ -2484,6 +2484,16 @@ gtk_list_box_remove (GtkContainer *container, was_visible = gtk_widget_get_visible (child); + if (child == priv->placeholder) + { + gtk_widget_unparent (child); + priv->placeholder = NULL; + if (was_visible && gtk_widget_get_visible (widget)) + gtk_widget_queue_resize (widget); + + return; + } + if (!GTK_IS_LIST_BOX_ROW (child)) { row = g_hash_table_lookup (priv->header_hash, child); @@ -2565,7 +2575,7 @@ gtk_list_box_forall (GtkContainer *container, GSequenceIter *iter; GtkListBoxRow *row; - if (priv->placeholder != NULL && include_internals) + if (priv->placeholder != NULL) callback (priv->placeholder, callback_target); iter = g_sequence_get_begin_iter (priv->children); -- cgit v1.2.1