summaryrefslogtreecommitdiff
path: root/gtk/gtksearchentry.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2020-10-23 12:19:31 -0400
committerMatthias Clasen <mclasen@redhat.com>2020-10-23 12:19:31 -0400
commitfdb1fa4d089359951c34212008e876bd91e6c0bc (patch)
tree12a56ace86ecf1cf6b1b2938eccc4aa7a4d7cf93 /gtk/gtksearchentry.c
parent10d7ccc8e0ecfc267b8e3f803abb6bd04eb628a9 (diff)
downloadgtk+-fdb1fa4d089359951c34212008e876bd91e6c0bc.tar.gz
Give all search entries an icon
This was first requested for the search entry in GtkDropDown, but it is better to be consistent and give every search entry an icon. Related: #3291
Diffstat (limited to 'gtk/gtksearchentry.c')
-rw-r--r--gtk/gtksearchentry.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gtk/gtksearchentry.c b/gtk/gtksearchentry.c
index 78268113c8..5c227f6853 100644
--- a/gtk/gtksearchentry.c
+++ b/gtk/gtksearchentry.c
@@ -160,6 +160,8 @@ gtk_search_entry_finalize (GObject *object)
gtk_editable_finish_delegate (GTK_EDITABLE (entry));
+ gtk_widget_unparent (gtk_widget_get_first_child (GTK_WIDGET (entry)));
+
g_clear_pointer (&entry->entry, gtk_widget_unparent);
g_clear_pointer (&entry->icon, gtk_widget_unparent);
@@ -549,8 +551,15 @@ activate_cb (GtkText *text,
static void
gtk_search_entry_init (GtkSearchEntry *entry)
{
+ GtkWidget *icon;
GtkGesture *press;
+ icon = g_object_new (GTK_TYPE_IMAGE,
+ "accessible-role", GTK_ACCESSIBLE_ROLE_NONE,
+ "icon-name", "system-search-symbolic",
+ NULL);
+ gtk_widget_set_parent (icon, GTK_WIDGET (entry));
+
entry->entry = gtk_text_new ();
gtk_widget_set_parent (entry->entry, GTK_WIDGET (entry));
gtk_widget_set_hexpand (entry->entry, TRUE);