Mercurial > pidgin.yaz
diff pidgin/gtkblist.c @ 21772:21371ea85970
Fix boldifying the chat entries in the buddylist.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Wed, 05 Dec 2007 00:14:13 +0000 |
parents | 3303c02a46f5 |
children | 6a287408bc54 |
line wrap: on
line diff
--- a/pidgin/gtkblist.c Tue Dec 04 23:25:04 2007 +0000 +++ b/pidgin/gtkblist.c Wed Dec 05 00:14:13 2007 +0000 @@ -4097,7 +4097,7 @@ PurpleConversation *conv, PurpleMessageFlags flag, PurpleBlistNode *node) { PidginBlistNode *ui = node->ui_data; - if (ui->conv.conv != conv || PIDGIN_CONVERSATION(conv) || + if (ui->conv.conv != conv || !pidgin_conv_is_hidden(PIDGIN_CONVERSATION(conv)) || !(flag & (PURPLE_MESSAGE_SEND | PURPLE_MESSAGE_RECV))) return; ui->conv.flags |= PIDGIN_BLIST_NODE_HAS_PENDING_MESSAGE; @@ -4106,11 +4106,10 @@ } static void -displayed_msg_update_ui_cb(PurpleAccount *account, const char *who, const char *message, - PurpleConversation *conv, PurpleMessageFlags flag, PurpleBlistNode *node) +displayed_msg_update_ui_cb(PidginConversation *gtkconv, PurpleBlistNode *node) { PidginBlistNode *ui = node->ui_data; - if (ui->conv.conv != conv) + if (ui->conv.conv != gtkconv->active_conv) return; ui->conv.flags &= ~PIDGIN_BLIST_NODE_HAS_PENDING_MESSAGE; pidgin_blist_update(purple_get_blist(), node); @@ -4136,10 +4135,11 @@ ui, PURPLE_CALLBACK(conversation_deleted_update_ui_cb), ui); purple_signal_connect(purple_conversations_get_handle(), "wrote-im-msg", ui, PURPLE_CALLBACK(written_msg_update_ui_cb), buddy); - purple_signal_connect(pidgin_conversations_get_handle(), "displayed-im-msg", + purple_signal_connect(pidgin_conversations_get_handle(), "conversation-displayed", ui, PURPLE_CALLBACK(displayed_msg_update_ui_cb), buddy); } } + break; case PURPLE_CONV_TYPE_CHAT: { PurpleChat *chat = purple_blist_find_chat(conv->account, conv->name); @@ -4156,9 +4156,10 @@ ui, PURPLE_CALLBACK(conversation_deleted_update_ui_cb), ui); purple_signal_connect(purple_conversations_get_handle(), "wrote-chat-msg", ui, PURPLE_CALLBACK(written_msg_update_ui_cb), chat); - purple_signal_connect(pidgin_conversations_get_handle(), "displayed-chat-msg", + purple_signal_connect(pidgin_conversations_get_handle(), "conversation-displayed", ui, PURPLE_CALLBACK(displayed_msg_update_ui_cb), chat); } + break; default: break; } @@ -5967,7 +5968,8 @@ ui = node->ui_data; conv = ui->conv.conv; - hidden = (conv && (ui->conv.flags & PIDGIN_BLIST_NODE_HAS_PENDING_MESSAGE)); + hidden = (conv && (ui->conv.flags & PIDGIN_BLIST_NODE_HAS_PENDING_MESSAGE) && + pidgin_conv_is_hidden(PIDGIN_CONVERSATION(conv))); status = pidgin_blist_get_status_icon(node, biglist ? PIDGIN_STATUS_ICON_LARGE : PIDGIN_STATUS_ICON_SMALL);