aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-account-widget-skype.c
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy-gtk/empathy-account-widget-skype.c')
-rw-r--r--libempathy-gtk/empathy-account-widget-skype.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-account-widget-skype.c b/libempathy-gtk/empathy-account-widget-skype.c
index d713fac25..a866f45e7 100644
--- a/libempathy-gtk/empathy-account-widget-skype.c
+++ b/libempathy-gtk/empathy-account-widget-skype.c
@@ -365,6 +365,7 @@ account_widget_build_skype_get_password_saved_cb (TpProxy *account,
gpointer user_data,
GObject *password_entry)
{
+ GtkWidget *remember_password;
gboolean password_saved;
if (in_error != NULL)
@@ -384,8 +385,13 @@ account_widget_build_skype_get_password_saved_cb (TpProxy *account,
!tp_str_empty (gtk_entry_get_text (GTK_ENTRY (password_entry))))
return;
+ remember_password =
+ GTK_WIDGET (g_object_get_data (password_entry, "remember-password"));
+
gtk_entry_set_text (GTK_ENTRY (password_entry),
password_saved ? "xxxxxxxxxxxx": "");
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (remember_password),
+ password_saved);
g_object_set_data (password_entry, "fake-password",
GUINT_TO_POINTER (password_saved));
@@ -802,6 +808,9 @@ empathy_account_widget_build_skype (EmpathyAccountWidget *self,
g_object_set_data (G_OBJECT (password_entry), "remember-password",
remember_password);
+ g_object_bind_property (remember_password, "active",
+ password_entry, "sensitive", G_BINDING_SYNC_CREATE);
+
/* find out if we know the password */
if (account != NULL && tp_proxy_has_interface_by_id (account,
EMP_IFACE_QUARK_ACCOUNT_INTERFACE_EXTERNAL_PASSWORD_STORAGE))