aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy')
-rw-r--r--libempathy/empathy-tp-chat.c55
-rw-r--r--libempathy/empathy-tp-chat.h2
2 files changed, 13 insertions, 44 deletions
diff --git a/libempathy/empathy-tp-chat.c b/libempathy/empathy-tp-chat.c
index 6a871822e..68a0af174 100644
--- a/libempathy/empathy-tp-chat.c
+++ b/libempathy/empathy-tp-chat.c
@@ -561,49 +561,6 @@ empathy_tp_chat_new (McAccount *account,
NULL);
}
-EmpathyTpChat *
-empathy_tp_chat_new_with_contact (EmpathyContact *contact)
-{
- EmpathyTpChat *chat;
- MissionControl *mc;
- McAccount *account;
- TpConn *tp_conn;
- TpChan *text_chan;
- const gchar *bus_name;
- guint handle;
-
- g_return_val_if_fail (EMPATHY_IS_CONTACT (contact), NULL);
-
- mc = empathy_mission_control_new ();
- account = empathy_contact_get_account (contact);
-
- if (mission_control_get_connection_status (mc, account, NULL) != 0) {
- /* The account is not connected, nothing to do. */
- return NULL;
- }
-
- tp_conn = mission_control_get_connection (mc, account, NULL);
- g_return_val_if_fail (tp_conn != NULL, NULL);
- bus_name = dbus_g_proxy_get_bus_name (DBUS_G_PROXY (tp_conn));
- handle = empathy_contact_get_handle (contact);
-
- text_chan = tp_conn_new_channel (tp_get_bus (),
- tp_conn,
- bus_name,
- TP_IFACE_CHANNEL_TYPE_TEXT,
- TP_HANDLE_TYPE_CONTACT,
- handle,
- TRUE);
-
- chat = empathy_tp_chat_new (account, text_chan);
-
- g_object_unref (tp_conn);
- g_object_unref (text_chan);
- g_object_unref (mc);
-
- return chat;
-}
-
gboolean
empathy_tp_chat_get_acknowledge (EmpathyTpChat *chat)
{
@@ -642,6 +599,18 @@ empathy_tp_chat_get_channel (EmpathyTpChat *chat)
return priv->tp_chan;
}
+McAccount *
+empathy_tp_chat_get_account (EmpathyTpChat *chat)
+{
+ EmpathyTpChatPriv *priv;
+
+ g_return_val_if_fail (EMPATHY_IS_TP_CHAT (chat), NULL);
+
+ priv = GET_PRIV (chat);
+
+ return priv->account;
+}
+
GList *
empathy_tp_chat_get_pendings (EmpathyTpChat *chat)
{
diff --git a/libempathy/empathy-tp-chat.h b/libempathy/empathy-tp-chat.h
index cd807c983..7f5ef212e 100644
--- a/libempathy/empathy-tp-chat.h
+++ b/libempathy/empathy-tp-chat.h
@@ -57,10 +57,10 @@ struct _EmpathyTpChatClass {
GType empathy_tp_chat_get_type (void) G_GNUC_CONST;
EmpathyTpChat *empathy_tp_chat_new (McAccount *account,
TpChan *tp_chan);
-EmpathyTpChat *empathy_tp_chat_new_with_contact (EmpathyContact *contact);
gboolean empathy_tp_chat_get_acknowledge (EmpathyTpChat *chat);
void empathy_tp_chat_set_acknowledge (EmpathyTpChat *chat,
gboolean acknowledge);
+McAccount * empathy_tp_chat_get_account (EmpathyTpChat *chat);
TpChan * empathy_tp_chat_get_channel (EmpathyTpChat *chat);
GList * empathy_tp_chat_get_pendings (EmpathyTpChat *chat);
void empathy_tp_chat_send (EmpathyTpChat *chat,