summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2016-03-21 14:42:07 +0100
committerBrad Leege <bleege@gmail.com>2016-03-21 16:58:49 -0500
commitd329800806425a17e9d5c5e4a696e4730b85b4b9 (patch)
treeb6709179f7bb7146e9285e33f9083c45db8aa9a8
parent8dd6c063bd1744722e6a961d5c4211c18e7237ab (diff)
downloadqtlocation-mapboxgl-d329800806425a17e9d5c5e4a696e4730b85b4b9.tar.gz
[android] #4326 - using the camera API vs getCameraPosition should return same output
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java21
1 files changed, 11 insertions, 10 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
index 432dc0ae8a..280f5c77bf 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
@@ -245,14 +245,15 @@ public class MapboxMap {
*/
@UiThread
public final void moveCamera(CameraUpdate update, MapboxMap.CancelableCallback callback) {
- mCameraPosition = update.getCameraPosition(this);
- mMapView.jumpTo(mCameraPosition.bearing, mCameraPosition.target, mCameraPosition.tilt, mCameraPosition.zoom);
+ CameraPosition position = update.getCameraPosition(this);
+ mMapView.jumpTo(position.bearing, position.target, position.tilt, position.zoom);
if (mOnCameraChangeListener != null) {
mOnCameraChangeListener.onCameraChange(mCameraPosition);
}
if (callback != null) {
callback.onFinish();
}
+ invalidateCameraPosition();
}
/**
@@ -288,24 +289,22 @@ public class MapboxMap {
*/
@UiThread
public final void easeCamera(CameraUpdate update, int durationMs, final MapboxMap.CancelableCallback callback) {
- mCameraPosition = update.getCameraPosition(this);
- mMapView.easeTo(mCameraPosition.bearing, mCameraPosition.target, getDurationNano(durationMs), mCameraPosition.tilt, mCameraPosition.zoom, new CancelableCallback() {
+ CameraPosition position = update.getCameraPosition(this);
+ mMapView.easeTo(position.bearing, position.target, getDurationNano(durationMs), position.tilt, position.zoom, new CancelableCallback() {
@Override
public void onCancel() {
if (callback != null) {
callback.onCancel();
}
+ invalidateCameraPosition();
}
@Override
public void onFinish() {
- if (mOnCameraChangeListener != null) {
- mOnCameraChangeListener.onCameraChange(mCameraPosition);
- }
-
if (callback != null) {
callback.onFinish();
}
+ invalidateCameraPosition();
}
});
}
@@ -358,13 +357,14 @@ public class MapboxMap {
*/
@UiThread
public final void animateCamera(CameraUpdate update, int durationMs, final MapboxMap.CancelableCallback callback) {
- mCameraPosition = update.getCameraPosition(this);
- mMapView.flyTo(mCameraPosition.bearing, mCameraPosition.target, getDurationNano(durationMs), mCameraPosition.tilt, mCameraPosition.zoom, new CancelableCallback() {
+ CameraPosition cameraPosition = update.getCameraPosition(this);
+ mMapView.flyTo(cameraPosition.bearing, cameraPosition.target, getDurationNano(durationMs), cameraPosition.tilt, cameraPosition.zoom, new CancelableCallback() {
@Override
public void onCancel() {
if (callback != null) {
callback.onCancel();
}
+ invalidateCameraPosition();
}
@Override
@@ -376,6 +376,7 @@ public class MapboxMap {
if (callback != null) {
callback.onFinish();
}
+ invalidateCameraPosition();
}
});
}