pidgin: 051b51aa: Consistently emit conversation-updated f...

darkrain42 at pidgin.im darkrain42 at pidgin.im
Thu Jun 4 22:35:41 EDT 2009


-----------------------------------------------------------------
Revision: 051b51aa2424e978f16c10511f7a4e0f45c7c5d3
Ancestor: 4058cef57f6b327fdd64981adbfe7ec8e908f401
Author: florian at instantbird.org
Date: 2009-06-05T02:30:31
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/051b51aa2424e978f16c10511f7a4e0f45c7c5d3

Modified files:
        ChangeLog.API libpurple/conversation.c
        libpurple/plugins/psychic.c libpurple/server.c

ChangeLog: 

Consistently emit conversation-updated for typing state changes.

Also reformatted ChangeLog.API a bit (I noticed there's a Changed section)
and added a comment to the psychic plugin (since I had to look up why it
was doing that).

Patch from Florian Qu?ze. Closes #7605.

-------------- next part --------------
============================================================
--- ChangeLog.API	79e09249a8b42ff533c297e574fe20d0376a29ea
+++ ChangeLog.API	9d3dd0399c2293767704bd32ed03fc28edc4270f
@@ -16,9 +16,6 @@ version 2.6.0 (??/??/2009):
 		* blist-node-added and blist-node-removed signals (see
 		  blist-signals.dox)
 		* Jabber plugin signals (see jabber-signals.dox)
-		* Plugins may now emit the jabber-sending-xmlnode signal in order
-		  to send stanzas; this method is preferred to the prpl send_raw
-		  function as other plugins listening to the signal see them.
 		* purple_buddy_destroy
 		* purple_buddy_get_protocol_data
 		* purple_buddy_set_protocol_data
@@ -61,6 +58,13 @@ version 2.6.0 (??/??/2009):
 		  which was completely non-deterministic.  If you want to remove
 		  the attribute with no namespace, then use NULL with
 		  xmlnode_remove_with_namespace.
+		* Plugins may now emit the jabber-sending-xmlnode signal in order
+		  to send stanzas; this method is preferred to the prpl send_raw
+		  function as other plugins listening to the signal see them.
+		* The conversation-updated signal with a PURPLE_CONV_UPDATE_TYPING
+		  update type is emitted when receiving an IM.  Previously, the
+		  typing state was modified (and the buddy-typing-stopped signal
+		  emitted), but this signal was not emitted.
 
 		Deprecated:
 		* buddy-added and buddy-removed blist signals
============================================================
--- libpurple/conversation.c	991af181d5a5ff81ebcf53ba6bce73a9393bda8a
+++ libpurple/conversation.c	1a44bf93f933c38861f9e684c00211b5234c4ee2
@@ -55,7 +55,6 @@ reset_typing_cb(gpointer data)
 	im = PURPLE_CONV_IM(c);
 
 	purple_conv_im_set_typing_state(im, PURPLE_NOT_TYPING);
-	purple_conv_im_update_typing(im);
 	purple_conv_im_stop_typing_timeout(im);
 
 	return FALSE;
@@ -1050,6 +1049,8 @@ purple_conv_im_set_typing_state(PurpleCo
 								   "buddy-typing-stopped", im->conv->account, im->conv->name);
 				break;
 		}
+
+		purple_conv_im_update_typing(im);
 	}
 }
 
============================================================
--- libpurple/plugins/psychic.c	2ed2187349f4c5de5dfd7f7de3668218a03792a6
+++ libpurple/plugins/psychic.c	5634b4ed4220ee9fc7a24cd903dc5600aef4b694
@@ -74,6 +74,7 @@ buddy_typing_cb(PurpleAccount *acct, con
 			      time(NULL));
     }
 
+    /* Necessary because we may be creating a new conversation window. */
     purple_conv_im_set_typing_state(PURPLE_CONV_IM(gconv), PURPLE_TYPING);
   }
 }
============================================================
--- libpurple/server.c	8db23c2e4802ffcf38b78f053e30960dcb90aa79
+++ libpurple/server.c	8730c7801e191207259746e59cbe9f4618e20f6b
@@ -728,7 +728,6 @@ void serv_got_typing(PurpleConnection *g
 		im = PURPLE_CONV_IM(conv);
 
 		purple_conv_im_set_typing_state(im, state);
-		purple_conv_im_update_typing(im);
 	} else {
 		switch (state)
 		{
@@ -766,7 +765,6 @@ void serv_got_typing_stopped(PurpleConne
 
 		purple_conv_im_stop_typing_timeout(im);
 		purple_conv_im_set_typing_state(im, PURPLE_NOT_TYPING);
-		purple_conv_im_update_typing(im);
 	}
 	else
 	{


More information about the Commits mailing list