Mercurial > pidgin.yaz
changeset 15528:b258250b72c9
I think this is proper mobile support for QQ. Mark, do you want to check that out?
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Sun, 04 Feb 2007 08:10:50 +0000 |
parents | 91f33cf0a3e7 |
children | 16845e318249 |
files | libpurple/protocols/qq/keep_alive.c libpurple/protocols/qq/qq.c |
diffstat | 2 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/qq/keep_alive.c Sun Feb 04 04:58:39 2007 +0000 +++ b/libpurple/protocols/qq/keep_alive.c Sun Feb 04 08:10:50 2007 +0000 @@ -164,6 +164,11 @@ } gaim_debug(GAIM_DEBUG_INFO, "QQ", "set buddy %d to %s\n", q_bud->uid, status_id); gaim_prpl_got_user_status(gc->account, name, status_id, NULL); + + if (q_bud->comm_flag & QQ_COMM_FLAG_BIND_MOBILE && q_bud->status != QQ_BUDDY_OFFLINE) + gaim_prpl_got_user_status(gc->account, name, "mobile", NULL); + else + gaim_prpl_got_user_status_deactive(gc->account, name, "mobile"); } else { gaim_debug(GAIM_DEBUG_ERROR, "QQ", "unknown buddy: %d\n", q_bud->uid); }
--- a/libpurple/protocols/qq/qq.c Sun Feb 04 04:58:39 2007 +0000 +++ b/libpurple/protocols/qq/qq.c Sun Feb 04 08:10:50 2007 +0000 @@ -257,8 +257,6 @@ qq_buddy *q_bud = b->proto_data; if (q_bud) { - if (q_bud->comm_flag & QQ_COMM_FLAG_BIND_MOBILE) - return "mobile"; if (q_bud->comm_flag & QQ_COMM_FLAG_QQ_MEMBER) return "qq_member"; /* @@ -292,6 +290,10 @@ "offline", _("QQ: Offline"), FALSE, TRUE, FALSE); types = g_list_append(types, status); + status = gaim_status_type_new_full(GAIM_STATUS_MOBILE, + "mobile", NULL, FALSE, FALSE, TRUE); + types = g_list_append(types, status); + return types; }