Mercurial > pidgin.yaz
diff libpurple/account.c @ 31820:28e27a37e4b4
Patch from Stefan Ott to add the account-authorization-requested-with-message
signal, which can be useful to plugins. Fixes #8690. I also slipped in some
ChangeLog.API tweaks.
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Sun, 09 Jan 2011 04:40:07 +0000 |
parents | 8714c0bfa52a |
children | 4f2aac5967bb |
line wrap: on
line diff
--- a/libpurple/account.c Sat Jan 08 04:01:05 2011 +0000 +++ b/libpurple/account.c Sun Jan 09 04:40:07 2011 +0000 @@ -1441,6 +1441,27 @@ return NULL; } + plugin_return = GPOINTER_TO_INT( + purple_signal_emit_return_1( + purple_accounts_get_handle(), + "account-authorization-requested-with-message", + account, remote_user, message + )); + + switch (plugin_return) + { + case PURPLE_ACCOUNT_RESPONSE_IGNORE: + return NULL; + case PURPLE_ACCOUNT_RESPONSE_ACCEPT: + if (auth_cb != NULL) + auth_cb(user_data); + return NULL; + case PURPLE_ACCOUNT_RESPONSE_DENY: + if (deny_cb != NULL) + deny_cb(user_data); + return NULL; + } + if (ui_ops != NULL && ui_ops->request_authorize != NULL) { info = g_new0(PurpleAccountRequestInfo, 1); info->type = PURPLE_ACCOUNT_REQUEST_AUTHORIZATION; @@ -3046,6 +3067,13 @@ PURPLE_SUBTYPE_ACCOUNT), purple_value_new(PURPLE_TYPE_STRING)); + purple_signal_register(handle, "account-authorization-requested-with-message", + purple_marshal_INT__POINTER_POINTER_POINTER, + purple_value_new(PURPLE_TYPE_INT), 3, + purple_value_new(PURPLE_TYPE_SUBTYPE, + PURPLE_SUBTYPE_ACCOUNT), + purple_value_new(PURPLE_TYPE_STRING), + purple_value_new(PURPLE_TYPE_STRING)); purple_signal_register(handle, "account-authorization-denied", purple_marshal_VOID__POINTER_POINTER, NULL, 2, purple_value_new(PURPLE_TYPE_SUBTYPE,