From 896f7c8ac0346c6edf7029df133dcc911da4f2bb Mon Sep 17 00:00:00 2001 From: Daniel Boles Date: Mon, 28 Aug 2017 20:35:47 +0100 Subject: [PATCH] Entry: Handle :show-emoji-icon becoming false Disconnect the now-unwanted signal handler, and hide the icon. https://bugzilla.gnome.org/show_bug.cgi?id=786940 --- gtk/gtkentry.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c index 449ec5a59a..e5418f96a1 100644 --- a/gtk/gtkentry.c +++ b/gtk/gtkentry.c @@ -9889,6 +9889,14 @@ set_show_emoji_icon (GtkEntry *entry, g_signal_connect (entry, "icon-press", G_CALLBACK (pick_emoji), NULL); } + else + { + g_signal_handlers_disconnect_by_func (entry, pick_emoji, NULL); + + gtk_entry_set_icon_from_icon_name (entry, + GTK_ENTRY_ICON_SECONDARY, + NULL); + } g_object_notify_by_pspec (G_OBJECT (entry), entry_props[PROP_SHOW_EMOJI_ICON]); gtk_widget_queue_resize (GTK_WIDGET (entry));