diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java')
-rwxr-xr-x | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java index fc68a408fa..348a53e26b 100755 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java @@ -309,11 +309,15 @@ final class NativeMapView implements NativeMap { } @Override - public void setZoom(double zoom, @NonNull PointF focalPoint, long duration) { + public void setZoom(double zoom, @Nullable PointF focalPoint, long duration) { if (checkState("setZoom")) { return; } - nativeSetZoom(zoom, focalPoint.x / pixelRatio, focalPoint.y / pixelRatio, duration); + if (focalPoint != null) { + nativeSetZoomWithAnchor(zoom, focalPoint.x / pixelRatio, focalPoint.y / pixelRatio, duration); + } else { + nativeSetZoom(zoom, duration); + } } @Override @@ -664,6 +668,14 @@ final class NativeMapView implements NativeMap { } @Override + public LatLng latLngForPixelUnwrapped(@NonNull PointF pixel) { + if (checkState("latLngForPixelUnwrapped")) { + return new LatLng(); + } + return nativeLatLngForPixelUnwrapped(pixel.x / pixelRatio, pixel.y / pixelRatio); + } + + @Override public double getTopOffsetPixelsForAnnotationSymbol(String symbolName) { if (checkState("getTopOffsetPixelsForAnnotationSymbol")) { return 0; @@ -1152,7 +1164,10 @@ final class NativeMapView implements NativeMap { private native void nativeSetPitch(double pitch, long duration); @Keep - private native void nativeSetZoom(double zoom, double cx, double cy, long duration); + private native void nativeSetZoom(double zoom, long duration); + + @Keep + private native void nativeSetZoomWithAnchor(double zoom, double cx, double cy, long duration); @Keep private native double nativeGetZoom(); @@ -1266,6 +1281,10 @@ final class NativeMapView implements NativeMap { @Keep private native LatLng nativeLatLngForPixel(float x, float y); + @NonNull + @Keep + private native LatLng nativeLatLngForPixelUnwrapped(float x, float y); + @Keep private native double nativeGetTopOffsetPixelsForAnnotationSymbol(String symbolName); |