summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2016-12-17 20:25:16 +0100
committerGitHub <noreply@github.com>2016-12-17 20:25:16 +0100
commit83f1350747be9a60eb0275bd1a8dcb8e5f027abe (patch)
tree3027bd324d9785ec06356383363a0bdea282fb71 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java
parent20b958301eb208fe9ed0ae8edfb14b6f3741d8f2 (diff)
downloadqtlocation-mapboxgl-83f1350747be9a60eb0275bd1a8dcb8e5f027abe.tar.gz
MapboxAccountManager refactor, removal deprecated accesstoken (#7462)
* [android] - move object ownership, move depenencies and responsibility. * [android] - MapboxAccountManager refactor, removal deprecated accesstoken.
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java47
1 files changed, 21 insertions, 26 deletions
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<Marker> selectedMarkers = new ArrayList<>();
private MapboxMap mapboxMap;
-
- private HashMap<MarkerView, MarkerViewManager.OnMarkerViewAddedListener> 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<Marker> addMarkers(@NonNull List<? extends BaseMarkerOptions> markerOptionsList, @NonNull MapboxMap mapboxMap) {
int count = markerOptionsList.size();
List<Marker> 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<Marker> getMarkersInRect(@NonNull RectF rectangle) {
+ List<Marker> 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<MarkerView> getMarkerViewsInRect(@NonNull RectF rectangle) {
+ List<MarkerView> getMarkerViewsInRect(@NonNull RectF rectangle) {
float pixelRatio = nativeMapView.getPixelRatio();
RectF rect = new RectF(rectangle.left / pixelRatio,
rectangle.top / pixelRatio,