]> git.0d.be Git - empathy.git/commitdiff
Implement _get_monitor () in EmpathyTpChat.
authorXavier Claessens <xclaesse@src.gnome.org>
Tue, 6 Jan 2009 16:47:35 +0000 (16:47 +0000)
committerXavier Claessens <xclaesse@src.gnome.org>
Tue, 6 Jan 2009 16:47:35 +0000 (16:47 +0000)
svn path=/trunk/; revision=2055

libempathy/empathy-tp-chat.c

index 534fa5275863322341113133ee9eeea38d4275e4..4b53b0611f60b65ec94c13cbaeb019cb8979c965 100644 (file)
@@ -40,6 +40,7 @@
 #define GET_PRIV(obj) EMPATHY_GET_PRIV (obj, EmpathyTpChat)
 typedef struct {
        EmpathyContactFactory *factory;
+       EmpathyContactMonitor *contact_monitor;
        EmpathyContact        *user;
        EmpathyContact        *remote_contact;
        EmpathyTpGroup        *group;
@@ -248,6 +249,18 @@ tp_chat_get_members (EmpathyContactList *list)
        return members;
 }
 
+static EmpathyContactMonitor *
+tp_chat_get_monitor (EmpathyContactList *list)
+{
+       EmpathyTpChatPriv *priv;
+
+       g_return_val_if_fail (EMPATHY_IS_TP_CHAT (list), NULL);
+
+       priv = GET_PRIV (list);
+
+       return priv->contact_monitor;
+}
+
 static EmpathyMessage *
 tp_chat_build_message (EmpathyTpChat *chat,
                       guint          type,
@@ -894,6 +907,7 @@ tp_chat_finalize (GObject *object)
                g_object_unref (priv->group);
        }
 
+       g_object_unref (priv->contact_monitor);
        g_object_unref (priv->factory);
        g_object_unref (priv->user);
        g_object_unref (priv->account);
@@ -1097,6 +1111,7 @@ empathy_tp_chat_init (EmpathyTpChat *chat)
                EMPATHY_TYPE_TP_CHAT, EmpathyTpChatPriv);
 
        chat->priv = priv;
+       priv->contact_monitor = empathy_contact_monitor_new_for_proxy (EMPATHY_CONTACT_LIST (chat));
 }
 
 static void
@@ -1105,6 +1120,7 @@ tp_chat_iface_init (EmpathyContactListIface *iface)
        iface->add         = tp_chat_add;
        iface->remove      = tp_chat_remove;
        iface->get_members = tp_chat_get_members;
+       iface->get_monitor = tp_chat_get_monitor;
 }
 
 EmpathyTpChat *