From 83f1350747be9a60eb0275bd1a8dcb8e5f027abe Mon Sep 17 00:00:00 2001 From: Tobrun Date: Sat, 17 Dec 2016 20:25:16 +0100 Subject: MapboxAccountManager refactor, removal deprecated accesstoken (#7462) * [android] - move object ownership, move depenencies and responsibility. * [android] - MapboxAccountManager refactor, removal deprecated accesstoken. --- .../mapbox/mapboxsdk/maps/AnnotationManager.java | 47 ++++++++++------------ 1 file changed, 21 insertions(+), 26 deletions(-) (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java') diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java index bffcf2fa2f..17317522a3 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java @@ -20,7 +20,6 @@ import com.mapbox.mapboxsdk.annotations.PolylineOptions; import java.util.ArrayList; import java.util.Collections; -import java.util.HashMap; import java.util.List; /** @@ -45,8 +44,6 @@ class AnnotationManager { private final List selectedMarkers = new ArrayList<>(); private MapboxMap mapboxMap; - - private HashMap markerMap = new HashMap<>(); private MapboxMap.OnMarkerClickListener onMarkerClickListener; AnnotationManager(NativeMapView view, MapView mapView, MarkerViewManager markerViewManager) { @@ -68,6 +65,11 @@ class AnnotationManager { return this; } + void update() { + markerViewManager.scheduleViewMarkerInvalidation(); + infoWindowManager.update(); + } + // // Annotations // @@ -157,6 +159,15 @@ class AnnotationManager { // Markers // + Marker addMarker(@NonNull BaseMarkerOptions markerOptions, @NonNull MapboxMap mapboxMap) { + Marker marker = prepareMarker(markerOptions); + long id = nativeMapView != null ? nativeMapView.addMarker(marker) : 0; + marker.setMapboxMap(mapboxMap); + marker.setId(id); + annotations.put(id, marker); + return marker; + } + List addMarkers(@NonNull List markerOptionsList, @NonNull MapboxMap mapboxMap) { int count = markerOptionsList.size(); List markers = new ArrayList<>(count); @@ -202,26 +213,8 @@ class AnnotationManager { return marker; } - Marker addMarker(@NonNull BaseMarkerOptions markerOptions, @NonNull MapboxMap mapboxMap) { - Marker marker = prepareMarker(markerOptions); - long id = nativeMapView != null ? nativeMapView.addMarker(marker) : 0; - marker.setMapboxMap(mapboxMap); - marker.setId(id); - annotations.put(id, marker); - return marker; - } - - MarkerView addMarker(@NonNull BaseMarkerViewOptions markerOptions, @NonNull MapboxMap mapboxMap) { - MarkerView marker = prepareViewMarker(markerOptions); - marker.setMapboxMap(mapboxMap); - long id = nativeMapView.addMarker(marker); - marker.setId(id); - annotations.put(id, marker); - return marker; - } - - public MarkerView addMarker(@NonNull BaseMarkerViewOptions markerOptions, @NonNull MapboxMap mapboxMap, - final MarkerViewManager.OnMarkerViewAddedListener onMarkerViewAddedListener) { + MarkerView addMarker(@NonNull BaseMarkerViewOptions markerOptions, @NonNull MapboxMap mapboxMap, + @Nullable MarkerViewManager.OnMarkerViewAddedListener onMarkerViewAddedListener) { final MarkerView marker = prepareViewMarker(markerOptions); // add marker to map @@ -230,7 +223,9 @@ class AnnotationManager { marker.setId(id); annotations.put(id, marker); - markerViewManager.addOnMarkerViewAddedListener(marker, onMarkerViewAddedListener); + if (onMarkerViewAddedListener != null) { + markerViewManager.addOnMarkerViewAddedListener(marker, onMarkerViewAddedListener); + } markerViewManager.setWaitingForRenderInvoke(true); return marker; } @@ -362,7 +357,7 @@ class AnnotationManager { return selectedMarkers; } - public List getMarkersInRect(@NonNull RectF rectangle) { + List getMarkersInRect(@NonNull RectF rectangle) { // convert Rectangle to be density depedent float pixelRatio = nativeMapView.getPixelRatio(); RectF rect = new RectF(rectangle.left / pixelRatio, @@ -390,7 +385,7 @@ class AnnotationManager { return new ArrayList<>(annotations); } - public List getMarkerViewsInRect(@NonNull RectF rectangle) { + List getMarkerViewsInRect(@NonNull RectF rectangle) { float pixelRatio = nativeMapView.getPixelRatio(); RectF rect = new RectF(rectangle.left / pixelRatio, rectangle.top / pixelRatio, -- cgit v1.2.1