diff --git a/packages/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/CHANGELOG.md index 72e459b13453..1efbd869633a 100644 --- a/packages/google_maps_flutter/CHANGELOG.md +++ b/packages/google_maps_flutter/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.5.20+5 + +* Allow (de-)serialization of CameraPosition + ## 0.5.20+4 * Marker drag event diff --git a/packages/google_maps_flutter/lib/src/camera.dart b/packages/google_maps_flutter/lib/src/camera.dart index ceb4289ca663..78d624b76f50 100644 --- a/packages/google_maps_flutter/lib/src/camera.dart +++ b/packages/google_maps_flutter/lib/src/camera.dart @@ -51,14 +51,13 @@ class CameraPosition { /// will be silently clamped to the supported range. final double zoom; - dynamic _toMap() => { + dynamic toMap() => { 'bearing': bearing, 'target': target._toJson(), 'tilt': tilt, 'zoom': zoom, }; - @visibleForTesting static CameraPosition fromMap(dynamic json) { if (json == null) { return null; @@ -98,7 +97,7 @@ class CameraUpdate { /// Returns a camera update that moves the camera to the specified position. static CameraUpdate newCameraPosition(CameraPosition cameraPosition) { return CameraUpdate._( - ['newCameraPosition', cameraPosition._toMap()], + ['newCameraPosition', cameraPosition.toMap()], ); } diff --git a/packages/google_maps_flutter/lib/src/google_map.dart b/packages/google_maps_flutter/lib/src/google_map.dart index 11a83905a74e..5c802a2f052f 100644 --- a/packages/google_maps_flutter/lib/src/google_map.dart +++ b/packages/google_maps_flutter/lib/src/google_map.dart @@ -192,7 +192,7 @@ class _GoogleMapState extends State { @override Widget build(BuildContext context) { final Map creationParams = { - 'initialCameraPosition': widget.initialCameraPosition?._toMap(), + 'initialCameraPosition': widget.initialCameraPosition?.toMap(), 'options': _googleMapOptions.toMap(), 'markersToAdd': _serializeMarkerSet(widget.markers), 'polygonsToAdd': _serializePolygonSet(widget.polygons), diff --git a/packages/google_maps_flutter/pubspec.yaml b/packages/google_maps_flutter/pubspec.yaml index 0bcf6dee186a..b99203fafbd6 100644 --- a/packages/google_maps_flutter/pubspec.yaml +++ b/packages/google_maps_flutter/pubspec.yaml @@ -2,7 +2,7 @@ name: google_maps_flutter description: A Flutter plugin for integrating Google Maps in iOS and Android applications. author: Flutter Team homepage: https://github.com/flutter/plugins/tree/master/packages/google_maps_flutter -version: 0.5.20+4 +version: 0.5.20+5 dependencies: flutter: