summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java')
-rwxr-xr-xplatform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java19
1 files changed, 16 insertions, 3 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
index a5f8be788c..c2aed13ddd 100755
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
@@ -65,9 +65,12 @@ final class NativeMapView implements NativeMap {
// Device density
private final float pixelRatio;
- // Flag to indicating destroy was called
+ // Flag to indicate destroy was called
private boolean destroyed = false;
+ // Flag to indicate surface was destroyed
+ private boolean hasSurface = false;
+
// Holds the pointer to JNI NativeMapView
@Keep
private long nativePtr = 0;
@@ -890,7 +893,7 @@ final class NativeMapView implements NativeMap {
public List<Feature> queryRenderedFeatures(@NonNull PointF coordinates,
@Nullable String[] layerIds,
@Nullable Expression filter) {
- if (checkState("queryRenderedFeatures")) {
+ if (checkState("queryRenderedFeatures") || !hasSurface) {
return new ArrayList<>();
}
Feature[] features = nativeQueryRenderedFeaturesForPoint(coordinates.x / pixelRatio,
@@ -903,7 +906,7 @@ final class NativeMapView implements NativeMap {
public List<Feature> queryRenderedFeatures(@NonNull RectF coordinates,
@Nullable String[] layerIds,
@Nullable Expression filter) {
- if (checkState("queryRenderedFeatures")) {
+ if (checkState("queryRenderedFeatures") || !hasSurface) {
return new ArrayList<>();
}
Feature[] features = nativeQueryRenderedFeaturesForBox(
@@ -1418,6 +1421,16 @@ final class NativeMapView implements NativeMap {
return destroyed;
}
+ @Override
+ public boolean hasSurface() {
+ return hasSurface;
+ }
+
+ @Override
+ public void setHasSurface(boolean hasSurface) {
+ this.hasSurface = hasSurface;
+ }
+
public interface ViewCallback {
int getWidth();