diff options
author | Leith Bade <leith@mapbox.com> | 2015-09-22 16:23:39 +1000 |
---|---|---|
committer | Leith Bade <leith@mapbox.com> | 2015-09-22 16:23:39 +1000 |
commit | feae692dbaefa51b893528a31139fb8282b3e889 (patch) | |
tree | cb3626805be662de444f153b7912fff388507670 /android | |
parent | 71cde640a99d351371179f48f78f8315f0fdd160 (diff) | |
download | qtlocation-mapboxgl-feae692dbaefa51b893528a31139fb8282b3e889.tar.gz |
Fix freezing on Android when rotating
Fixes #1941
Diffstat (limited to 'android')
3 files changed, 8 insertions, 9 deletions
diff --git a/android/cpp/native_map_view.cpp b/android/cpp/native_map_view.cpp index 9ffb083ec5..02228d85b6 100644 --- a/android/cpp/native_map_view.cpp +++ b/android/cpp/native_map_view.cpp @@ -699,6 +699,11 @@ void NativeMapView::updateFps() { void NativeMapView::onInvalidate() { mbgl::Log::Debug(mbgl::Event::Android, "NativeMapView::onInvalidate()"); + if (map.isPaused()) { + mbgl::Log::Debug(mbgl::Event::Android, "Not rendering as map is paused"); + return; + } + const bool dirty = !clean.test_and_set(); if (dirty) { float zoomFactor = map.getMaxZoom() - map.getMinZoom() + 1; 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 6be20990a2..b4eece5ec8 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 @@ -1009,14 +1009,6 @@ public class MapView extends FrameLayout implements LocationListener { mNativeMapView.resizeFramebuffer(width, height); } - // Called when we need to redraw the view - // This is called before our view is first visible to prevent an initial - // flicker (see Android SDK documentation) - /*@Override - public void surfaceRedrawNeeded(SurfaceHolder holder) { - mNativeMapView.update(); - }*/ // TODO call update somewhere? - // Not used @Override public void onSurfaceTextureUpdated (SurfaceTexture surface) { @@ -1796,7 +1788,6 @@ public class MapView extends FrameLayout implements LocationListener { }); } - /** * Defines callback for events OnMapChange */ diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java index eb5d891cd5..2f9b374e24 100644 --- a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java +++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java @@ -177,12 +177,14 @@ public class MainActivity extends AppCompatActivity { @Override protected void onStart() { super.onStart(); + mMapView.onStart(); } @Override protected void onStop() { super.onStop(); + mMapView.onStop(); } @@ -205,6 +207,7 @@ public class MainActivity extends AppCompatActivity { @Override protected void onDestroy() { super.onDestroy(); + mMapView.onDestroy(); } |