summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java
diff options
context:
space:
mode:
authorŁukasz Paczos <lukas.paczos@gmail.com>2018-10-26 11:55:50 +0200
committerŁukasz Paczos <lukasz.paczos@mapbox.com>2018-10-26 13:17:39 +0200
commit5a6d5ea311f81f6015d957e5a0c9eaa27a18a921 (patch)
treec53ea221e7671efd7542a5a58c95ccd6e7a1fb5d /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java
parent7a9461a8d439458b18656ecfb839923adc5f0e9b (diff)
downloadqtlocation-mapboxgl-5a6d5ea311f81f6015d957e5a0c9eaa27a18a921.tar.gz
[android] reworks MapCallback to execute correctly when a new style is requested before the map is initialized
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java34
1 files changed, 21 insertions, 13 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java
index f8ea597554..379f67aa7a 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapChangeReceiver.java
@@ -1,22 +1,30 @@
package com.mapbox.mapboxsdk.maps;
-import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.CopyOnWriteArrayList;
class MapChangeReceiver implements NativeMapView.StateCallback {
- private final List<MapView.OnCameraWillChangeListener> onCameraWillChangeListenerList = new ArrayList<>();
- private final List<MapView.OnCameraIsChangingListener> onCameraIsChangingListenerList = new ArrayList<>();
- private final List<MapView.OnCameraDidChangeListener> onCameraDidChangeListenerList = new ArrayList<>();
- private final List<MapView.OnWillStartLoadingMapListener> onWillStartLoadingMapListenerList = new ArrayList<>();
- private final List<MapView.OnDidFinishLoadingMapListener> onDidFinishLoadingMapListenerList = new ArrayList<>();
- private final List<MapView.OnDidFailLoadingMapListener> onDidFailLoadingMapListenerList = new ArrayList<>();
- private final List<MapView.OnWillStartRenderingFrameListener> onWillStartRenderingFrameList = new ArrayList<>();
- private final List<MapView.OnDidFinishRenderingFrameListener> onDidFinishRenderingFrameList = new ArrayList<>();
- private final List<MapView.OnWillStartRenderingMapListener> onWillStartRenderingMapListenerList = new ArrayList<>();
- private final List<MapView.OnDidFinishRenderingMapListener> onDidFinishRenderingMapListenerList = new ArrayList<>();
- private final List<MapView.OnDidFinishLoadingStyleListener> onDidFinishLoadingStyleListenerList = new ArrayList<>();
- private final List<MapView.OnSourceChangedListener> onSourceChangedListenerList = new ArrayList<>();
+ private final List<MapView.OnCameraWillChangeListener> onCameraWillChangeListenerList = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnCameraIsChangingListener> onCameraIsChangingListenerList = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnCameraDidChangeListener> onCameraDidChangeListenerList = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnWillStartLoadingMapListener> onWillStartLoadingMapListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnDidFinishLoadingMapListener> onDidFinishLoadingMapListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnDidFailLoadingMapListener> onDidFailLoadingMapListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnWillStartRenderingFrameListener> onWillStartRenderingFrameList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnDidFinishRenderingFrameListener> onDidFinishRenderingFrameList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnWillStartRenderingMapListener> onWillStartRenderingMapListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnDidFinishRenderingMapListener> onDidFinishRenderingMapListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnDidFinishLoadingStyleListener> onDidFinishLoadingStyleListenerList
+ = new CopyOnWriteArrayList<>();
+ private final List<MapView.OnSourceChangedListener> onSourceChangedListenerList = new CopyOnWriteArrayList<>();
@Override
public void onCameraWillChange(boolean animated) {