From 97fc0a1dd8bd6bd293a09ce0dc34281068ccd620 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Thu, 29 Apr 2010 11:44:49 +0200 Subject: No need of a contact factory to set location --- libempathy-gtk/empathy-location-manager.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'libempathy-gtk') diff --git a/libempathy-gtk/empathy-location-manager.c b/libempathy-gtk/empathy-location-manager.c index 0165052e1..0a9d4dcf7 100644 --- a/libempathy-gtk/empathy-location-manager.c +++ b/libempathy-gtk/empathy-location-manager.c @@ -38,7 +38,6 @@ #include "libempathy/empathy-enum-types.h" #include "libempathy/empathy-location.h" -#include "libempathy/empathy-tp-contact-factory.h" #include "libempathy/empathy-utils.h" #define DEBUG_FLAG EMPATHY_DEBUG_LOCATION @@ -182,6 +181,16 @@ empathy_location_manager_class_init (EmpathyLocationManagerClass *class) g_type_class_add_private (object_class, sizeof (EmpathyLocationManagerPriv)); } +static void +publish_location_cb (TpConnection *connection, + const GError *error, + gpointer user_data, + GObject *weak_object) +{ + if (error != NULL) + DEBUG ("Error setting location: %s", error->message); +} + static void publish_location (EmpathyLocationManager *self, TpConnection *conn, @@ -191,7 +200,6 @@ publish_location (EmpathyLocationManager *self, guint connection_status = -1; gboolean can_publish; EmpathyConf *conf = empathy_conf_get (); - EmpathyTpContactFactory *factory; if (!conn) return; @@ -215,9 +223,8 @@ publish_location (EmpathyLocationManager *self, (g_hash_table_size (priv->location) == 0 ? "empty" : ""), conn); - factory = empathy_tp_contact_factory_dup_singleton (conn); - empathy_tp_contact_factory_set_location (factory, priv->location); - g_object_unref (factory); + tp_cli_connection_interface_location_call_set_location (conn, -1, + priv->location, publish_location_cb, NULL, NULL, G_OBJECT (self)); } typedef struct -- cgit v1.2.3