diff finch/gntblist.c @ 20473:49baf4a0ae39

explicit merge of '9a7160daa1babd3ca644d25e4314310e3f24077e' and '691c4b8c8733c44a3a80e96a60b2f6963abf3fa7'
author Ka-Hing Cheung <khc@hxbc.us>
date Sat, 21 Jul 2007 23:56:16 +0000
parents fad459189cc5
children 980d6e1b2d21
line wrap: on
line diff
--- a/finch/gntblist.c	Sat Jul 21 19:39:38 2007 +0000
+++ b/finch/gntblist.c	Sat Jul 21 23:56:16 2007 +0000
@@ -139,7 +139,8 @@
 {
 	PurpleBlistNode *node;
 	for (node = ((PurpleBlistNode*)group)->child; node; node = node->next) {
-		if (PURPLE_BLIST_NODE_IS_CHAT(node))
+		if (PURPLE_BLIST_NODE_IS_CHAT(node) &&
+				purple_account_is_connected(((PurpleChat *)node)->account))
 			return TRUE;
 		else if (is_contact_online((PurpleContact*)node))
 			return TRUE;
@@ -678,7 +679,7 @@
 		void (*callback)(PurpleBlistNode *, gpointer);
 		callback = (void (*)(PurpleBlistNode *, gpointer))action->callback;
 		if (callback)
-			callback(action->data, node);
+			callback(node, action->data);
 		else
 			return;
 	}
@@ -1494,7 +1495,7 @@
 	} else if (strcmp(text, GNT_KEY_CTRL_O) == 0) {
 		purple_prefs_set_bool(PREF_ROOT "/showoffline",
 				!purple_prefs_get_bool(PREF_ROOT "/showoffline"));
-	} else if (GNT_TREE(ggblist->tree)->search == NULL) {
+	} else if (!gnt_tree_is_searching(GNT_TREE(ggblist->tree))) {
 		if (strcmp(text, "t") == 0) {
 			finch_blist_toggle_tag_buddy(gnt_tree_get_selection_data(GNT_TREE(ggblist->tree)));
 			gnt_bindable_perform_action_named(GNT_BINDABLE(ggblist->tree), "move-down");