diff options
author | Will Thompson <will.thompson@collabora.co.uk> | 2011-09-26 18:54:12 +0100 |
---|---|---|
committer | Will Thompson <will.thompson@collabora.co.uk> | 2011-09-28 11:32:20 +0100 |
commit | 9d8bd36fa860a5599733c44763fb3aac5fc72b92 (patch) | |
tree | 282af97549d5cf621709126a56efbb71249398d8 /src | |
parent | d8ed34e08ef5ae4ce87d317663e3467ac76fdabb (diff) |
Account: refactor re-requesting RequestedPresence.
Diffstat (limited to 'src')
-rw-r--r-- | src/mcd-account.c | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/src/mcd-account.c b/src/mcd-account.c index d86b0e65..3f134c4b 100644 --- a/src/mcd-account.c +++ b/src/mcd-account.c @@ -924,6 +924,25 @@ mcd_account_request_presence_int (McdAccount *account, } } +/* + * mcd_account_rerequest_presence: + * + * Re-requests the account's current RequestedPresence, possibly triggering a + * new connection attempt. + */ +static void +mcd_account_rerequest_presence (McdAccount *account, + gboolean user_initiated) +{ + McdAccountPrivate *priv = account->priv; + + mcd_account_request_presence_int (account, + priv->req_presence_type, + priv->req_presence_status, + priv->req_presence_message, + user_initiated); +} + void _mcd_account_connect (McdAccount *account, GHashTable *params) { @@ -1210,11 +1229,7 @@ _mcd_account_set_enabled (McdAccount *account, if (enabled) { - mcd_account_request_presence_int (account, - priv->req_presence_type, - priv->req_presence_status, - priv->req_presence_message, - TRUE); + mcd_account_rerequest_presence (account, TRUE); _mcd_account_maybe_autoconnect (account); } } @@ -3965,11 +3980,7 @@ check_validity_check_parameters_cb (McdAccount *account, /* Newly valid - try setting requested presence again. * This counts as user-initiated, because the user caused the * account to become valid somehow. */ - mcd_account_request_presence_int (account, - priv->req_presence_type, - priv->req_presence_status, - priv->req_presence_message, - TRUE); + mcd_account_rerequest_presence (account, TRUE); } } |