gtk_button_remove(): When removing a child widget from a button, we don't

gtk_button_remove():
	When removing a child widget from a button, we don't want to check
	the child's visibility after removal (for the purpose of knowing
	whether a queue_resize is needed), we want to check it *before*,
	because the child may be destroyed during the
	gtk_widget_unparent()

	The diff is clearer than this stupid log message. :)
This commit is contained in:
Elliot Lee 1998-04-07 19:51:06 +00:00
parent 8051b9d2bc
commit 39a05c0b55

View File

@ -816,12 +816,15 @@ gtk_button_remove (GtkContainer *container,
if (button->child == widget)
{
gboolean widget_was_visible = GTK_WIDGET_VISIBLE(widget);
gtk_widget_unparent (widget);
button->child = NULL;
if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (container))
if (widget_was_visible && GTK_WIDGET_VISIBLE (container))
gtk_widget_queue_resize (GTK_WIDGET (container));
}
}