[network-manager-netbook] Fix the reparenting issues on wireless security dialogs.



commit b6ea8426e76696d5d9c88e86006388bf2aa6aeca
Author: Tambet Ingo <tambet gmail com>
Date:   Tue May 26 10:15:48 2009 +0300

    Fix the reparenting issues on wireless security dialogs.
---
 TODO                                      |    1 -
 src/wireless-security/eap-method-peap.c   |    6 +++++-
 src/wireless-security/eap-method-ttls.c   |    6 +++++-
 src/wireless-security/wireless-security.c |    6 +++++-
 4 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/TODO b/TODO
index 1e5e8cb..f728bc0 100644
--- a/TODO
+++ b/TODO
@@ -3,4 +3,3 @@
 * 3G switch doesn't work.
 * "Advanced" button doesn't do anything, used for specifying static IP, manual DNS, etc.
 * Hidden APs are not supported at all.
-* WPA-EAP authentication dialog has some widget visibility issues.
diff --git a/src/wireless-security/eap-method-peap.c b/src/wireless-security/eap-method-peap.c
index dfd87f6..7a3fd6a 100644
--- a/src/wireless-security/eap-method-peap.c
+++ b/src/wireless-security/eap-method-peap.c
@@ -198,7 +198,11 @@ inner_auth_combo_changed_cb (GtkWidget *combo, gpointer user_data)
 
 	if (method->size_group)
 		eap_method_add_to_size_group (eap, method->size_group);
-	gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
+
+	if (gtk_widget_get_parent (eap_widget))
+	  gtk_widget_reparent (eap_widget, vbox);
+	else
+	  gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
 
 	eap_method_unref (eap);
 
diff --git a/src/wireless-security/eap-method-ttls.c b/src/wireless-security/eap-method-ttls.c
index 6887704..eff3085 100644
--- a/src/wireless-security/eap-method-ttls.c
+++ b/src/wireless-security/eap-method-ttls.c
@@ -180,7 +180,11 @@ inner_auth_combo_changed_cb (GtkWidget *combo, gpointer user_data)
 
 	if (method->size_group)
 		eap_method_add_to_size_group (eap, method->size_group);
-	gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
+
+	if (gtk_widget_get_parent (eap_widget))
+	  gtk_widget_reparent (eap_widget, vbox);
+	else
+	  gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
 
 	eap_method_unref (eap);
 
diff --git a/src/wireless-security/wireless-security.c b/src/wireless-security/wireless-security.c
index cab1b68..8025c33 100644
--- a/src/wireless-security/wireless-security.c
+++ b/src/wireless-security/wireless-security.c
@@ -256,7 +256,11 @@ ws_802_1x_auth_combo_changed (GtkWidget *combo,
 
 	if (size_group)
 		eap_method_add_to_size_group (eap, size_group);
-	gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
+
+	if (gtk_widget_get_parent (eap_widget))
+	  gtk_widget_reparent (eap_widget, vbox);
+	else
+	  gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
 
 	eap_method_unref (eap);
 



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