diff options
author | Fredrik Karlsson <bjorn.fredrik.karlsson@gmail.com> | 2016-11-17 13:25:14 +0100 |
---|---|---|
committer | Fredrik Karlsson <bjorn.fredrik.karlsson@gmail.com> | 2016-11-18 09:21:38 +0100 |
commit | d959fe1522d3a96d85fd03f5a5deee318c733b75 (patch) | |
tree | b38289800ec96f59bc424c46b541ad2c5d7de6ea /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java | |
parent | 97288cae96dd88c48b7e7f13ffe6fcf6bae5942d (diff) | |
download | qtlocation-mapboxgl-d959fe1522d3a96d85fd03f5a5deee318c733b75.tar.gz |
[android] fixed horizontal panning going the opposite direction
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index e5848f5090..a9f2ed23fc 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -1651,20 +1651,17 @@ public class MapView extends FrameLayout { resetTrackingModesIfRequired(true, false); - // Fling the map - float ease = 0.25f; - - velocityX = velocityX * ease; - velocityY = velocityY * ease; - - double speed = Math.sqrt(velocityX * velocityX + velocityY * velocityY); - double deceleration = 2500; - double duration = speed / (deceleration * ease); + double decelerationRate = 1; // Cancel any animation cancelTransitions(); - nativeMapView.moveBy(velocityX * duration / 2.0 / screenDensity, velocityY * duration / 2.0 / screenDensity, (long) (duration * 1000.0f)); + double offsetX = velocityX * decelerationRate / 4 / screenDensity; + double offsetY = velocityY * decelerationRate / 4 / screenDensity; + + nativeMapView.setGestureInProgress(true); + nativeMapView.moveBy(offsetX, offsetY, (long) (decelerationRate * 1000.0f)); + nativeMapView.setGestureInProgress(false); MapboxMap.OnFlingListener listener = mapboxMap.getOnFlingListener(); if (listener != null) { |