*** Plucked rev 79c3a03b5bf55444a8980b01a85391df9e5b824e (darkrain42@pidgin.im):

Tue, 21 Jun 2011 04:38:32 +0000

author
Paul Aurich <darkrain42@pidgin.im>
date
Tue, 21 Jun 2011 04:38:32 +0000
changeset 31887
2982407c9738
parent 31886
629533a3bd61
child 31888
8300e1e9a38c
child 31907
44ec8a1c559e

*** Plucked rev 79c3a03b5bf55444a8980b01a85391df9e5b824e (darkrain42@pidgin.im):
Sort only by op statuses (not typing or away).

Also clean up the flag usage (remove some unused variables).

ChangeLog file | annotate | diff | comparison | revisions
pidgin/gtkconv.c file | annotate | diff | comparison | revisions
--- a/ChangeLog	Mon Jun 20 06:07:38 2011 +0000
+++ b/ChangeLog	Tue Jun 21 04:38:32 2011 +0000
@@ -3,6 +3,7 @@
 version 2.8.1 (MM/DD/YYYY):
 	Pidgin:
 	* Fix Conversation->Add on AIM and MSN.
+	* Entries in the chat user list are sorted properly again.
 
 	Finch:
 	* Fixed logging in to ICQ.
--- a/pidgin/gtkconv.c	Mon Jun 20 06:07:38 2011 +0000
+++ b/pidgin/gtkconv.c	Tue Jun 21 04:38:32 2011 +0000
@@ -3991,12 +3991,12 @@
 	gboolean is_me = FALSE;
 	gboolean is_buddy;
 	gchar *tmp, *alias_key, *name, *alias;
-	int flags;
+	PurpleConvChatBuddyFlags flags;
 	GdkColor *color = NULL;
 
 	alias = cb->alias;
 	name  = cb->name;
-	flags = GPOINTER_TO_INT(cb->flags);
+	flags = cb->flags;
 
 	chat    = PURPLE_CONV_CHAT(conv);
 	gtkconv = PIDGIN_CONVERSATION(conv);
@@ -4346,6 +4346,12 @@
 	                   CHAT_USERS_WEIGHT_COLUMN, &buddy2,
 	                   -1);
 
+	/* Only sort by membership levels */
+	f1 &= PURPLE_CBFLAGS_VOICE | PURPLE_CBFLAGS_HALFOP | PURPLE_CBFLAGS_OP |
+			PURPLE_CBFLAGS_FOUNDER;
+	f2 &= PURPLE_CBFLAGS_VOICE | PURPLE_CBFLAGS_HALFOP | PURPLE_CBFLAGS_OP |
+			PURPLE_CBFLAGS_FOUNDER;
+
 	if (user1 == NULL || user2 == NULL) {
 		if (!(user1 == NULL && user2 == NULL))
 			ret = (user1 == NULL) ? -1: 1;
@@ -6152,7 +6158,6 @@
 	PurpleConvChat *chat;
 	PidginConversation *gtkconv;
 	PidginChatPane *gtkchat;
-	PurpleConvChatBuddyFlags flags;
 	PurpleConvChatBuddy *cbuddy;
 	GtkTreeIter iter;
 	GtkTreeModel *model;
@@ -6171,7 +6176,7 @@
 	while (f != 0) {
 		char *val;
 
-		gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, CHAT_USERS_NAME_COLUMN, &val, CHAT_USERS_FLAGS_COLUMN, &flags, -1);
+		gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, CHAT_USERS_NAME_COLUMN, &val, -1);
 
 		if (!purple_utf8_strcasecmp(old_name, val)) {
 			gtk_list_store_remove(GTK_LIST_STORE(model), &iter);

mercurial