[gtk+/gtk-3-22] listbox: Properly remove placeholders



commit b7fdc5b447b44b5b7638a3ac41cac58136bc5ca2
Author: Timm Bäder <mail baedert org>
Date:   Fri Apr 7 19:02:35 2017 +0200

    listbox: Properly remove placeholders
    
    https://bugzilla.gnome.org/show_bug.cgi?id=778617

 gtk/gtklistbox.c |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtklistbox.c b/gtk/gtklistbox.c
index f16e02a..2bc6bfd 100644
--- a/gtk/gtklistbox.c
+++ b/gtk/gtklistbox.c
@@ -2451,6 +2451,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);
@@ -2532,7 +2542,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);


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