From f1b1b75e6772502290cbff5be2c8f31b61bdb6df Mon Sep 17 00:00:00 2001
From: Fabrice Bellet <fabrice@bellet.info>
Date: Mon, 23 Mar 2015 01:30:50 +0100
Subject: [PATCH] location-manager: fix reduce accuracy setting
https://bugzilla.gnome.org/show_bug.cgi?id=746735
---
libempathy-gtk/empathy-location-manager.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/libempathy-gtk/empathy-location-manager.c b/libempathy-gtk/empathy-location-manager.c
index 8787eb2..6ba39ac 100644
--- a/libempathy-gtk/empathy-location-manager.c
+++ b/libempathy-gtk/empathy-location-manager.c
@@ -368,6 +368,18 @@ publish_cb (GSettings *gsettings_loc,
}
static void
+reduce_accuracy_cb (GSettings *gsettings_loc,
+ const gchar *key,
+ gpointer user_data)
+{
+ EmpathyLocationManager *self = EMPATHY_LOCATION_MANAGER (user_data);
+
+ DEBUG ("Reduce Accuracy changed");
+
+ self->priv->reduce_accuracy = g_settings_get_boolean (gsettings_loc, key);
+}
+
+static void
account_manager_prepared_cb (GObject *source_object,
GAsyncResult *result,
gpointer user_data)
@@ -416,7 +428,12 @@ empathy_location_manager_init (EmpathyLocationManager *self)
"changed::" EMPATHY_PREFS_LOCATION_PUBLISH,
G_CALLBACK (publish_cb), self);
+ g_signal_connect (priv->gsettings_loc,
+ "changed::" EMPATHY_PREFS_LOCATION_REDUCE_ACCURACY,
+ G_CALLBACK (reduce_accuracy_cb), self);
+
publish_cb (priv->gsettings_loc, EMPATHY_PREFS_LOCATION_PUBLISH, self);
+ reduce_accuracy_cb (priv->gsettings_loc, EMPATHY_PREFS_LOCATION_REDUCE_ACCURACY, self);
}
EmpathyLocationManager *