Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 2.11.1

* Fixes handling of Circle updates.

## 2.11.0

* Converts additional platform calls to Pigeon.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
package io.flutter.plugins.googlemaps;

import androidx.annotation.NonNull;
import androidx.annotation.VisibleForTesting;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.model.Circle;
import com.google.android.gms.maps.model.CircleOptions;
Expand All @@ -14,8 +15,7 @@
import java.util.Map;

class CirclesController {

private final Map<String, CircleController> circleIdToController;
@VisibleForTesting final Map<String, CircleController> circleIdToController;
private final Map<String, String> googleMapsCircleIdToDartCircleId;
private final MethodChannel methodChannel;
private final float density;
Expand All @@ -35,7 +35,9 @@ void setGoogleMap(GoogleMap googleMap) {
void addJsonCircles(List<Object> circlesToAdd) {
if (circlesToAdd != null) {
for (Object circleToAdd : circlesToAdd) {
addJsonCircle(circleToAdd);
@SuppressWarnings("unchecked")
Map<String, ?> circleMap = (Map<String, ?>) circleToAdd;
addJsonCircle(circleMap);
}
}
}
Expand All @@ -47,8 +49,8 @@ void addCircles(@NonNull List<Messages.PlatformCircle> circlesToAdd) {
}

void changeCircles(@NonNull List<Messages.PlatformCircle> circlesToChange) {
for (Object circleToChange : circlesToChange) {
changeCircle(circleToChange);
for (Messages.PlatformCircle circleToChange : circlesToChange) {
changeJsonCircle(circleToChange.getJson());
}
}

Expand All @@ -75,7 +77,7 @@ boolean onCircleTap(String googleCircleId) {
return false;
}

private void addJsonCircle(Object circle) {
private void addJsonCircle(Map<String, ?> circle) {
if (circle == null) {
return;
}
Expand All @@ -92,7 +94,7 @@ private void addCircle(String circleId, CircleOptions circleOptions, boolean con
googleMapsCircleIdToDartCircleId.put(circle.getId(), circleId);
}

private void changeCircle(Object circle) {
private void changeJsonCircle(Map<String, ?> circle) {
if (circle == null) {
return;
}
Expand All @@ -103,9 +105,7 @@ private void changeCircle(Object circle) {
}
}

@SuppressWarnings("unchecked")
private static String getCircleId(Object circle) {
Map<String, Object> circleMap = (Map<String, Object>) circle;
return (String) circleMap.get("circleId");
private static String getCircleId(Map<String, ?> circle) {
return (String) circle.get("circleId");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -693,8 +693,7 @@ static void interpretGoogleMapOptions(Object o, GoogleMapOptionsSink sink) {

/** Set the options in the given object to marker options sink. */
static void interpretMarkerOptions(
Object o, MarkerOptionsSink sink, AssetManager assetManager, float density) {
final Map<?, ?> data = toMap(o);
Map<String, ?> data, MarkerOptionsSink sink, AssetManager assetManager, float density) {
final Object alpha = data.get("alpha");
if (alpha != null) {
sink.setAlpha(toFloat(alpha));
Expand Down Expand Up @@ -758,8 +757,7 @@ private static void interpretInfoWindowOptions(
}
}

static String interpretPolygonOptions(Object o, PolygonOptionsSink sink) {
final Map<?, ?> data = toMap(o);
static String interpretPolygonOptions(Map<String, ?> data, PolygonOptionsSink sink) {
final Object consumeTapEvents = data.get("consumeTapEvents");
if (consumeTapEvents != null) {
sink.setConsumeTapEvents(toBoolean(consumeTapEvents));
Expand Down Expand Up @@ -805,8 +803,7 @@ static String interpretPolygonOptions(Object o, PolygonOptionsSink sink) {
}

static String interpretPolylineOptions(
Object o, PolylineOptionsSink sink, AssetManager assetManager, float density) {
final Map<?, ?> data = toMap(o);
Map<String, ?> data, PolylineOptionsSink sink, AssetManager assetManager, float density) {
final Object consumeTapEvents = data.get("consumeTapEvents");
if (consumeTapEvents != null) {
sink.setConsumeTapEvents(toBoolean(consumeTapEvents));
Expand Down Expand Up @@ -859,8 +856,7 @@ static String interpretPolylineOptions(
}
}

static String interpretCircleOptions(Object o, CircleOptionsSink sink) {
final Map<?, ?> data = toMap(o);
static String interpretCircleOptions(Map<String, ?> data, CircleOptionsSink sink) {
final Object consumeTapEvents = data.get("consumeTapEvents");
if (consumeTapEvents != null) {
sink.setConsumeTapEvents(toBoolean(consumeTapEvents));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,9 @@ void setCollection(MarkerManager.Collection markerCollection) {
void addJsonMarkers(List<Object> markersToAdd) {
if (markersToAdd != null) {
for (Object markerToAdd : markersToAdd) {
addJsonMarker(markerToAdd);
@SuppressWarnings("unchecked")
Map<String, ?> markerMap = (Map<String, ?>) markerToAdd;
addJsonMarker(markerMap);
}
}
}
Expand Down Expand Up @@ -186,7 +188,7 @@ public void onClusterItemRendered(MarkerBuilder markerBuilder, Marker marker) {
}
}

private void addJsonMarker(Object marker) {
private void addJsonMarker(Map<String, ?> marker) {
if (marker == null) {
return;
}
Expand Down Expand Up @@ -232,7 +234,7 @@ private void createControllerForMarker(String markerId, Marker marker, boolean c
googleMapsMarkerIdToDartMarkerId.put(marker.getId(), markerId);
}

private void changeJsonMarker(Object marker) {
private void changeJsonMarker(Map<String, ?> marker) {
if (marker == null) {
return;
}
Expand Down Expand Up @@ -264,15 +266,11 @@ private void changeJsonMarker(Object marker) {
}
}

@SuppressWarnings("unchecked")
private static String getMarkerId(Object marker) {
Map<String, Object> markerMap = (Map<String, Object>) marker;
return (String) markerMap.get("markerId");
private static String getMarkerId(Map<String, ?> marker) {
return (String) marker.get("markerId");
}

@SuppressWarnings("unchecked")
private static String getClusterManagerId(Object marker) {
Map<String, Object> markerMap = (Map<String, Object>) marker;
return (String) markerMap.get("clusterManagerId");
private static String getClusterManagerId(Map<String, ?> marker) {
return (String) marker.get("clusterManagerId");
}
}
Loading