Skip to content

Releases: maplibre/maplibre-compose

v0.12.1

11 Nov 02:52

Choose a tag to compare

Updated Spatial-K to v0.6.0 to resolve an incompatibility with MapLibre Native's GeoJson serialization on Android

Full Changelog: v0.12.0...v0.12.1

v0.12.0

10 Nov 18:25
521a621

Choose a tag to compare

Breaking changes

  • @sargunv Upgraded to the latest version of Spatial-K, which significantly overhauls the GeoJson API. See the release notes for details.
    • NOTE: Spatial-K now supports any Serializable type for feature properties, but MapLibre Compose currently only supports JsonObject or other non-generic Serializable classes. This will be improved in the future.
  • @sargunv Fixed the incorrect name of rememberComputedSource (was rememberGeoJsonSource)
  • @sargunv Fixed the lineProgress() expression signature (it does not have parameters)`
  • Updated Kotlin and Compose versions

Features

  • @kodebach Added a location engine and location puck on Android and iOS
  • @kodebach Added a new module, maplibre-compose-gms, to support Google location services on Android
  • @jgillich Added RasterDemSource to support HillshadeLayer on Android and iOS
  • @sargunv Added support for stretchable images in the layer styling DSL on Android and iOS
  • @sargunv Added support for configuring gestures on desktop
  • @sargunv Added support for detecting map clicks on desktop
  • @sargunv Added support for manipulating the camera position on desktop
  • @sargunv Added support for reading the camera state on desktop (except isCameraMoving)
  • @sargunv Added support for projecting between screen / world positions on desktop
  • @sargunv Added support for render stats on desktop
  • @tronto20 Added partial support for Compose resource URIs on desktop
  • @kodebach Added some additional preset gesture options: PositionLocked, RotationLocked, and ZoomOnly
  • @sargunv Added a placeholder (grey box) for the map in @Preview mode (instead of crashing)

Fixes

  • @sargunv Fixed the switch expression not working when zero cases were provided
  • @sargunv Fixed the map not being disposed properly on desktop
  • @sargunv Fixed the map persisting after being removed on macOS
  • @sargunv Fixed the map desyncing from its correct position when resizing the window vertically on macOS

Documentation

  • @louwers Added a logo to the readme
  • @sargunv Added a new roadmap page to the documentation site
  • @sargunv Fixed API reference not available for the main module
  • @sargunv Corrected desktop setup instructions on the getting started guide
  • @DestBro Clarified iOS setup instructions on the getting started guide
  • @kodebach Added location engine demos to the demo app
  • @sargunv Added some other demos to the demo app

v0.11.1

06 Sep 07:05
2b368f6

Choose a tag to compare

  • Windows: Fix loading dll for maplibre-native-bindings-jni

v0.11.0

06 Sep 01:54
6167afb

Choose a tag to compare

NOTE: This release has widespread breaking changes from v0.10. Read the change log carefully.

New maven coordinates and desktop setup instructions can be found in the getting started documentation.

Breaking changes

  • Maven coordinates have been changed, replacing dev.sargunv.maplibre-compose with org.maplibre.compose.
  • To match, package names have been changed from dev.sargunv.… to org.maplibre.… and the package organization has changed significantly.
    • I recommend removing all dev.sargunv.… imports and using an IDE to help you find the new imports.
  • The desktop implementation has been rewritten, eliminating the old MapLibre-JS-in-webview based implementation with MapLibre Native.
    • If you use the desktop target, you'll need to remove the KCEF setup from your build and add the natives for your platform(s).
    • Supported functionality on desktop is still quite minimal. Future releases will build on this.
    • Linux support is implemented, but doesn't quite work yet. See #564.

Other changes

  • Updated many libraries, notably MapLibre Android to v11.13.
    • Did not update MapLibre iOS to v6.18 because of #551
  • Fixed a crash when using zoom interpolation with textSize.

Full Changelog: v0.10.4...v0.11.0

v0.10.4

25 Jul 21:19
6c61453

Choose a tag to compare

What's Changed

  • android: fix camera animation halting on certain recompositions by @sargunv in #520

Full Changelog: v0.10.3...v0.10.4

v0.10.3

24 Jul 07:57
8a2119e

Choose a tag to compare

What's Changed

  • ios: fix additional unnecessary reinitializations of the map by @sargunv in #516
  • ios: fix camera animation halting on certain recompositions by @sargunv in #517 and #518

Full Changelog: v0.10.2...v0.10.3

v0.10.2

22 Jul 07:17
25e3e6f

Choose a tag to compare

What's Changed

  • ios: fix unnecessary reinitialization of map due to recomposition by @sargunv in #507
  • implement clusterMinPoints on Android and iOS by @westnordost in #511

Full Changelog: v0.10.1...v0.10.2

v0.10.1

10 Jul 21:12
e0d2656

Choose a tag to compare

What's Changed

  • (breaking) fix get base source crashes by @sargunv in #501

Full Changelog: v0.10.0...v0.10.1

v0.10.0

10 Jul 07:53
be8baae

Choose a tag to compare

Breaking changes

  • Support raw json base styles by @sargunv in #462
    • MapLibreMap(styleUri = "..") is now MapLibreMap(baseUrl = BaseStyle.Uri(".."))
  • Auto assign source IDs to fix a common crash by @sargunv in #497
    • all the remember*Source() functions no longer take an id parameter.
  • Correct iconPadding type: It is a DpPaddingValue by @westnordost in #471

Other changes

Documentation changes

New Contributors

Full Changelog: v0.9.1...v0.10.0