diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2015-08-03 01:36:19 +0300 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2015-08-05 15:19:00 +0300 |
commit | fa4636ffe4d2c00446292c229cd549cbaee9e20c (patch) | |
tree | 505e5fdad2051ebc47586e678935b1aa040853db /android | |
parent | 9fd7e883a7515f97ec4edd097a0db5cbebce3ca1 (diff) | |
download | qtlocation-mapboxgl-fa4636ffe4d2c00446292c229cd549cbaee9e20c.tar.gz |
Map::nudgeTransitions no longer depends on client information
Clients no longer need to provide data (eg. if gesturing or in a custom
animation) to Map::nudgeTransitions().
Upon MapContext::renderSync(), a new atomic bool 'needsRepaint' in MapData
allows thread-safe communication between Map and MapContext.
Diffstat (limited to 'android')
4 files changed, 10 insertions, 13 deletions
diff --git a/android/cpp/jni.cpp b/android/cpp/jni.cpp index 476d43729c..6d7def861c 100644 --- a/android/cpp/jni.cpp +++ b/android/cpp/jni.cpp @@ -412,11 +412,11 @@ void JNICALL nativeUpdate(JNIEnv *env, jobject obj, jlong nativeMapViewPtr) { nativeMapView->getMap().update(mbgl::Update::Repaint); } -void JNICALL nativeOnInvalidate(JNIEnv *env, jobject obj, jlong nativeMapViewPtr, jboolean inProgress) { +void JNICALL nativeOnInvalidate(JNIEnv *env, jobject obj, jlong nativeMapViewPtr) { mbgl::Log::Debug(mbgl::Event::JNI, "nativeOnInvalidate"); assert(nativeMapViewPtr != 0); NativeMapView *nativeMapView = reinterpret_cast<NativeMapView *>(nativeMapViewPtr); - nativeMapView->onInvalidate(inProgress); + nativeMapView->onInvalidate(); } void JNICALL nativeViewResize(JNIEnv *env, jobject obj, jlong nativeMapViewPtr, jint width, jint height) { @@ -1440,7 +1440,7 @@ extern "C" JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { {"nativePause", "(J)V", reinterpret_cast<void *>(&nativePause)}, {"nativeResume", "(J)V", reinterpret_cast<void *>(&nativeResume)}, {"nativeUpdate", "(J)V", reinterpret_cast<void *>(&nativeUpdate)}, - {"nativeOnInvalidate", "(JZ)V", reinterpret_cast<void *>(&nativeOnInvalidate)}, + {"nativeOnInvalidate", "(J)V", reinterpret_cast<void *>(&nativeOnInvalidate)}, {"nativeViewResize", "(JII)V", reinterpret_cast<void *>(static_cast<void JNICALL ( *)(JNIEnv *, jobject, jlong, jint, jint)>(&nativeViewResize))}, diff --git a/android/cpp/native_map_view.cpp b/android/cpp/native_map_view.cpp index 9a24bddfe5..d0581212df 100644 --- a/android/cpp/native_map_view.cpp +++ b/android/cpp/native_map_view.cpp @@ -761,7 +761,7 @@ void NativeMapView::updateFps() { env = nullptr; } -void NativeMapView::onInvalidate(bool inProgress) { +void NativeMapView::onInvalidate() { mbgl::Log::Debug(mbgl::Event::Android, "NativeMapView::onInvalidate()"); const bool dirty = !clean.test_and_set(); @@ -776,10 +776,8 @@ void NativeMapView::onInvalidate(bool inProgress) { map.setSourceTileCacheSize(cacheSize); - const bool needsRerender = map.renderSync(); - if (!inProgress) { - map.nudgeTransitions(needsRerender); - } + map.renderSync(); + map.nudgeTransitions(); } } diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java index 473f33a1ad..1ecf7f11bd 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java @@ -1285,8 +1285,7 @@ public class MapView extends SurfaceView { post(new Runnable() { @Override public void run() { - boolean inProgress = mRotateGestureDetector.isInProgress() || mScaleGestureDetector.isInProgress(); - mNativeMapView.invalidate(inProgress); + mNativeMapView.invalidate(); } }); } diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/NativeMapView.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/NativeMapView.java index cc65de52f4..774c20a054 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/NativeMapView.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/NativeMapView.java @@ -96,8 +96,8 @@ class NativeMapView { nativeUpdate(mNativeMapViewPtr); } - public void invalidate(boolean inProgress) { - nativeOnInvalidate(mNativeMapViewPtr, inProgress); + public void invalidate() { + nativeOnInvalidate(mNativeMapViewPtr); } public void resizeView(int width, int height) { @@ -463,7 +463,7 @@ class NativeMapView { private native void nativeUpdate(long nativeMapViewPtr); - private native void nativeOnInvalidate(long nativeMapViewPtr, boolean inProgress); + private native void nativeOnInvalidate(long nativeMapViewPtr); private native void nativeViewResize(long nativeMapViewPtr, int width, int height); |