From f1af8453ac6aebb960aaff4874255a4650c1516b Mon Sep 17 00:00:00 2001 From: "Aswin.K.V" Date: Wed, 29 Apr 2020 10:02:03 +0530 Subject: [PATCH 1/4] added getpoint to support projection method pointForMeters in iOS. --- .../google_maps_flutter_platform_interface/CHANGELOG.md | 4 ++++ .../method_channel/method_channel_google_maps_flutter.dart | 7 +++++++ .../platform_interface/google_maps_flutter_platform.dart | 5 +++++ .../google_maps_flutter_platform_interface/pubspec.yaml | 2 +- 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md index 54c2ab5338f1..250300ac027a 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.2 + +* Support projection method pointForMeters, to get the distance in meters to content size from the specified LatLng in the map for iOS. + ## 1.0.1 * Initial open source release. diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart index edbc51ab5afd..be215d6c15ac 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart @@ -437,6 +437,13 @@ class MethodChannelGoogleMapsFlutter extends GoogleMapsFlutterPlatform { return channel(mapId).invokeMethod('map#getZoomLevel'); } + /// Converts a distance in meters to content size. + Future getPoint(double meters, LatLng latLng, {@required int mapId}) { + assert(meters != null && latLng != null); + return channel(mapId).invokeMethod('map#getPoint', + {"meter": meters, "location": latLng.toJson()}); + } + /// Returns the image bytes of the map @override Future takeSnapshot({ diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart index b89d3420c68e..3f7d430ccb5d 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart @@ -239,6 +239,11 @@ abstract class GoogleMapsFlutterPlatform extends PlatformInterface { throw UnimplementedError('getZoomLevel() has not been implemented.'); } + /// Converts a distance in meters to content size. + Future getPoint(double meters, LatLng latLng, {@required int mapId}) { + throw UnimplementedError('getPoint() has not been implemented.'); + } + /// Returns the image bytes of the map Future takeSnapshot({ @required int mapId, diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml b/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml index 346d96050166..3241590fe879 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml @@ -3,7 +3,7 @@ description: A common platform interface for the google_maps_flutter plugin. homepage: https://github.com/flutter/plugins/tree/master/packages/google_maps_flutter/google_maps_flutter_platform_interface # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 1.0.1 +version: 1.0.2 dependencies: flutter: From 4ec34a11fd805126eb24dd0944d493c8605b04c1 Mon Sep 17 00:00:00 2001 From: "Aswin.K.V" Date: Sat, 2 May 2020 10:19:55 +0530 Subject: [PATCH 2/4] method renamed to getPointsForMeters to closely follow native API --- .../method_channel/method_channel_google_maps_flutter.dart | 4 ++-- .../src/platform_interface/google_maps_flutter_platform.dart | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart index be215d6c15ac..59f69a9b0c73 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart @@ -438,9 +438,9 @@ class MethodChannelGoogleMapsFlutter extends GoogleMapsFlutterPlatform { } /// Converts a distance in meters to content size. - Future getPoint(double meters, LatLng latLng, {@required int mapId}) { + Future getPointsForMeters(double meters, LatLng latLng, {@required int mapId}) { assert(meters != null && latLng != null); - return channel(mapId).invokeMethod('map#getPoint', + return channel(mapId).invokeMethod('projection#getPointsForMeters', {"meter": meters, "location": latLng.toJson()}); } diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart index 3f7d430ccb5d..cde789b13067 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart @@ -240,8 +240,8 @@ abstract class GoogleMapsFlutterPlatform extends PlatformInterface { } /// Converts a distance in meters to content size. - Future getPoint(double meters, LatLng latLng, {@required int mapId}) { - throw UnimplementedError('getPoint() has not been implemented.'); + Future getPointsForMeters(double meters, LatLng latLng, {@required int mapId}) { + throw UnimplementedError('getPointsForMeters() has not been implemented.'); } /// Returns the image bytes of the map From 0a597002a92933fd271ba2ab753c74761e66e035 Mon Sep 17 00:00:00 2001 From: "Aswin.K.V" Date: Sat, 2 May 2020 10:31:00 +0530 Subject: [PATCH 3/4] formatted the dart files. --- .../src/method_channel/method_channel_google_maps_flutter.dart | 3 ++- .../src/platform_interface/google_maps_flutter_platform.dart | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart index 59f69a9b0c73..db0cd38d1c1b 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/method_channel/method_channel_google_maps_flutter.dart @@ -438,7 +438,8 @@ class MethodChannelGoogleMapsFlutter extends GoogleMapsFlutterPlatform { } /// Converts a distance in meters to content size. - Future getPointsForMeters(double meters, LatLng latLng, {@required int mapId}) { + Future getPointsForMeters(double meters, LatLng latLng, + {@required int mapId}) { assert(meters != null && latLng != null); return channel(mapId).invokeMethod('projection#getPointsForMeters', {"meter": meters, "location": latLng.toJson()}); diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart index cde789b13067..f2c7c07b62cb 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/lib/src/platform_interface/google_maps_flutter_platform.dart @@ -240,7 +240,8 @@ abstract class GoogleMapsFlutterPlatform extends PlatformInterface { } /// Converts a distance in meters to content size. - Future getPointsForMeters(double meters, LatLng latLng, {@required int mapId}) { + Future getPointsForMeters(double meters, LatLng latLng, + {@required int mapId}) { throw UnimplementedError('getPointsForMeters() has not been implemented.'); } From 1f23ead456ce3c1af24e95248efe6f9f8bb94a5d Mon Sep 17 00:00:00 2001 From: "Aswin.K.V" Date: Fri, 15 May 2020 10:21:21 +0530 Subject: [PATCH 4/4] bumped minor version. --- .../google_maps_flutter_platform_interface/CHANGELOG.md | 4 ++++ .../google_maps_flutter_platform_interface/pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md index eca5c914a603..ba44556d8d9f 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.1.0 + +* Support projection method pointForMeters, to get the distance in meters to content size from the specified LatLng in the map for iOS. + ## 1.0.2 * Update lower bound of dart dependency to 2.1.0. diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml b/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml index b28b7f47652d..920701f6f409 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/pubspec.yaml @@ -3,7 +3,7 @@ description: A common platform interface for the google_maps_flutter plugin. homepage: https://github.com/flutter/plugins/tree/master/packages/google_maps_flutter/google_maps_flutter_platform_interface # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 1.0.2 +version: 1.1.0 dependencies: flutter: