summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2016-02-18 13:31:09 +0100
committerTobrun <tobrun@mapbox.com>2016-02-18 16:06:10 +0100
commite4fa1816a71dea9c03dde822eab5cd284df3e5f9 (patch)
treea76e8d63d317d6d28ec2a690d6e417322acb5c62 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java
parentdd7bbc024ae6b27054b157f14457e52ed79a6b92 (diff)
downloadqtlocation-mapboxgl-e4fa1816a71dea9c03dde822eab5cd284df3e5f9.tar.gz
[android] #4009 - add tests for tracking settings, optimise architecture to make it testable through unit tests
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java26
1 files changed, 15 insertions, 11 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java
index 57faefb92e..543ff19e56 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/TrackingSettings.java
@@ -1,8 +1,6 @@
package com.mapbox.mapboxsdk.maps;
-import android.Manifest;
import android.support.annotation.NonNull;
-import android.support.annotation.RequiresPermission;
import android.support.annotation.UiThread;
import com.mapbox.mapboxsdk.constants.MyBearingTracking;
@@ -14,6 +12,12 @@ public class TrackingSettings {
private UiSettings uiSettings;
private boolean dismissTrackingOnGesture = true;
+ @MyLocationTracking.Mode
+ private int mMyLocationTrackingMode;
+
+ @MyBearingTracking.Mode
+ private int mMyBearingTrackingMode;
+
TrackingSettings(@NonNull MapView mapView, UiSettings uiSettings) {
this.mapView = mapView;
this.uiSettings = uiSettings;
@@ -33,10 +37,8 @@ public class TrackingSettings {
* @see MyLocationTracking
*/
@UiThread
- @RequiresPermission(anyOf = {
- Manifest.permission.ACCESS_COARSE_LOCATION,
- Manifest.permission.ACCESS_FINE_LOCATION})
public void setMyLocationTrackingMode(@MyLocationTracking.Mode int myLocationTrackingMode) {
+ mMyLocationTrackingMode = myLocationTrackingMode;
mapView.setMyLocationTrackingMode(myLocationTrackingMode);
validateGesturesForTrackingModes();
}
@@ -51,7 +53,7 @@ public class TrackingSettings {
@UiThread
@MyLocationTracking.Mode
public int getMyLocationTrackingMode() {
- return mapView.getMyLocationTrackingMode();
+ return mMyLocationTrackingMode;
}
/**
@@ -70,10 +72,8 @@ public class TrackingSettings {
* @see MyBearingTracking
*/
@UiThread
- @RequiresPermission(anyOf = {
- Manifest.permission.ACCESS_COARSE_LOCATION,
- Manifest.permission.ACCESS_FINE_LOCATION})
public void setMyBearingTrackingMode(@MyBearingTracking.Mode int myBearingTrackingMode) {
+ mMyBearingTrackingMode = myBearingTrackingMode;
mapView.setMyBearingTrackingMode(myBearingTrackingMode);
}
@@ -87,7 +87,7 @@ public class TrackingSettings {
@UiThread
@MyLocationTracking.Mode
public int getMyBearingTrackingMode() {
- return mapView.getMyBearingTrackingMode();
+ return mMyBearingTrackingMode;
}
public boolean isDismissTrackingOnGesture() {
@@ -100,7 +100,7 @@ public class TrackingSettings {
}
private void validateGesturesForTrackingModes() {
- if(!dismissTrackingOnGesture) {
+ if (!dismissTrackingOnGesture) {
int myLocationTrackingMode = getMyLocationTrackingMode();
int myBearingTrackingMode = getMyBearingTrackingMode();
@@ -114,4 +114,8 @@ public class TrackingSettings {
}
}
}
+
+ public boolean isLocationTrackingDisabled(){
+ return mMyLocationTrackingMode == MyLocationTracking.TRACKING_NONE;
+ }
}