aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanielle Madeley <danielle.madeley@collabora.co.uk>2011-03-15 13:32:27 +0800
committerEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-04-08 18:41:29 +0800
commitd7bfe6e1e7e30708c6eb765398576555e44b28b3 (patch)
tree50c680f26995398f44516f6f1a378d3a6edd6a63
parent5cf68cc540e946cf5470e6d4978d13ce30c8cf9c (diff)
downloadgsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar.gz
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar.bz2
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar.lz
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar.xz
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.tar.zst
gsoc2013-empathy-d7bfe6e1e7e30708c6eb765398576555e44b28b3.zip
Make password entry insensitive if remember-password inactive
Make remember-password inactive if password is not saved.
-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))