diff --git a/pidgin/gtkconv.h b/pidgin/gtkconv.h
--- a/pidgin/gtkconv.h
+++ b/pidgin/gtkconv.h
@@ -28,12 +28,12 @@
 
 #include <gtk/gtk.h>
 
-typedef struct _PidginConversation PidginConversation;
+typedef struct _PidginConversationOld PidginConversationOld;
 
-#define PIDGIN_CONVERSATION(conv) \
-	((PidginConversation *)g_object_get_data(G_OBJECT(conv), "pidgin"))
+#define PIDGIN_CONVERSATION_OLD(conv) \
+	((PidginConversationOld *)g_object_get_data(G_OBJECT(conv), "pidgin"))
 
-#define PIDGIN_IS_PIDGIN_CONVERSATION(conv) \
+#define PIDGIN_IS_PIDGIN_CONVERSATION_OLD(conv) \
 	(purple_conversation_get_ui_ops(conv) == \
 	 pidgin_conversations_get_conv_ui_ops())
 
@@ -48,7 +48,7 @@
  *
  * A GTK conversation pane.
  */
-struct _PidginConversation
+struct _PidginConversationOld
 {
 	PurpleConversation *active_conv;
 	GList *convs;
# HG changeset patch
# Node ID 3020921c310a
# Parent  8888e6d1e9a8
diff --git a/pidgin/gtkconv.c b/pidgin/gtkconv.c
--- a/pidgin/gtkconv.c
+++ b/pidgin/gtkconv.c
@@ -43,7 +43,7 @@
 /* Prototypes. <-- because Paco-Paco hates this comment. */
 gboolean pidgin_conv_has_focus(PurpleConversation *conv);
 
-static void pidgin_conv_placement_place(PidginConversation *conv);
+static void pidgin_conv_placement_place(PidginConversationOld *conv);
 
 /**************************************************************************
  * Callbacks
@@ -52,7 +52,7 @@
 static gboolean
 close_this_sucker(gpointer data)
 {
-	PidginConversation *gtkconv = data;
+	PidginConversationOld *gtkconv = data;
 	GList *list = g_list_copy(gtkconv->convs);
 	purple_debug_misc("gtkconv", "closing %s", purple_conversation_get_name(list->data));
 	g_list_free_full(list, g_object_unref);
@@ -60,7 +60,7 @@
 }
 
 static gboolean
-close_conv_cb(G_GNUC_UNUSED GtkButton *button, PidginConversation *gtkconv)
+close_conv_cb(G_GNUC_UNUSED GtkButton *button, PidginConversationOld *gtkconv)
 {
 	/* We are going to destroy the conversations immediately only if the 'close immediately'
 	 * preference is selected. Otherwise, close the conversation after a reasonable timeout
@@ -79,14 +79,14 @@
 static gboolean
 check_for_and_do_command(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 	GtkWidget *input = NULL;
 	GtkTextBuffer *buffer = NULL;
 	gchar *cmd;
 	const gchar *prefix;
 	gboolean retval = FALSE;
 
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	prefix = "/";
 
 	input = talkatu_editor_get_input(TALKATU_EDITOR(gtkconv->editor));
@@ -184,7 +184,7 @@
 }
 
 static void
-send_cb(G_GNUC_UNUSED GtkWidget *widget, PidginConversation *gtkconv)
+send_cb(G_GNUC_UNUSED GtkWidget *widget, PidginConversationOld *gtkconv)
 {
 	PurpleConversation *conv = gtkconv->active_conv;
 	PurpleAccount *account;
@@ -233,7 +233,7 @@
  * Utility functions
  **************************************************************************/
 static GtkWidget *
-setup_common_pane(PidginConversation *gtkconv)
+setup_common_pane(PidginConversationOld *gtkconv)
 {
 	GSimpleActionGroup *ag = NULL;
 	GtkTextBuffer *buffer = NULL;
@@ -293,7 +293,7 @@
 	return vbox;
 }
 
-static PidginConversation *
+static PidginConversationOld *
 pidgin_conv_find_gtkconv(PurpleConversation * conv)
 {
 	PurpleBuddy *bud = purple_blist_find_buddy(purple_conversation_get_account(conv), purple_conversation_get_name(conv));
@@ -317,8 +317,8 @@
 		                                         purple_buddy_get_account(b),
 		                                         purple_buddy_get_name(b));
 
-		if(PIDGIN_CONVERSATION(im)) {
-			return PIDGIN_CONVERSATION(im);
+		if(PIDGIN_CONVERSATION_OLD(im)) {
+			return PIDGIN_CONVERSATION_OLD(im);
 		}
 	}
 
@@ -346,7 +346,7 @@
 static void
 private_gtkconv_new(PurpleConversation *conv, G_GNUC_UNUSED gboolean hidden)
 {
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 	GtkWidget *tab_cont, *pane;
 	GtkGesture *click = NULL;
 
@@ -359,7 +359,7 @@
 	}
 
 	purple_debug_misc("gtkconv", "creating new gtkconv for %p", conv);
-	gtkconv = g_new0(PidginConversation, 1);
+	gtkconv = g_new0(PidginConversationOld, 1);
 	g_object_set_data(G_OBJECT(conv), "pidgin", gtkconv);
 	gtkconv->active_conv = conv;
 	gtkconv->convs = g_list_prepend(gtkconv->convs, conv);
@@ -395,15 +395,15 @@
 pidgin_conv_new(PurpleConversation *conv)
 {
 	private_gtkconv_new(conv, FALSE);
-	if (PIDGIN_IS_PIDGIN_CONVERSATION(conv))
+	if (PIDGIN_IS_PIDGIN_CONVERSATION_OLD(conv))
 		purple_signal_emit(pidgin_conversations_get_handle(),
-				"conversation-displayed", PIDGIN_CONVERSATION(conv));
+				"conversation-displayed", PIDGIN_CONVERSATION_OLD(conv));
 }
 
 void
 pidgin_conversation_detach(PurpleConversation *conv) {
-	if(PIDGIN_IS_PIDGIN_CONVERSATION(conv)) {
-		PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv);
+	if(PIDGIN_IS_PIDGIN_CONVERSATION_OLD(conv)) {
+		PidginConversationOld *gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 
 		close_conv_cb(NULL, gtkconv);
 
@@ -434,7 +434,7 @@
 static void
 pidgin_conv_destroy(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv);
+	PidginConversationOld *gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	GtkRoot *win = NULL;
 
 	gtkconv->convs = g_list_remove(gtkconv->convs, conv);
@@ -468,7 +468,7 @@
 writing_msg(PurpleConversation *conv, PurpleMessage *msg,
             G_GNUC_UNUSED gpointer _unused)
 {
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 
 	g_return_val_if_fail(msg != NULL, FALSE);
 
@@ -476,7 +476,7 @@
 		return FALSE;
 
 	g_return_val_if_fail(conv != NULL, FALSE);
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	g_return_val_if_fail(gtkconv != NULL, FALSE);
 
 	if (conv == gtkconv->active_conv)
@@ -493,13 +493,13 @@
 {
 	PidginMessage *pidgin_msg = NULL;
 	PurpleMessageFlags flags;
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 	PurpleConnection *gc;
 	PurpleAccount *account;
 	gboolean plugin_return;
 
 	g_return_if_fail(conv != NULL);
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	g_return_if_fail(gtkconv != NULL);
 	flags = purple_message_get_flags(pmsg);
 
@@ -531,7 +531,7 @@
 gboolean
 pidgin_conv_has_focus(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv);
+	PidginConversationOld *gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	GtkRoot *win;
 
 	win = gtk_widget_get_root(gtkconv->tab_cont);
@@ -572,7 +572,7 @@
 	GList *list;
 	PurpleConversation *conv;
 	PurpleConversationManager *manager;
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 	gboolean visible = (gboolean)GPOINTER_TO_INT(value);
 
 	manager = purple_conversation_manager_get_default();
@@ -580,13 +580,13 @@
 	while(list != NULL) {
 		conv = PURPLE_CONVERSATION(list->data);
 
-		if (!PIDGIN_IS_PIDGIN_CONVERSATION(conv)) {
+		if (!PIDGIN_IS_PIDGIN_CONVERSATION_OLD(conv)) {
 			list = g_list_delete_link(list, list);
 
 			continue;
 		}
 
-		gtkconv = PIDGIN_CONVERSATION(conv);
+		gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 
 		talkatu_editor_set_toolbar_visible(TALKATU_EDITOR(gtkconv->editor), visible);
 
@@ -599,7 +599,7 @@
 {
 	int timer;
 	purple_conversation_set_ui_ops(conv, pidgin_conversations_get_conv_ui_ops());
-	if (!PIDGIN_CONVERSATION(conv))
+	if (!PIDGIN_CONVERSATION_OLD(conv))
 		private_gtkconv_new(conv, FALSE);
 	timer = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(conv), "close-timer"));
 	if (timer) {
@@ -610,10 +610,10 @@
 
 gboolean pidgin_conv_attach_to_conversation(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv;
+	PidginConversationOld *gtkconv;
 
 	pidgin_conv_attach(conv);
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 
 	purple_signal_emit(pidgin_conversations_get_handle(),
 	                   "conversation-displayed", gtkconv);
@@ -672,7 +672,7 @@
 
 	purple_signal_register(handle, "conversation-displayed",
 						 purple_marshal_VOID__POINTER, G_TYPE_NONE, 1,
-						 G_TYPE_POINTER); /* (PidginConversation *) */
+						 G_TYPE_POINTER); /* (PidginConversationOld *) */
 
 	/**********************************************************************
 	 * UI operations
@@ -699,7 +699,7 @@
  * GTK window ops
  **************************************************************************/
 static void
-pidgin_conv_placement_place(PidginConversation *conv) {
+pidgin_conv_placement_place(PidginConversationOld *conv) {
 	GtkWidget *window = NULL;
 	PidginDisplayWindow *display_window = NULL;
 
diff --git a/pidgin/pidgindisplaywindow.c b/pidgin/pidgindisplaywindow.c
--- a/pidgin/pidgindisplaywindow.c
+++ b/pidgin/pidgindisplaywindow.c
@@ -514,12 +514,12 @@
 pidgin_display_window_add(PidginDisplayWindow *window,
                           PurpleConversation *conversation)
 {
-	PidginConversation *gtkconv = NULL;
+	PidginConversationOld *gtkconv = NULL;
 
 	g_return_if_fail(PIDGIN_IS_DISPLAY_WINDOW(window));
 	g_return_if_fail(PURPLE_IS_CONVERSATION(conversation));
 
-	gtkconv = PIDGIN_CONVERSATION(conversation);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conversation);
 	if(gtkconv != NULL) {
 		PidginDisplayItem *item = NULL;
 		const char *value = NULL;
diff --git a/pidgin/plugins/unity/unity.c b/pidgin/plugins/unity/unity.c
--- a/pidgin/plugins/unity/unity.c
+++ b/pidgin/plugins/unity/unity.c
@@ -157,15 +157,15 @@
 alert(PurpleConversation *conv)
 {
 	gint count;
-	PidginConversation *gtkconv = NULL;
+	PidginConversationOld *gtkconv = NULL;
 	PidginDisplayWindow *displaywin = NULL;
 	GtkRoot *root = NULL;
 	GtkWidget *win = NULL;
 
-	if (conv == NULL || PIDGIN_CONVERSATION(conv) == NULL)
+	if (conv == NULL || PIDGIN_CONVERSATION_OLD(conv) == NULL)
 		return 0;
 
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	root = gtk_widget_get_root(gtkconv->tab_cont);
 	win = GTK_WIDGET(root);
 	displaywin = PIDGIN_DISPLAY_WINDOW(win);
@@ -305,7 +305,7 @@
 		GtkWidget *win = NULL;
 		PidginDisplayWindow *displaywin = NULL;
 
-		root = gtk_widget_get_root(PIDGIN_CONVERSATION(conv)->tab_cont);
+		root = gtk_widget_get_root(PIDGIN_CONVERSATION_OLD(conv)->tab_cont);
 		win = GTK_WIDGET(root);
 		displaywin = PIDGIN_DISPLAY_WINDOW(win);
 
@@ -313,7 +313,7 @@
 
 		pidgin_display_window_select(displaywin, conv);
 
-		gtk_root_set_focus(root, PIDGIN_CONVERSATION(conv)->entry);
+		gtk_root_set_focus(root, PIDGIN_CONVERSATION_OLD(conv)->entry);
 	}
 	g_strfreev (sections);
 }
@@ -456,10 +456,10 @@
 static int
 attach_signals(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv = NULL;
+	PidginConversationOld *gtkconv = NULL;
 	guint id;
 
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	if (!gtkconv)
 		return 0;
 
@@ -477,9 +477,9 @@
 static void
 detach_signals(PurpleConversation *conv)
 {
-	PidginConversation *gtkconv = NULL;
+	PidginConversationOld *gtkconv = NULL;
 	guint id;
-	gtkconv = PIDGIN_CONVERSATION(conv);
+	gtkconv = PIDGIN_CONVERSATION_OLD(conv);
 	if (!gtkconv)
 		return;
 
