Enable GPS from Azimuth according to configuration
[azimuth] / src / position-publisher.c
index 77e6ab3..361c770 100644 (file)
@@ -327,6 +327,12 @@ position_publisher_dispose (GObject *object)
 
   priv->dispose_has_run = TRUE;
 
+  if (priv->start_gps)
+    {
+      location_gpsd_control_stop (priv->gps_control);
+      priv->start_gps = FALSE;
+    }
+
   g_object_unref (priv->watcher);
   g_object_unref (priv->gps_control);
   g_object_unref (priv->gps_device);
@@ -392,7 +398,12 @@ position_publisher_set_property (GObject *object,
       priv->blur = g_value_get_boolean (value);
       break;
     case PROP_START_GPS:
-      priv->blur = g_value_get_boolean (value);
+      priv->start_gps = g_value_get_boolean (value);
+      if (priv->start_gps)
+        location_gpsd_control_start (priv->gps_control);
+      else
+        location_gpsd_control_stop (priv->gps_control);
+
       break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);