aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/bee_user.c
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-08-21 23:25:37 +0100
committerWilmer van der Gaast <wilmer@gaast.net>2010-08-21 23:25:37 +0100
commit0ebf919dd8b47e50ce060f46f2dc5f10f3867207 (patch)
tree7a7ab813da9884d037547116c1d9b321f982f5cd /protocols/bee_user.c
parenta758ec197f3a01dda26d394c1e5125787e4831b6 (diff)
Pass "user is mobile" info coming from OSCAR up to BitlBee and show mobile
people as away=Mobile. Bug #462 (and others for other protocols).
Diffstat (limited to 'protocols/bee_user.c')
-rw-r--r--protocols/bee_user.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/protocols/bee_user.c b/protocols/bee_user.c
index db7842a0..04253c47 100644
--- a/protocols/bee_user.c
+++ b/protocols/bee_user.c
@@ -189,6 +189,13 @@ void imcb_buddy_status( struct im_connection *ic, const char *handle, int flags,
bu->status = g_strdup( ( flags & OPT_AWAY ) && state == NULL ? "Away" : state );
bu->status_msg = g_strdup( message );
+ if( bu->status == NULL && ( flags & OPT_MOBILE ) &&
+ set_getbool( &bee->set, "mobile_is_away" ) )
+ {
+ bu->flags |= BEE_USER_AWAY;
+ bu->status = g_strdup( "Mobile" );
+ }
+
if( bee->ui->user_status )
bee->ui->user_status( bee, bu, old );