Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[google_maps_flutter] Add marker clustering support - iOS implementation #6186

Conversation

jokerttu
Copy link
Contributor

@jokerttu jokerttu commented Feb 23, 2024

This PR introduces support for marker clustering for iOS platform

An example usabe is available in the example application at ./packages/google_maps_flutter/google_maps_flutter_ios/example/ios12 on the page Manage clustering

This is prequel PR for: #4319
and sequel PR for: #6158

Containing only changes to google_maps_flutter_ios package.

Follow up PR will hold the app-facing plugin implementation.

Linked issue: flutter/flutter#26863

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@jokerttu jokerttu changed the title [google_maps_flutter_ios] Add marker clustering support [google_maps_flutter] Add marker clustering support - iOS implementation Feb 29, 2024
@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch 3 times, most recently from cc42eb1 to 0f29034 Compare March 1, 2024 10:19
@jokerttu jokerttu marked this pull request as ready for review March 1, 2024 10:35
@jokerttu jokerttu requested a review from hellohuanlin as a code owner March 1, 2024 10:35
Copy link
Contributor

@hellohuanlin hellohuanlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code looks quite clean. But I feel I don't know enough about clusters to stamp it just yet. Could you also invite the reviewers from your previous PR?

@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch 2 times, most recently from 00b59e4 to 1669b76 Compare March 7, 2024 12:22
@jokerttu jokerttu requested a review from hellohuanlin March 7, 2024 12:22
Copy link
Contributor

@hellohuanlin hellohuanlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add some unit tests on native side?

@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch 2 times, most recently from b0e9ada to b4eaeba Compare April 3, 2024 12:09
@jokerttu
Copy link
Contributor Author

jokerttu commented Apr 3, 2024

@hellohuanlin

can you add some unit tests on native side?

Added some native unit tests

@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch from b4eaeba to 2c326e8 Compare April 8, 2024 08:12
@jokerttu jokerttu requested a review from cbracken as a code owner April 8, 2024 08:12
@jokerttu jokerttu requested a review from hellohuanlin April 8, 2024 08:55
Copy link
Contributor

@hellohuanlin hellohuanlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding those tests. The overall code looks clean.

@cbracken feel free to give it another pass (if you see fit) since you are the new owner. Otherwise I think it's good to land.

@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch 2 times, most recently from e382d51 to 9cc025d Compare April 25, 2024 12:39
@jmagman
Copy link
Member

jmagman commented May 8, 2024

@jokerttu is this ready for re-review?

@jokerttu
Copy link
Contributor Author

@jokerttu is this ready for re-review?

@jmagman not yet, this is waiting new release of Google-Maps-iOS-Utils library to have support latest Google Maps SDK versions. See discussion here: #6186 (comment)

@stuartmorgan
Copy link
Contributor

FYI I have raised the blocking issue internally with the Google Maps team.

@stuartmorgan stuartmorgan added the triage-ios Should be looked at in iOS triage label Jun 3, 2024
@jokerttu
Copy link
Contributor Author

jokerttu commented Aug 6, 2024

@stuartmorgan
Fixed the issues mentioned in the review.
Rebased and fixed conflicts with heatmap support.

@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch from 12face8 to 21dc4ef Compare August 6, 2024 18:27
@jokerttu jokerttu force-pushed the feature/google_maps_flutter_ios_marker_clustering branch from 21dc4ef to b25170b Compare August 6, 2024 18:34
@jokerttu jokerttu requested a review from stuartmorgan August 6, 2024 18:34
Copy link
Contributor

@stuartmorgan stuartmorgan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I missed a couple of things; once those are done this will be good to land.

@jokerttu jokerttu requested a review from stuartmorgan August 6, 2024 19:31
@jokerttu jokerttu added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 6, 2024
Copy link
Contributor

auto-submit bot commented Aug 6, 2024

auto label is removed for flutter/packages/6186, due to This PR has not met approval requirements for merging. Changes were requested by {stuartmorgan}, please make the needed changes and resubmit this PR.
The PR author is a member of flutter-hackers and needs 0 more review(s) in order to merge this PR.

  • Merge guidelines: A PR needs at least one approved review if the author is already part of flutter-hackers or two member reviews if the author is not a flutter-hacker before re-applying the autosubmit label. Reviewers: If you left a comment approving, please use the "approve" review action instead.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Aug 6, 2024
@jokerttu
Copy link
Contributor Author

jokerttu commented Aug 6, 2024

@stuartmorgan seems like I need separate approval from you before I can add autosubmit label.

Copy link
Contributor

@stuartmorgan stuartmorgan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Sorry, I should have pressed the other button last time to avoid that.

@stuartmorgan stuartmorgan added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 6, 2024
@auto-submit auto-submit bot merged commit ec92d7d into flutter:main Aug 6, 2024
76 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 7, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 7, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 7, 2024
flutter/packages@551bde5...5cc0a01

2024-08-07 [email protected] [ci] Update repository for the release of Flutter 3.24 (flutter/packages#7331)
2024-08-07 [email protected] Roll Flutter (stable) from b0850be to 80c2e84 (1397 revisions) (flutter/packages#7322)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump actions/upload-artifact from 4.3.5 to 4.3.6 (flutter/packages#7330)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com [pigeon]: Bump io.mockk:mockk from 1.13.7 to 1.13.12 in /packages/pigeon/platform_tests/test_plugin/android (flutter/packages#7189)
2024-08-07 [email protected] [google_maps_flutter] Marker clustering support (flutter/packages#4319)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.15 to 3.26.0 (flutter/packages#7329)
2024-08-07 [email protected] Manual roll Flutter from 1dd7141 to 0a7f8af (23 revisions) (flutter/packages#7328)
2024-08-06 [email protected] [image_picker_ios] Update image picker UI test query for iOS 18 (flutter/packages#7325)
2024-08-06 [email protected] [google_maps_flutter] Add marker clustering support - iOS implementation (flutter/packages#6186)
2024-08-06 [email protected] [url_launcher] launchUrl always returns true for valid schemes on the web. (flutter/packages#7229)
2024-08-06 [email protected] [google_maps_flutter] Add heatmap support (flutter/packages#3257)
2024-08-06 [email protected] [local_auth] Endorse macOS (flutter/packages#7274)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
TytaniumDev pushed a commit to TytaniumDev/flutter that referenced this pull request Aug 7, 2024
flutter/packages@551bde5...5cc0a01

2024-08-07 [email protected] [ci] Update repository for the release of Flutter 3.24 (flutter/packages#7331)
2024-08-07 [email protected] Roll Flutter (stable) from b0850be to 80c2e84 (1397 revisions) (flutter/packages#7322)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump actions/upload-artifact from 4.3.5 to 4.3.6 (flutter/packages#7330)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com [pigeon]: Bump io.mockk:mockk from 1.13.7 to 1.13.12 in /packages/pigeon/platform_tests/test_plugin/android (flutter/packages#7189)
2024-08-07 [email protected] [google_maps_flutter] Marker clustering support (flutter/packages#4319)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.15 to 3.26.0 (flutter/packages#7329)
2024-08-07 [email protected] Manual roll Flutter from 1dd7141 to 0a7f8af (23 revisions) (flutter/packages#7328)
2024-08-06 [email protected] [image_picker_ios] Update image picker UI test query for iOS 18 (flutter/packages#7325)
2024-08-06 [email protected] [google_maps_flutter] Add marker clustering support - iOS implementation (flutter/packages#6186)
2024-08-06 [email protected] [url_launcher] launchUrl always returns true for valid schemes on the web. (flutter/packages#7229)
2024-08-06 [email protected] [google_maps_flutter] Add heatmap support (flutter/packages#3257)
2024-08-06 [email protected] [local_auth] Endorse macOS (flutter/packages#7274)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
DBowen33 pushed a commit to DBowen33/flutter that referenced this pull request Aug 16, 2024
flutter/packages@551bde5...5cc0a01

2024-08-07 [email protected] [ci] Update repository for the release of Flutter 3.24 (flutter/packages#7331)
2024-08-07 [email protected] Roll Flutter (stable) from b0850be to 80c2e84 (1397 revisions) (flutter/packages#7322)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump actions/upload-artifact from 4.3.5 to 4.3.6 (flutter/packages#7330)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com [pigeon]: Bump io.mockk:mockk from 1.13.7 to 1.13.12 in /packages/pigeon/platform_tests/test_plugin/android (flutter/packages#7189)
2024-08-07 [email protected] [google_maps_flutter] Marker clustering support (flutter/packages#4319)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.15 to 3.26.0 (flutter/packages#7329)
2024-08-07 [email protected] Manual roll Flutter from 1dd7141 to 0a7f8af (23 revisions) (flutter/packages#7328)
2024-08-06 [email protected] [image_picker_ios] Update image picker UI test query for iOS 18 (flutter/packages#7325)
2024-08-06 [email protected] [google_maps_flutter] Add marker clustering support - iOS implementation (flutter/packages#6186)
2024-08-06 [email protected] [url_launcher] launchUrl always returns true for valid schemes on the web. (flutter/packages#7229)
2024-08-06 [email protected] [google_maps_flutter] Add heatmap support (flutter/packages#3257)
2024-08-06 [email protected] [local_auth] Endorse macOS (flutter/packages#7274)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Buchimi pushed a commit to Buchimi/flutter that referenced this pull request Sep 2, 2024
flutter/packages@551bde5...5cc0a01

2024-08-07 [email protected] [ci] Update repository for the release of Flutter 3.24 (flutter/packages#7331)
2024-08-07 [email protected] Roll Flutter (stable) from b0850be to 80c2e84 (1397 revisions) (flutter/packages#7322)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump actions/upload-artifact from 4.3.5 to 4.3.6 (flutter/packages#7330)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com [pigeon]: Bump io.mockk:mockk from 1.13.7 to 1.13.12 in /packages/pigeon/platform_tests/test_plugin/android (flutter/packages#7189)
2024-08-07 [email protected] [google_maps_flutter] Marker clustering support (flutter/packages#4319)
2024-08-07 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.15 to 3.26.0 (flutter/packages#7329)
2024-08-07 [email protected] Manual roll Flutter from 1dd7141 to 0a7f8af (23 revisions) (flutter/packages#7328)
2024-08-06 [email protected] [image_picker_ios] Update image picker UI test query for iOS 18 (flutter/packages#7325)
2024-08-06 [email protected] [google_maps_flutter] Add marker clustering support - iOS implementation (flutter/packages#6186)
2024-08-06 [email protected] [url_launcher] launchUrl always returns true for valid schemes on the web. (flutter/packages#7229)
2024-08-06 [email protected] [google_maps_flutter] Add heatmap support (flutter/packages#3257)
2024-08-06 [email protected] [local_auth] Endorse macOS (flutter/packages#7274)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
@jokerttu jokerttu deleted the feature/google_maps_flutter_ios_marker_clustering branch September 9, 2024 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: google_maps_flutter platform-ios
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants