diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2005-12-14 00:27:58 +0100 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2005-12-14 00:27:58 +0100 |
commit | 22bf64eab8a79352317ee190cddfeef3011aa8dc (patch) | |
tree | 588aeb197e2b24660c2813866270f8e780903da0 /protocols/oscar/oscar.c | |
parent | 6aaa2213588f7c4c00a68c5622f6974679eaf196 (diff) | |
parent | e7f46c56ffa29c6f8f4917c5f367a61706758e2a (diff) |
Improved typing notification support. (from f0rked)
Diffstat (limited to 'protocols/oscar/oscar.c')
-rw-r--r-- | protocols/oscar/oscar.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c index 15844479..240bab14 100644 --- a/protocols/oscar/oscar.c +++ b/protocols/oscar/oscar.c @@ -2450,10 +2450,20 @@ int gaim_parsemtn(aim_session_t *sess, aim_frame_t *fr, ...) sn = va_arg(ap, char*); type2 = va_arg(ap, int); va_end(ap); - - if(type2 == 0x0001 || type2 == 0x0002) - serv_got_typing(gc, sn, 0); - + + if(type2 == 0x0002) { + /* User is typing */ + serv_got_typing(gc, sn, 0, 1); + } + else if (type2 == 0x0001) { + /* User has typed something, but is not actively typing (stale) */ + serv_got_typing(gc, sn, 0, 2); + } + else { + /* User has stopped typing */ + serv_got_typing(gc, sn, 0, 0); + } + return 1; } |