diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-02-11 21:29:02 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-05-25 15:22:41 +0800 |
commit | 64d8e268e6be5afc2afd80ff93d9803318dc5953 (patch) | |
tree | e11250b06398ad3c24a5bfe80e59ab81c3325c11 | |
parent | 21bde4f1a8c82330ccb49eb6bdc00a14de7595aa (diff) | |
download | gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar.gz gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar.bz2 gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar.lz gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar.xz gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.tar.zst gsoc2013-empathy-64d8e268e6be5afc2afd80ff93d9803318dc5953.zip |
Use the EmpathyChannelFactory with all components creating EmpathyTpChat
-rw-r--r-- | libempathy/empathy-chatroom-manager.c | 8 | ||||
-rw-r--r-- | src/empathy-chat-manager.c | 9 | ||||
-rw-r--r-- | src/empathy-event-manager.c | 8 |
3 files changed, 25 insertions, 0 deletions
diff --git a/libempathy/empathy-chatroom-manager.c b/libempathy/empathy-chatroom-manager.c index 7872bbb19..53786343b 100644 --- a/libempathy/empathy-chatroom-manager.c +++ b/libempathy/empathy-chatroom-manager.c @@ -37,6 +37,7 @@ #include "empathy-tp-chat.h" #include "empathy-chatroom-manager.h" +#include "empathy-channel-factory.h" #include "empathy-utils.h" #define DEBUG_FLAG EMPATHY_DEBUG_OTHER @@ -538,6 +539,7 @@ empathy_chatroom_manager_constructor (GType type, EmpathyChatroomManagerPriv *priv; GError *error = NULL; TpDBusDaemon *dbus; + EmpathyChannelFactory *factory; if (chatroom_manager_singleton != NULL) return g_object_ref (chatroom_manager_singleton); @@ -597,6 +599,11 @@ empathy_chatroom_manager_constructor (GType type, tp_base_client_add_connection_features_varargs (priv->observer, TP_CONNECTION_FEATURE_CAPABILITIES, NULL); + factory = empathy_channel_factory_dup (); + + tp_base_client_set_channel_factory (priv->observer, + TP_CLIENT_CHANNEL_FACTORY (factory)); + if (!tp_base_client_register (priv->observer, &error)) { g_critical ("Failed to register Observer: %s", error->message); @@ -604,6 +611,7 @@ empathy_chatroom_manager_constructor (GType type, g_error_free (error); } + g_object_unref (factory); return obj; } diff --git a/src/empathy-chat-manager.c b/src/empathy-chat-manager.c index d8e573320..8bdc97e90 100644 --- a/src/empathy-chat-manager.c +++ b/src/empathy-chat-manager.c @@ -20,6 +20,7 @@ #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> @@ -303,6 +304,7 @@ empathy_chat_manager_init (EmpathyChatManager *self) EmpathyChatManagerPriv *priv = GET_PRIV (self); TpDBusDaemon *dbus; GError *error = NULL; + EmpathyChannelFactory *factory; priv->closed_queue = g_queue_new (); priv->messages = g_hash_table_new_full (g_str_hash, g_str_equal, @@ -345,11 +347,18 @@ 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 diff --git a/src/empathy-event-manager.c b/src/empathy-event-manager.c index f75fbc54b..770b22b43 100644 --- a/src/empathy-event-manager.c +++ b/src/empathy-event-manager.c @@ -29,6 +29,7 @@ #include <telepathy-glib/interfaces.h> #include <telepathy-glib/simple-approver.h> +#include <libempathy/empathy-channel-factory.h> #include <libempathy/empathy-presence-manager.h> #include <libempathy/empathy-tp-contact-factory.h> #include <libempathy/empathy-contact-manager.h> @@ -1249,6 +1250,7 @@ empathy_event_manager_init (EmpathyEventManager *manager) EMPATHY_TYPE_EVENT_MANAGER, EmpathyEventManagerPriv); TpDBusDaemon *dbus; GError *error = NULL; + EmpathyChannelFactory *factory; manager->priv = priv; @@ -1332,6 +1334,11 @@ empathy_event_manager_init (EmpathyEventManager *manager) TP_IFACE_CHANNEL_INTERFACE_SASL_AUTHENTICATION, NULL)); + factory = empathy_channel_factory_dup (); + + tp_base_client_set_channel_factory (priv->approver, + TP_CLIENT_CHANNEL_FACTORY (factory)); + if (!tp_base_client_register (priv->approver, &error)) { DEBUG ("Failed to register Approver: %s", error->message); @@ -1344,6 +1351,7 @@ empathy_event_manager_init (EmpathyEventManager *manager) g_error_free (error); } + g_object_unref (factory); g_object_unref (dbus); } |