diff options
author | Julian Sparber <julian@sparber.net> | 2019-10-17 14:32:24 +0200 |
---|---|---|
committer | Julian Sparber <julian@sparber.net> | 2019-10-17 14:32:24 +0200 |
commit | ac398471872d8c2df61428df85a657427de581a5 (patch) | |
tree | e351126194438798916df8f1374a8c636507c469 | |
parent | 4beed12317d291d07f0cdcbceb9fd94f500f51c6 (diff) | |
download | gtk+-ac398471872d8c2df61428df85a657427de581a5.tar.gz |
GtkEntry: Make GtkEntry: gtk_entry_grab_focus_without_selecting () behave like gtk_widget_grab_focus ()
Fixes https://gitlab.gnome.org/GNOME/gtk/issues/2204
-rw-r--r-- | gtk/gtkentry.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c index eec28a5ba9..297dd0fe63 100644 --- a/gtk/gtkentry.c +++ b/gtk/gtkentry.c @@ -5039,7 +5039,14 @@ void _gtk_entry_grab_focus (GtkEntry *entry, gboolean select_all) { + if (!gtk_widget_get_can_focus (GTK_WIDGET (entry))) + return; + + if (!gtk_widget_is_sensitive (GTK_WIDGET (entry))) + return; + GTK_WIDGET_CLASS (gtk_entry_parent_class)->grab_focus (GTK_WIDGET (entry)); + if (select_all) gtk_editable_select_region (GTK_EDITABLE (entry), 0, -1); } |