summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte.benjamin@googlemail.com>2019-10-17 13:05:38 +0000
committerBenjamin Otte <otte.benjamin@googlemail.com>2019-10-17 13:05:38 +0000
commit0ecebd89bc6b22dc9e0c5922eced1f4212098e47 (patch)
treec4104094bbac5a113ed5c7147e4afb520fc648fa
parent3aa9dfe16dd9da87c23732f4d3125a82fd657a5c (diff)
parentac398471872d8c2df61428df85a657427de581a5 (diff)
downloadgtk+-0ecebd89bc6b22dc9e0c5922eced1f4212098e47.tar.gz
Merge branch 'can_focus' into 'gtk-3-24'
GtkEntry: Make GtkEntry: gtk_entry_grab_focus_without_selecting () behave like gtk_widget_grab_focus () See merge request GNOME/gtk!1137
-rw-r--r--gtk/gtkentry.c7
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);
}