From c23e8cc748d0a74d23a07ff8cfc58ade797a903d Mon Sep 17 00:00:00 2001 From: Antonio Zugaldia Date: Wed, 16 Dec 2015 17:04:16 -0500 Subject: [PATCH] [android] Fix 2-finger rotation is off axis Fixes #3325 --- .../src/main/java/com/mapbox/mapboxsdk/views/MapView.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java index 157f1ae95..f169e98b8 100644 --- a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java +++ b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java @@ -2926,10 +2926,14 @@ public final class MapView extends FrameLayout { // Rotate the map if (mUserLocationView.getMyLocationTrackingMode() == MyLocationTracking.TRACKING_NONE) { // around gesture - mNativeMapView.setBearing(bearing, detector.getFocusX() / mScreenDensity, detector.getFocusY() / mScreenDensity); + mNativeMapView.setBearing(bearing, + detector.getFocusX() / mScreenDensity, + (getHeight() - detector.getFocusY()) / mScreenDensity); } else { // around center map - mNativeMapView.setBearing(bearing, (getWidth() / 2) / mScreenDensity, (getHeight() / 2) / mScreenDensity); + mNativeMapView.setBearing(bearing, + (getWidth() / 2) / mScreenDensity, + (getHeight() / 2) / mScreenDensity); } return true; }