[google_maps_flutter] Add support for mapType, fullscreen, and Street View controls on web#11955
Conversation
There was a problem hiding this comment.
Code Review
This pull request adds support for mapTypeControlEnabled, fullscreenControlEnabled, and streetViewControlEnabled on the web platform across the google_maps_flutter, google_maps_flutter_platform_interface, and google_maps_flutter_web packages, along with corresponding unit and integration tests. Feedback from the reviewer highlights the need to update the dependency constraints for google_maps_flutter_platform_interface in the pubspec files of both google_maps_flutter and google_maps_flutter_web to prevent potential compilation failures.
dbcf8af to
ddd2b01
Compare
stuartmorgan-g
left a comment
There was a problem hiding this comment.
Looks good overall; please go ahead and create the first sub-PR with just the platform interface changes.
3c1d893 to
3ef1bf7
Compare
Hi @stuartmorgan-g, I have created the first sub-PR containing just the platform interface changes here: #12191 |
…rolEnabled, fullscreenControlEnabled, and streetViewControlEnabled for web (#12191) *Part of #11955 *Part of: flutter/flutter#104111 **Context**: As suggested in the review - #11955 (review), this is a standalone sub-PR separating out just the platform interface changes. It introduces the necessary configuration flags (`mapTypeControlEnabled`, `fullscreenControlEnabled`, and `streetViewControlEnabled`) to `MapConfiguration` to pave the way for the web implementation. ## Pre-Review Checklist **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
4ccf3e2 to
4769894
Compare
|
@stuartmorgan-g
Note: The local overrides between google_maps_flutter and google_maps_flutter_web are still active in this PR. The PR is ready for your review, have a look thanks! |
|
This PR doesn't need another review until it's ready to land, which is when it's down to just the app-facing package. The next step is to land the next sub-PR, per the process described in the contributing docs. |
|
The last sub-PR should auto-publish shortly, at which point this can be reconciled down to just the app-facing changes for final review and landing. |
…llscreenControlEnabled, and streetViewControlEnabled. (#12254) *Part of #11955, #12191 *Part of: flutter/flutter#104111 **Context**: As suggested in the review - #11955 (review), this is a standalone sub-PR separating out just the google_maps_flutter_web changes. ## Pre-Review Checklist **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
…treetViewControl options
5317408 to
f8441ad
Compare
@stuartmorgan-g It's now ready for final review and landing. |
…llscreenControlEnabled, and streetViewControlEnabled. (flutter#12254) *Part of flutter#11955, flutter#12191 *Part of: flutter/flutter#104111 **Context**: As suggested in the review - flutter#11955 (review), this is a standalone sub-PR separating out just the google_maps_flutter_web changes. ## Pre-Review Checklist **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
… View controls on web (flutter#11955) This PR adds support for mapTypeControlEnabled, fullscreenControlEnabled, and streetViewControlEnabled on Flutter web. Previously, these options were not exposed through the GoogleMap widget and were internally defaulted to false in MapConfiguration. This change propagates these parameters through google_maps_flutter, google_maps_flutter_platform_interface, and google_maps_flutter_web, allowing developers to explicitly enable or disable these controls. To preserve backward compatibility, the existing behavior is maintained by defaulting these options to false when they are not provided by the user. I created a sample app and tested the changes using dependency_overrides. Attaching a video for reference. https://github.com/user-attachments/assets/014a50c4-e6d4-4325-8005-9d5d4b2db076 Fixes flutter/flutter#104111. ## Pre-Review Checklist **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
This PR adds support for mapTypeControlEnabled, fullscreenControlEnabled, and streetViewControlEnabled on Flutter web.
Previously, these options were not exposed through the GoogleMap widget and were internally defaulted to false in MapConfiguration.
This change propagates these parameters through google_maps_flutter, google_maps_flutter_platform_interface, and google_maps_flutter_web, allowing developers to explicitly enable or disable these controls.
To preserve backward compatibility, the existing behavior is maintained by defaulting these options to false when they are not provided by the user.
I created a sample app and tested the changes using dependency_overrides. Attaching a video for reference.
google_maps_flutter_rec.mov
Fixes flutter/flutter#104111.
Pre-Review Checklist
[shared_preferences]///).If you need help, consider asking for advice on the #hackers-new channel on Discord.
Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the
gemini-code-assistbot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.Footnotes
Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. ↩ ↩2