pidgin: a40442de: conversation: Move the "not typing" logi...
darkrain42 at pidgin.im
darkrain42 at pidgin.im
Sat Feb 5 17:40:47 EST 2011
----------------------------------------------------------------------
Revision: a40442de9721475c1c76ef276eff179a92ef75d4
Parent: 4b89bcd9801d10b726f0666775b4dfcfd18a206d
Author: hanzz.k at gmail.com
Date: 02/05/11 17:38:55
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/a40442de9721475c1c76ef276eff179a92ef75d4
Changelog:
conversation: Move the "not typing" logic for receipt of a message to purple_conv_im_write.
This causes issues when a UI implements the write_im UI op and doesn't call
purple_conversation_write (which Spectrum doesn't do), and ends up with
a buddy appearing to be stuck in the typing state.
Patch from Jan "HanzZ" Kaluza
Changes against parent 4b89bcd9801d10b726f0666775b4dfcfd18a206d
patched ChangeLog
patched libpurple/conversation.c
-------------- next part --------------
============================================================
--- ChangeLog 291a786757b77eb340e3ab10e5d4359fe40831a3
+++ ChangeLog 81aa144dbfc445799f4e830b81f7df607466cf25
@@ -32,6 +32,8 @@ version 2.7.10 (??/??/????):
Samstag) (#13073)
* Fixed bugs in purple_str_to_time() that caused the most recent 'make
check' failures. (Nader Morshed) (#13131)
+ * Correct an issue that caused some UIs other than Pidgin or Finch to
+ leave a buddy in the "is typing" state. (Jan Kaluza)
Pidgin:
* Support using the Page Up and Page Down keys on the numeric keypad in
============================================================
--- libpurple/conversation.c ee99c716bc1eee1b506e868d1ba00cbaf5ff511a
+++ libpurple/conversation.c 292bafeeae0e74e5a4235a58322c44c563150d6d
@@ -999,12 +999,6 @@ purple_conversation_write(PurpleConversa
}
}
- if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM) {
- if ((flags & PURPLE_MESSAGE_RECV) == PURPLE_MESSAGE_RECV) {
- purple_conv_im_set_typing_state(PURPLE_CONV_IM(conv), PURPLE_NOT_TYPING);
- }
- }
-
if (ops && ops->write_conv)
ops->write_conv(conv, who, alias, displayed, flags, mtime);
@@ -1229,6 +1223,10 @@ purple_conv_im_write(PurpleConvIm *im, c
c->ui_ops->write_im(c, who, message, flags, mtime);
else
purple_conversation_write(c, who, message, flags, mtime);
+
+ if ((flags & PURPLE_MESSAGE_RECV) == PURPLE_MESSAGE_RECV) {
+ purple_conv_im_set_typing_state(im, PURPLE_NOT_TYPING);
+ }
}
gboolean purple_conv_present_error(const char *who, PurpleAccount *account, const char *what)
More information about the Commits
mailing list