From 4ae459cba54d8a8208ff3cfcfaf04d6447bffe55 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Thu, 7 Aug 2008 14:40:51 +0000 Subject: [PATCH] Do not use mission_control_request_channel as we don't use MC's dispatcher anymore. Fixes bug #529084. svn path=/trunk/; revision=1311 --- libempathy-gtk/empathy-chat.c | 16 ++++++++++------ src/empathy-main-window.c | 15 +++++++++------ src/empathy-new-chatroom-dialog.c | 25 ++++++++++++++----------- 3 files changed, 33 insertions(+), 23 deletions(-) diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c index 9de2c79f..48aa793d 100644 --- a/libempathy-gtk/empathy-chat.c +++ b/libempathy-gtk/empathy-chat.c @@ -179,13 +179,17 @@ chat_status_changed_cb (MissionControl *mc, if (status == TP_CONNECTION_STATUS_CONNECTED && !priv->tp_chat && empathy_account_equal (account, priv->account) && priv->handle_type != TP_HANDLE_TYPE_NONE) { + TpConnection *connection; + DEBUG ("Account reconnected, request a new Text channel"); - mission_control_request_channel_with_string_handle (mc, - priv->account, - TP_IFACE_CHANNEL_TYPE_TEXT, - priv->id, - priv->handle_type, - NULL, NULL); + connection = mission_control_get_tpconnection (mc, account, NULL); + tp_connection_run_until_ready (connection, FALSE, NULL, NULL); + empathy_connection_request_channel (connection, -1, + TP_IFACE_CHANNEL_TYPE_TEXT, + priv->handle_type, + priv->id, TRUE, + NULL, NULL, NULL, NULL); + g_object_unref (connection); } g_object_unref (account); diff --git a/src/empathy-main-window.c b/src/empathy-main-window.c index dbba3b46..e41b3f11 100644 --- a/src/empathy-main-window.c +++ b/src/empathy-main-window.c @@ -722,6 +722,7 @@ main_window_favorite_chatroom_join (EmpathyChatroom *chatroom) { MissionControl *mc; McAccount *account; + TpConnection *connection; const gchar *room; mc = empathy_mission_control_new (); @@ -730,12 +731,14 @@ main_window_favorite_chatroom_join (EmpathyChatroom *chatroom) DEBUG ("Requesting channel for '%s'", room); - mission_control_request_channel_with_string_handle (mc, - account, - TP_IFACE_CHANNEL_TYPE_TEXT, - room, - TP_HANDLE_TYPE_ROOM, - NULL, NULL); + connection = mission_control_get_tpconnection (mc, account, NULL); + tp_connection_run_until_ready (connection, TRUE, NULL, NULL); + empathy_connection_request_channel (connection, -1, + TP_IFACE_CHANNEL_TYPE_TEXT, + TP_HANDLE_TYPE_ROOM, + room, TRUE, + NULL, NULL, NULL, NULL); + g_object_unref (connection); g_object_unref (mc); } diff --git a/src/empathy-new-chatroom-dialog.c b/src/empathy-new-chatroom-dialog.c index 35a9c327..4a1fb90d 100644 --- a/src/empathy-new-chatroom-dialog.c +++ b/src/empathy-new-chatroom-dialog.c @@ -487,12 +487,13 @@ new_chatroom_dialog_model_selection_changed (GtkTreeSelection *selection static void new_chatroom_dialog_join (EmpathyNewChatroomDialog *dialog) { - McAccount *account; EmpathyAccountChooser *account_chooser; - MissionControl *mc; - const gchar *room; - const gchar *server = NULL; - gchar *room_name = NULL; + McAccount *account; + MissionControl *mc; + TpConnection *connection; + const gchar *room; + const gchar *server = NULL; + gchar *room_name = NULL; room = gtk_entry_get_text (GTK_ENTRY (dialog->entry_room)); server = gtk_entry_get_text (GTK_ENTRY (dialog->entry_server)); @@ -509,13 +510,15 @@ new_chatroom_dialog_join (EmpathyNewChatroomDialog *dialog) DEBUG ("Requesting channel for '%s'", room_name); mc = empathy_mission_control_new (); - mission_control_request_channel_with_string_handle (mc, - account, - TP_IFACE_CHANNEL_TYPE_TEXT, - room_name, - TP_HANDLE_TYPE_ROOM, - NULL, NULL); + connection = mission_control_get_tpconnection (mc, account, NULL); + tp_connection_run_until_ready (connection, TRUE, NULL, NULL); + empathy_connection_request_channel (connection, -1, + TP_IFACE_CHANNEL_TYPE_TEXT, + TP_HANDLE_TYPE_ROOM, + room_name, TRUE, + NULL, NULL, NULL, NULL); g_free (room_name); + g_object_unref (connection); g_object_unref (mc); } -- 2.39.2