Skip to content

2.7.0

Compare
Choose a tag to compare
@evil159 evil159 released this 28 Mar 11:37
· 41 commits to main since this release
68f7034

New Features ✨

  • Introduce onZoomListener to MapWidget to allow listening to zoom events resulting from user gestures: pinching, double-tapping, or quick-zooming. The event returns MapContentGestureContext, which includes touchPosition (the location of the gesture on the screen), point (the geographical coordinates of the gesture), and gestureState (the state of the gesture). See gestures_example.dart for implementation guidance.

    _onZoom(MapContentGestureContext context) {
      print("OnZoom coordinate: {${context.point.coordinates.lng}, ${context.point.coordinates.lat}}" +
        " point: {x: ${context.touchPosition.x}, y: ${context.touchPosition.y}}" +
        " state: ${context.gestureState}");
    }
  • Expose SymbolLayer.iconSizeScaleRange, SymbolLayer.iconSizeScaleRangeExpression, SymbolLayer.textSizeScaleRange, SymbolLayer.textSizeScaleRangeExpression, LineLayer.lineCrossSlope, LineLayer.lineElevationReference, LineLayer.lineWidthUnit, FillLayer.fillElevationReference.

  • Expose PointAnnotationManager.setIconSizeScaleRange(), PointAnnotationManager.getIconSizeScaleRange(), PointAnnotationManager.setTextSizeScaleRange(), PointAnnotationManager.getTextSizeScaleRange() , PolygonAnnotationManager.setFillElevationReference(), PolygonAnnotationManager.getFillElevationReference(), PolylineAnnotationManager.setLineCrossSlope(), PolylineAnnotationManager.getLineCrossSlope(), PolylineAnnotationManager.setLineElevationReference(), PolylineAnnotationManager.getLineElevationReference(), PolylineAnnotationManager.setLineWidthUnit(), PolylineAnnotationManager.getLineWidthUnit() as experimental.

  • Introduce a setCustomHttpHeader method to allow the plugin to modify HTTP headers dynamically, huge thanks to @azaderdogan

Improvements 🏁

  • Reduce installation size by ≈ 10 MB by redacting the rest of the debug symbols.
  • Reduce the amount of background triggers to optimize battery usage when the app is not in the focus anymore.
    Reduce CPU load by adding exponential backoff for failed connection attempts
  • Experimental StandardBuildingState has been removed. Use StandardBuildingsState instead.
  • Vector icons supported in the location indicator layer
    • top-image, bearing-image, and shadow-image properties on LocationIndicatorLayer are now paint properties instead of layout properties.

Bug fixes 🐞

  • Fix Dynamic View Annotations placement on high zoom levels
  • Fix line placement symbol disappearing issue when in zoom level between 5 and 6
  • Fixing missing vector images after style change
  • Fix background layer not being updated on raster image was in-place update
  • Fix background layer not being updated on color theme change
  • Fixing LUT (look-up table) not being applied to in-place updated images.
  • Fixing in-place updates for SDF (Signed Distance Field) images.
  • Fix mipmaps for images updated inplace
  • Support positive mask coordinates for vector images.
  • Fix dark shades of gradient effect in the night preset
  • Fix rarely missing background color
  • Fix Custom Raster Source behavior on re-creation
  • Previously, when the Custom Raster source was re-created within the same call chain, its rendering counterparts were not updated. This caused the CustomRasterSourceTileRenderer to remain not re-initialized.
  • [Android] Fix rare NPE upon native view disposal.
  • Fixed incorrect rgba to hsla conversion for white color
  • Fix vector images rasterization
  • Make katakana and CJK symbol rendered correctly in vertical writing mode

Other changes 🎉

  • Mark ClipLayer.clipLayerScope and ClipLayer.clipLayerTypes as stable
  • Mark BackgroundLayer.backgroundPitchAlignment as experimental

Dependency Updates

  • Update Mapbox Maps SDK to v11.11.0
    • For platform-specific updates see: iOS & Android