[krb5-auth-dialog] don't install "gtk-entry-select-on-focus" settings property



commit f98c6b79542082e03db771b990b4ffedae8ead80
Author: Guido Günther <agx sigxcpu org>
Date:   Fri Apr 24 10:20:06 2009 +0200

    don't install "gtk-entry-select-on-focus" settings property
    
    since it clashes with the one from GtkEntry. Create a temporary GtkEntry
    widget to read that value instead. Allows to have GtkEntry and
    GtkSecureEntry in the same process
    (https://bugs.g10code.com/gnupg/issue1029).
---
 ChangeLog                 |    7 +++++++
 gtksecentry/gtksecentry.c |   13 +++++--------
 2 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 20490f0..2d35057 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Fri Apr 24 10:46:20 CEST 2009 Guido Günther <agx sigxcpu org>
+
+	* gtksecentry/gtksecentry.c: don't install "gtk-entry-select-on-focus"
+	settings property since it clashes with the one from GtkEntry. Allows
+	to have GtkEntry and GtkSecureEntry in the same process.
+	(https://bugs.g10code.com/gnupg/issue1029).
+
 Fri Apr 24 09:39:16 CEST 2009 Guido Günther <agx sigxcpu org>
 
 	* AUTHORS: add Matthias Clasen
diff --git a/gtksecentry/gtksecentry.c b/gtksecentry/gtksecentry.c
index 4ad0e97..712ff2a 100644
--- a/gtksecentry/gtksecentry.c
+++ b/gtksecentry/gtksecentry.c
@@ -683,13 +683,6 @@ gtk_secure_entry_class_init(GtkSecureEntryClass * class)
 				 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 @@ gtk_secure_entry_focus_out(GtkWidget * widget,
 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);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]