This release is a collection of user affecting changes along a couple of new features and bug fixes.
Head over to the migration guide to learn more on how to update your implementation.
A big thanks to @gabbopalma for his contributions in this release.
Breaking Changes
- Rename the
Layer
postfix of the more low level style classes toStyleLayer
. - Remove web-only map controls (ScaleControl, GeolocateControl, AttributionControl, FullscreenControl, LogoControl, NavigationControl, TerrainControl).
- Remove MapLibre Native specific User Interface options (logo, attribution, compass).
- Rename
ZoomButtons
toControlButtons
. - Move style related controller calls to the
StyleController
that can be accessed via a nullablemapController.style
field. - Return the
StyleController
in theonStyleLoaded()
callback and in theMapEventStyleLoaded
event. - An
ImageSource
now requires a static typedLngLatQuad
object. - Set the minimum required Flutter version to 3.27.
New Features
- Bump MapLibre Native on Android to 11.7.+.
- Bump MapLibre GL JS on Web to version 5.
- Add
style.setProjection()
to switch to globe projection programmatically. - Add a user location button to the
ControlButtons
. - Bump ktlint to 0.4.19 and gradle to 8.6.1.
- Bump jni and jnigen to 0.13.0 and migrate bindings.
- Widen the gradle dependency constraints to allow patch updates.
- Add logo as pub.dev screenshot.
- Structure the API docs in topics.
- Add an internal
WidgetStateNative
for better code reuse in the upcoming iOS release.
Bug Fixes
- Fix can't rotate with two fingers on web.
- Fix text overflow in the scale bar widget.
- Fix deprecations introduced in Flutter 3.27.
Misc
- Enhance documentation.
- Build example app with java 21
Contributors: @gabbopalma, @josxha
Full Changelog: v0.1.2...v0.2.0