]> git.0d.be Git - empathy.git/commitdiff
Teach EmpathyChannelFactory how to create Call channels
authorEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>
Fri, 18 Feb 2011 16:31:35 +0000 (16:31 +0000)
committerEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>
Wed, 8 Jun 2011 15:39:18 +0000 (16:39 +0100)
Conflicts:

libempathy/empathy-channel-factory.c

libempathy/Makefile.am
libempathy/empathy-channel-factory.c

index cfea24c0e6c8c501fca3afd1f51f5d3742c6397d..e6acc648d36f7a35ca2ef6ee84527ac3863efd51 100644 (file)
@@ -10,6 +10,7 @@ AM_CPPFLAGS =                                           \
        -DG_LOG_DOMAIN=\"empathy\"                      \
        -DGCR_API_SUBJECT_TO_CHANGE                     \
        $(EMPATHY_CFLAGS)                               \
+       $(YELL_CFLAGS)                                  \
        $(GEOCLUE_CFLAGS)                               \
        $(NETWORK_MANAGER_CFLAGS)                       \
        $(CONNMAN_CFLAGS)                               \
@@ -111,6 +112,7 @@ libempathy_la_LIBADD =              \
        $(top_builddir)/extensions/libemp-extensions.la \
        $(GCR_LIBS) \
        $(EMPATHY_LIBS) \
+       $(YELL_LIBS) \
        $(GEOCLUE_LIBS) \
        $(NETWORK_MANAGER_LIBS) \
        $(CONNMAN_LIBS)
index d1da3047d785afee84ebaa085709ec0716a4dbf9..b2a630ca135281cc793b5e62ed793ec8441ca805 100644 (file)
@@ -19,6 +19,8 @@
  * Authors: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
  */
 
+#include <config.h>
+
 #include "empathy-channel-factory.h"
 
 #include "empathy-tp-chat.h"
 
 #include <telepathy-glib/telepathy-glib.h>
 
+#if HAVE_CALL
+ #include <telepathy-yell/telepathy-yell.h>
+#endif
+
 static void factory_iface_init (gpointer, gpointer);
 
 G_DEFINE_TYPE_WITH_CODE (EmpathyChannelFactory, empathy_channel_factory,
@@ -113,6 +119,13 @@ empathy_channel_factory_create_channel (
 
       return TP_CHANNEL (empathy_tp_chat_new (account, conn, path, properties));
     }
+#if HAVE_CALL
+  else if (!tp_strdiff (chan_type, TPY_IFACE_CHANNEL_TYPE_CALL))
+    {
+      return TP_CHANNEL (tpy_call_channel_new (conn, path, properties,
+            error));
+    }
+#endif
 
   return tp_client_channel_factory_create_channel (
       self->priv->automatic_factory, conn, path, properties, error);