Index: b/gtk+-2/gtksecentry.c =================================================================== --- b/gtk+-2/gtksecentry.c +++ b/gtk+-2/gtksecentry.c @@ -683,13 +683,6 @@ GDK_CONTROL_MASK, "delete_from_cursor", 2, G_TYPE_ENUM, GTK_DELETE_WORD_ENDS, G_TYPE_INT, -1); - - gtk_settings_install_property(g_param_spec_boolean - ("gtk-entry-select-on-focus", - _("Select on focus"), - _ - ("Whether to select the contents of an entry when it is focused"), - TRUE, G_PARAM_READWRITE)); } static void @@ -1369,14 +1362,18 @@ static void gtk_secure_entry_grab_focus(GtkWidget * widget) { + GtkWidget *tmp; GtkSecureEntry *entry = GTK_SECURE_ENTRY(widget); gboolean select_on_focus; GTK_WIDGET_SET_FLAGS(widget, GTK_CAN_DEFAULT); GTK_WIDGET_CLASS(parent_class)->grab_focus(widget); - g_object_get(gtk_widget_get_settings(widget), + /* read current select on focus setting from GtkEntry */ + tmp = gtk_entry_new (); + g_object_get(gtk_widget_get_settings(tmp), "gtk-entry-select-on-focus", &select_on_focus, NULL); + gtk_widget_destroy (tmp); if (select_on_focus && !entry->in_click) gtk_editable_select_region(GTK_EDITABLE(widget), 0, -1);