commit | 70c314ce53cfd7c85d0ab498c8aaf334a69262d4 | [log] [tgz] |
---|---|---|
author | David Iglesias <ditman@gmail.com> | Fri Sep 10 17:36:22 2021 -0700 |
committer | GitHub <noreply@github.com> | Fri Sep 10 17:36:22 2021 -0700 |
tree | 137721ab020dfe4e69692007885637a117ffe689 | |
parent | a4f0e88fca1e8ea1e76913695ffb365646d9a039 [diff] |
[google_maps_flutter_web] Fix getScreenCoordinate, zIndex of Circles (#4298) This commit: * uses the zIndex attribute when converting Circle geometry objects. * ensures that the getScreenCoordinate method works as expected on the web platform. * adds tests that can use a fully-rendered Google Map (see projection_test.dart) * changes the initialization flow of the web Google Map, so the Controller is only returned to the main plugin when it's ready to work. In order to test the getScreenCoordinate method, the Controller of a fully-rendered map must be available on the test, so we can retrieve information from an actual map instance. While working on this, it was observed that the Controller was being sent to the programmer before it was truly ready (while the map was still initializing). Instead of littering the test with imprecise timeouts that may make these tests slower (and flakier) than needed, this PR also changes the initialization process of a GMap slightly so when its Controller is returned to the user of the plugin (onPlatformViewCreated method call), it is truly ready. For this: * Controller.init is immediately called after the controller is created, * The plugin waits for the first onTilesloaded event coming from the JS SDK, and then * The Controller is sent to the user This change happens within "private" sections of the plugin, so programmers using the plugin "normally" shouldn't notice any difference whatsoever (only that the GMap might load slightly faster, and the onPlatformViewCreated callback might be firing a few hundred milliseconds later).
This repo is a companion repo to the main flutter repo. It contains the source code for Flutter first-party plugins (i.e., plugins developed by the core Flutter team). Check the packages
directory for all plugins.
Flutter plugins enable access to platform-specific APIs. For more information about plugins, and how to use them, see https://flutter.dev/platform-plugins/.
These plugins are also available on pub.
Please file any issues, bugs, or feature requests in the main flutter repo.
Issues pertaining to this repository are labeled “plugin”.
If you wish to contribute a new plugin to the Flutter ecosystem, please see the documentation for developing packages and platform channels. You can store your plugin source code in any GitHub repository (the present repo is only intended for plugins developed by the core Flutter team). Once your plugin is ready you can publish to the pub repository.
If you wish to contribute a change to any of the existing plugins in this repo, please review our contribution guide, and send a pull request.
These are the available plugins in this repository.
The following plugins are also part of this repository, but are deprecated in favor of the Flutter Community Plus versions.
Plugin | Pub | Replacement | Pub | |
---|---|---|---|---|
android_alarm_manager | android_alarm_manager_plus | |||
android_intent | android_intent_plus | |||
battery | battery_plus | |||
connectivity | connectivity_plus | |||
device_info | device_info_plus | |||
package_info | package_info_plus | |||
sensors | sensors_plus | |||
share | share_plus | |||
wifi_info_flutter | network_info_plus |