# HG changeset patch # User Casey Harkins # Date 1192421693 0 # Node ID 3c4d37b98c313a26a1c8e26e5b113e804ac885b7 # Parent 2c039a40babcadc292b480a50dd7d5534f52b9d2# Parent 5c849ee68659e1bd03fd8114b8bde5e0da3ddc31 merge of '60c313e0859ab5b5106920e3133826ed0ec09703' and '9af00415175d29e7e9227c383939d392ea0af499' diff -r 2c039a40babc -r 3c4d37b98c31 pidgin/gtkblist.c --- a/pidgin/gtkblist.c Mon Oct 15 03:07:16 2007 +0000 +++ b/pidgin/gtkblist.c Mon Oct 15 04:14:53 2007 +0000 @@ -3907,7 +3907,7 @@ convs = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_IM, PIDGIN_UNSEEN_TEXT, TRUE, 1); if (convs) { - purple_conversation_present((PurpleConversation*)convs->data); + pidgin_conv_present_conversation((PurpleConversation*)convs->data); g_list_free(convs); } break; diff -r 2c039a40babc -r 3c4d37b98c31 pidgin/gtkconv.c --- a/pidgin/gtkconv.c Mon Oct 15 03:07:16 2007 +0000 +++ b/pidgin/gtkconv.c Mon Oct 15 04:14:53 2007 +0000 @@ -2853,9 +2853,6 @@ if (gtkconv != NULL && gtkconv->active_conv != conv) continue; if (gtkconv == NULL) { - if (!hidden_only || - !purple_conversation_get_data(conv, "unseen-count")) - continue; r = g_list_prepend(r, conv); c++; } else { diff -r 2c039a40babc -r 3c4d37b98c31 pidgin/gtkdocklet.c --- a/pidgin/gtkdocklet.c Mon Oct 15 03:07:16 2007 +0000 +++ b/pidgin/gtkdocklet.c Mon Oct 15 04:14:53 2007 +0000 @@ -145,15 +145,22 @@ if (ui_ops->set_tooltip) { GString *tooltip_text = g_string_new(""); for (l = convs, count = 0 ; l != NULL ; l = l->next, count++) { - if (PIDGIN_IS_PIDGIN_CONVERSATION(l->data)) { - PidginConversation *gtkconv = PIDGIN_CONVERSATION((PurpleConversation *)l->data); - if (count == DOCKLET_TOOLTIP_LINE_LIMIT - 1) - g_string_append(tooltip_text, _("Right-click for more unread messages...\n")); - else - g_string_append_printf(tooltip_text, - ngettext("%d unread message from %s\n", "%d unread messages from %s\n", gtkconv->unseen_count), - gtkconv->unseen_count, - gtk_label_get_text(GTK_LABEL(gtkconv->tab_label))); + PurpleConversation *conv = (PurpleConversation *)l->data; + PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv); + + if (count == DOCKLET_TOOLTIP_LINE_LIMIT - 1) { + g_string_append(tooltip_text, _("Right-click for more unread messages...\n")); + } else if(gtkconv) { + g_string_append_printf(tooltip_text, + ngettext("%d unread message from %s\n", "%d unread messages from %s\n", gtkconv->unseen_count), + gtkconv->unseen_count, + gtk_label_get_text(GTK_LABEL(gtkconv->tab_label))); + } else { + g_string_append_printf(tooltip_text, + ngettext("%d unread message from %s\n", "%d unread messages from %s\n", + GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count"))), + GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count")), + purple_conversation_get_name(conv)); } } @@ -758,7 +765,7 @@ if (pending) { GList *l = get_pending_list(1); if (l != NULL) { - purple_conversation_present((PurpleConversation *)l->data); + pidgin_conv_present_conversation((PurpleConversation *)l->data); g_list_free(l); } } else {