diff options
author | Tobrun <tobrun@mapbox.com> | 2017-07-20 10:18:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-20 10:18:40 +0200 |
commit | f19c36a4ba9adb6d1288a47252a0189aac5033ce (patch) | |
tree | 3f70baa7a55793ca01aefab4e5803210c6fd9f2c /platform/android/MapboxGLAndroidSDK/src/main/java | |
parent | c5300ebabf6d01a11aca00df5eee350f49b5cbf1 (diff) | |
download | qtlocation-mapboxgl-f19c36a4ba9adb6d1288a47252a0189aac5033ce.tar.gz |
[android] - avoid creating InfoWindow iterator if no InfoWindows are shown (#9477)
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java index 7599b6afa6..0b461d1227 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java @@ -22,7 +22,8 @@ import java.util.List; */ class InfoWindowManager { - private List<InfoWindow> infoWindows; + private final List<InfoWindow> infoWindows = new ArrayList<>(); + private MapboxMap.InfoWindowAdapter infoWindowAdapter; private boolean allowConcurrentMultipleInfoWindows; @@ -30,13 +31,11 @@ class InfoWindowManager { private MapboxMap.OnInfoWindowLongClickListener onInfoWindowLongClickListener; private MapboxMap.OnInfoWindowCloseListener onInfoWindowCloseListener; - InfoWindowManager() { - this.infoWindows = new ArrayList<>(); - } - void update() { - for (InfoWindow infoWindow : infoWindows) { - infoWindow.update(); + if (!infoWindows.isEmpty()) { + for (InfoWindow infoWindow : infoWindows) { + infoWindow.update(); + } } } @@ -56,10 +55,6 @@ class InfoWindowManager { return allowConcurrentMultipleInfoWindows; } - List<InfoWindow> getInfoWindows() { - return infoWindows; - } - boolean isInfoWindowValidForMarker(@NonNull Marker marker) { return !TextUtils.isEmpty(marker.getTitle()) || !TextUtils.isEmpty(marker.getSnippet()); } |