--- a/pidgin/pidgindisplaywindow.c Sun Dec 31 21:59:37 2023 -0600
+++ b/pidgin/pidgindisplaywindow.c Sun Dec 31 22:01:13 2023 -0600
@@ -290,6 +290,26 @@
+pidgin_display_window_conversation_registered_cb(G_GNUC_UNUSED PurpleConversationManager *manager, + PurpleConversation *conversation, + PidginDisplayWindow *window = data; + pidgin_display_window_add(window, conversation); +pidgin_display_window_conversation_unregistered_cb(G_GNUC_UNUSED PurpleConversationManager *manager, + PurpleConversation *conversation, + PidginDisplayWindow *window = data; + pidgin_display_window_remove(window, conversation); /******************************************************************************
*****************************************************************************/
@@ -397,9 +417,19 @@
pidgin_display_window_get_default(void) {
if(!GTK_IS_WIDGET(default_window)) {
+ PurpleConversationManager *manager = NULL; default_window = pidgin_display_window_new();
g_object_add_weak_pointer(G_OBJECT(default_window),
(gpointer)&default_window);
+ manager = purple_conversation_manager_get_default(); + g_signal_connect_object(manager, "registered", + G_CALLBACK(pidgin_display_window_conversation_registered_cb), + g_signal_connect_object(manager, "unregistered", + G_CALLBACK(pidgin_display_window_conversation_unregistered_cb),