--- a/pidgin/plugins/unity.c Thu Jul 29 23:36:13 2021 -0500
+++ b/pidgin/plugins/unity.c Fri Jul 30 03:31:35 2021 -0500
@@ -61,10 +61,16 @@
if (launcher_count == LAUNCHER_COUNT_MESSAGES) {
- for (convs = purple_conversations_get_all(); convs != NULL; convs = convs->next) {
+ PurpleConversationManager *manager = NULL; + manager = purple_conversation_manager_get_default(); + convs = purple_conversation_manager_get_all(manager); PurpleConversation *conv = convs->data;
count += GPOINTER_TO_INT(g_object_get_data(G_OBJECT(conv),
+ convs = g_list_delete_link(convs, convs); @@ -125,13 +131,17 @@
+ PurpleConversationManager *manager = NULL; - for (convs = purple_conversations_get_all(); convs != NULL; convs = convs->next) {
+ manager = purple_conversation_manager_get_default(); + convs = purple_conversation_manager_get_all(manager); PurpleConversation *conv = convs->data;
messaging_menu_add_conversation(conv,
GPOINTER_TO_INT(g_object_get_data(G_OBJECT(conv),
"unity-message-count")));
+ convs = g_list_delete_link(convs, convs); @@ -199,18 +209,28 @@
im_sent_im(PurpleAccount *account, PurpleMessage *msg, gpointer _unused)
- PurpleIMConversation *im = NULL;
- im = purple_conversations_find_im_with_account(
- purple_message_get_recipient(msg), account);
- unalert(PURPLE_CONVERSATION(im));
+ PurpleConversation *im = NULL; + PurpleConversationManager *manager = NULL; + manager = purple_conversation_manager_get_default(); + im = purple_conversation_manager_find_im(manager, account, + purple_message_get_recipient(msg)); chat_sent_im(PurpleAccount *account, PurpleMessage *msg, int id)
- PurpleChatConversation *chat = NULL;
- chat = purple_conversations_find_chat(purple_account_get_connection(account), id);
- unalert(PURPLE_CONVERSATION(chat));
+ PurpleConversation *chat = NULL; + PurpleConversationManager *manager = NULL; + manager = purple_conversation_manager_get_default(); + chat = purple_conversation_manager_find_chat_by_id(manager, account, id); @@ -234,6 +254,7 @@
gchar **sections = g_strsplit(id, ":", 0);
PurpleConversation *conv = NULL;
+ PurpleConversationManager *manager = NULL; PidginConvWindow *purplewin = NULL;
@@ -242,14 +263,17 @@
char *aname = sections[2];
char *protocol = sections[3];
+ manager = purple_conversation_manager_get_default(); account = purple_accounts_find(aname, protocol);
- if (g_strcmp0(type, "im") == 0)
- conv = PURPLE_CONVERSATION(purple_conversations_find_im_with_account(cname, account));
- else if (g_strcmp0(type, "chat") == 0)
- conv = PURPLE_CONVERSATION(purple_conversations_find_chat_with_account(cname, account));
- conv = purple_conversations_find_with_account(cname, account);
+ if (g_strcmp0(type, "im") == 0) { + conv = purple_conversation_manager_find_im(manager, account, cname); + } else if (g_strcmp0(type, "chat") == 0) { + conv = purple_conversation_manager_find_chat(manager, account, cname); + conv = purple_conversation_manager_find(manager, account, cname); @@ -530,7 +554,8 @@
unity_load(GPluginPlugin *plugin, GError **error) {
- GList *convs = purple_conversations_get_all();
+ PurpleConversationManager *manager = NULL; PurpleSavedStatus *saved_status;
void *conv_handle = purple_conversations_get_handle();
void *gtk_conv_handle = pidgin_conversations_get_handle();
@@ -577,10 +602,12 @@
purple_signal_connect(conv_handle, "deleting-conversation", plugin,
PURPLE_CALLBACK(deleting_conv), NULL);
- PurpleConversation *conv = (PurpleConversation *)convs->data;
+ manager = purple_conversation_manager_get_default(); + convs = purple_conversation_manager_get_all(manager); + PurpleConversation *conv = PURPLE_CONVERSATION(convs->data);
+ convs = g_list_delete_link(convs, convs); @@ -588,12 +615,17 @@
unity_unload(GPluginPlugin *plugin, GError **error) {
- GList *convs = purple_conversations_get_all();
- PurpleConversation *conv = (PurpleConversation *)convs->data;
+ PurpleConversationManager *manager = NULL; + manager = purple_conversation_manager_get_default(); + convs = purple_conversation_manager_get_all(manager); + PurpleConversation *conv = PURPLE_CONVERSATION(convs->data);
+ convs = g_list_delete_link(convs, convs); unity_launcher_entry_set_count_visible(launcher, FALSE);