diff options
author | Tobrun <tobrun@mapbox.com> | 2018-04-10 11:10:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-10 11:10:14 +0200 |
commit | c2a78d0d72ec369342b202e861a04a47b4f0c69f (patch) | |
tree | e9164aa1dbc64f169e98fec391607c4d617d14fd /platform/android/src/map_renderer.cpp | |
parent | 44ce5ab08792df5f38560016ed3d41712e8025d0 (diff) | |
download | qtlocation-mapboxgl-c2a78d0d72ec369342b202e861a04a47b4f0c69f.tar.gz |
[android] - add paused state to map renderer, don't render snapshot when paused (#11358)
Diffstat (limited to 'platform/android/src/map_renderer.cpp')
-rw-r--r-- | platform/android/src/map_renderer.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/platform/android/src/map_renderer.cpp b/platform/android/src/map_renderer.cpp index 2440ac93ef..f7e16b7091 100644 --- a/platform/android/src/map_renderer.cpp +++ b/platform/android/src/map_renderer.cpp @@ -136,7 +136,7 @@ void MapRenderer::render(JNIEnv&) { renderer->render(*params); // Deliver the snapshot if requested - if (snapshotCallback) { + if (snapshotCallback && !paused) { snapshotCallback->operator()(backend->readFramebuffer()); snapshotCallback.reset(); } @@ -174,6 +174,14 @@ void MapRenderer::onSurfaceChanged(JNIEnv&, jint width, jint height) { requestRender(); } +void MapRenderer::onResume(JNIEnv&) { + paused = false; +} + +void MapRenderer::onPause(JNIEnv&) { + paused = true; +} + // Static methods // jni::Class<MapRenderer> MapRenderer::javaClass; @@ -192,7 +200,11 @@ void MapRenderer::registerNative(jni::JNIEnv& env) { METHOD(&MapRenderer::onSurfaceCreated, "nativeOnSurfaceCreated"), METHOD(&MapRenderer::onSurfaceChanged, - "nativeOnSurfaceChanged")); + "nativeOnSurfaceChanged"), + METHOD(&MapRenderer::onResume, + "nativeOnResume"), + METHOD(&MapRenderer::onPause, + "nativeOnPause")); } MapRenderer& MapRenderer::getNativePeer(JNIEnv& env, jni::Object<MapRenderer> jObject) { |