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:40:04 +1000 |
commit | d2d3df2a694fd75ce59a2879aa0d4fec2dacff23 (patch) | |
tree | a99aaea7c8efbf4b84dd77fd7eed60d5dd4640a1 /android | |
parent | da691dcbb584f870d396507f65469b68b44afff4 (diff) | |
download | qtlocation-mapboxgl-d2d3df2a694fd75ce59a2879aa0d4fec2dacff23.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 dfbb3ff9dd..a3b53ae37c 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 ed9b7ef066..f81717ae51 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 @@ -176,12 +176,14 @@ public class MainActivity extends AppCompatActivity { @Override protected void onStart() { super.onStart(); + mMapView.onStart(); } @Override protected void onStop() { super.onStop(); + mMapView.onStop(); } @@ -204,6 +206,7 @@ public class MainActivity extends AppCompatActivity { @Override protected void onDestroy() { super.onDestroy(); + mMapView.onDestroy(); } |