Avoid spurious notifications from GtkEntry
Using gtk_entry_set_buffer() in dispose() causes problematic notifications, so just get rid of the buffer manually. See bug 613241.
This commit is contained in:
parent
8dc4a4f954
commit
5f29a679f8
@ -2463,12 +2463,19 @@ static void
|
|||||||
gtk_entry_dispose (GObject *object)
|
gtk_entry_dispose (GObject *object)
|
||||||
{
|
{
|
||||||
GtkEntry *entry = GTK_ENTRY (object);
|
GtkEntry *entry = GTK_ENTRY (object);
|
||||||
|
GtkEntryPrivate *priv = GTK_ENTRY_GET_PRIVATE (entry);
|
||||||
|
|
||||||
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
||||||
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
||||||
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
||||||
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
||||||
gtk_entry_set_buffer (entry, NULL);
|
|
||||||
|
if (priv->buffer)
|
||||||
|
{
|
||||||
|
buffer_disconnect_signals (entry);
|
||||||
|
g_object_unref (priv->buffer);
|
||||||
|
priv->buffer = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
G_OBJECT_CLASS (gtk_entry_parent_class)->dispose (object);
|
G_OBJECT_CLASS (gtk_entry_parent_class)->dispose (object);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user