changeset 28982:791606778223

merge of 'aee5a93203f807e81fd88cc655fb27908cd17ff3' and 'c7225ba15472ba524ee80edc66505a2829948b95'
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Fri, 05 Feb 2010 14:40:39 +0000
parents 61ea136df111 (diff) 1386a0e22ac7 (current diff)
children 462cb893521b a538cb73f897 1830fa548302
files
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/pidgin/gtkstatusbox.c	Fri Feb 05 02:39:59 2010 +0000
+++ b/pidgin/gtkstatusbox.c	Fri Feb 05 14:40:39 2010 +0000
@@ -2630,6 +2630,7 @@
 	gpointer data;
 	GList *accounts = NULL, *node;
 	int active;
+	gboolean wastyping = FALSE;
 
 
 	if (!gtk_tree_model_get_iter (GTK_TREE_MODEL(status_box->dropdown_store), &iter, path))
@@ -2642,7 +2643,7 @@
 			   TYPE_COLUMN, &type,
 			   DATA_COLUMN, &data,
 			   -1);
-	if (status_box->typing != 0)
+	if ((wastyping = (status_box->typing != 0)))
 		purple_timeout_remove(status_box->typing);
 	status_box->typing = 0;
 
@@ -2666,14 +2667,18 @@
 			pidgin_status_editor_show(FALSE,
 				purple_savedstatus_is_transient(saved_status)
 					? saved_status : NULL);
-			status_menu_refresh_iter(status_box, FALSE);
+			status_menu_refresh_iter(status_box, wastyping);
+			if (wastyping)
+				pidgin_status_box_refresh(status_box);
 			return;
 		}
 
 		if (type == PIDGIN_STATUS_BOX_TYPE_SAVED)
 		{
 			pidgin_status_window_show();
-			status_menu_refresh_iter(status_box, FALSE);
+			status_menu_refresh_iter(status_box, wastyping);
+			if (wastyping)
+				pidgin_status_box_refresh(status_box);
 			return;
 		}
 	}