diff options
Diffstat (limited to 'src/empathy-chat-manager.c')
-rw-r--r-- | src/empathy-chat-manager.c | 29 |
1 files changed, 4 insertions, 25 deletions
diff --git a/src/empathy-chat-manager.c b/src/empathy-chat-manager.c index e6ffaa0e9..0e1745edb 100644 --- a/src/empathy-chat-manager.c +++ b/src/empathy-chat-manager.c @@ -20,7 +20,6 @@ #include <telepathy-glib/telepathy-glib.h> #include <telepathy-glib/proxy-subclass.h> -#include <libempathy/empathy-channel-factory.h> #include <libempathy/empathy-chatroom-manager.h> #include <libempathy/empathy-request-util.h> #include <libempathy/empathy-utils.h> @@ -235,35 +234,22 @@ static void empathy_chat_manager_init (EmpathyChatManager *self) { EmpathyChatManagerPriv *priv = GET_PRIV (self); - TpDBusDaemon *dbus; + TpAccountManager *am; GError *error = NULL; - EmpathyChannelFactory *factory; priv->closed_queue = g_queue_new (); priv->messages = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_hash_table_unref); - dbus = tp_dbus_daemon_dup (&error); - if (dbus == NULL) - { - g_critical ("Failed to get D-Bus daemon: %s", error->message); - g_error_free (error); - return; - } + am = tp_account_manager_dup (); priv->chatroom_mgr = empathy_chatroom_manager_dup_singleton (NULL); /* Text channels handler */ - priv->handler = tp_simple_handler_new (dbus, FALSE, FALSE, + priv->handler = tp_simple_handler_new_with_am (am, FALSE, FALSE, EMPATHY_CHAT_BUS_NAME_SUFFIX, FALSE, handle_channels, self, NULL); - /* EmpathyTpChat relies on these features being prepared */ - tp_base_client_add_connection_features_varargs (priv->handler, - TP_CONNECTION_FEATURE_CAPABILITIES, 0); - tp_base_client_add_channel_features_varargs (priv->handler, - TP_CHANNEL_FEATURE_CHAT_STATES, 0); - - g_object_unref (dbus); + g_object_unref (am); tp_base_client_take_handler_filter (priv->handler, tp_asv_new ( TP_PROP_CHANNEL_CHANNEL_TYPE, G_TYPE_STRING, TP_IFACE_CHANNEL_TYPE_TEXT, @@ -280,18 +266,11 @@ empathy_chat_manager_init (EmpathyChatManager *self) TP_PROP_CHANNEL_TARGET_HANDLE_TYPE, G_TYPE_UINT, TP_HANDLE_TYPE_NONE, NULL)); - factory = empathy_channel_factory_dup (); - - tp_base_client_set_channel_factory (priv->handler, - TP_CLIENT_CHANNEL_FACTORY (factory)); - if (!tp_base_client_register (priv->handler, &error)) { g_critical ("Failed to register text handler: %s", error->message); g_error_free (error); } - - g_object_unref (factory); } static void |