aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy/empathy-account-settings.c
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.co.uk>2012-08-24 16:14:43 +0800
committerXavier Claessens <xavier.claessens@collabora.co.uk>2012-08-27 21:47:21 +0800
commit4f0673c142e6529b6aaa0022b8463fa67b2ff060 (patch)
treed255f4248eda4e03238f904cc548640c62f146df /libempathy/empathy-account-settings.c
parent4ef8dd58943034270f935f081e290e7540a792f9 (diff)
downloadgsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar.gz
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar.bz2
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar.lz
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar.xz
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.tar.zst
gsoc2013-empathy-4f0673c142e6529b6aaa0022b8463fa67b2ff060.zip
Remember password at least until session restart
https://bugzilla.gnome.org/show_bug.cgi?id=680776
Diffstat (limited to 'libempathy/empathy-account-settings.c')
-rw-r--r--libempathy/empathy-account-settings.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/libempathy/empathy-account-settings.c b/libempathy/empathy-account-settings.c
index 12154eb79..ee0cb3460 100644
--- a/libempathy/empathy-account-settings.c
+++ b/libempathy/empathy-account-settings.c
@@ -82,6 +82,7 @@ struct _EmpathyAccountSettingsPriv
gboolean supports_sasl;
gboolean password_changed;
+ gboolean remember_password;
gchar *password;
gchar *password_original;
@@ -1344,7 +1345,8 @@ empathy_account_settings_account_updated (GObject *source,
/* FIXME: we shouldn't save the password if we
* can't (MaySaveResponse=False) but we don't have API to check that
* at this point (fdo #35382). */
- empathy_keyring_set_account_password_async (priv->account, priv->password,
+ empathy_keyring_set_account_password_async (priv->account,
+ priv->password, priv->remember_password,
empathy_account_settings_set_password_cb, settings);
}
else
@@ -1399,7 +1401,8 @@ empathy_account_settings_created_cb (GObject *source,
* can't (MaySaveResponse=False) but we don't have API to check that
* at this point (fdo #35382). */
empathy_keyring_set_account_password_async (priv->account,
- priv->password, empathy_account_settings_set_password_cb,
+ priv->password, priv->remember_password,
+ empathy_account_settings_set_password_cb,
settings);
return;
}
@@ -1726,3 +1729,12 @@ empathy_account_settings_set_storage_provider (EmpathyAccountSettings *self,
g_free (priv->storage_provider);
priv->storage_provider = g_strdup (storage);
}
+
+void
+empathy_account_settings_set_remember_password (EmpathyAccountSettings *self,
+ gboolean remember)
+{
+ EmpathyAccountSettingsPriv *priv = GET_PRIV (self);
+
+ priv->remember_password = remember;
+}