diff pidgin/gtkconv.c @ 23998:ac3db6ba7078

Fix the conversation window closing unexpectedly. Again. Fixes #4442.
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Fri, 05 Sep 2008 12:07:37 +0000
parents a0381a68ceef
children ea5909557bc5 4d752d07a126 0ee06de49812 22b8a92fb5ee
line wrap: on
line diff
--- a/pidgin/gtkconv.c	Fri Sep 05 09:30:00 2008 +0000
+++ b/pidgin/gtkconv.c	Fri Sep 05 12:07:37 2008 +0000
@@ -5253,8 +5253,7 @@
 	if (conv && PIDGIN_IS_PIDGIN_CONVERSATION(conv) && !hide) {
 		PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv);
 		if (gtkconv->win == hidden_convwin) {
-			pidgin_conv_window_remove_gtkconv(gtkconv->win, gtkconv);
-			pidgin_conv_placement_place(gtkconv);
+			pidgin_conv_attach_to_conversation(gtkconv->active_conv);
 		}
 		return;
 	}
@@ -7239,8 +7238,7 @@
 		if (!l)
 			break;
 
-		pidgin_conv_window_remove_gtkconv(hidden_convwin, gtkconv);
-		pidgin_conv_placement_place(gtkconv);
+		pidgin_conv_attach_to_conversation(conv);
 
 		/* TODO: do we need to do anything for any other conversations that are in the same gtkconv here?
 		 * I'm a little concerned that not doing so will cause the "pending" indicator in the gtkblist not to be cleared. -DAA*/
@@ -7280,8 +7278,7 @@
 							purple_conversation_get_account(conv)))))
 			continue;
 
-		pidgin_conv_window_remove_gtkconv(hidden_convwin, gtkconv);
-		pidgin_conv_placement_place(gtkconv);
+		pidgin_conv_attach_to_conversation(conv);
 	}
 }