This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
macos-v0.7.0
This version of the Mapbox Maps SDK for macOS corresponds to version 4.0.0 of the Mapbox Maps SDK for iOS. The 0.7.x series of releases will be the last to support macOS 10.10. The minimum macOS deployment version will increase to macOS 10.11.0 in a future release. Changes since macos-v0.6.1:
Packaging
- Added Arabic, Danish, Hebrew, and European Portuguese localizations. (#10967, #11136, #11695)
- Removed methods, properties, and constants that had been deprecated as of v0.6.1. (#11205)
- Refined certain Swift interfaces by converting them from class methods to class properties. (#11674)
Style layers
- The layout and paint properties on subclasses of
MGLStyleLayer
are now of typeNSExpression
instead ofMGLStyleValue
. A new “Predicates and Expressions” guide provides an overview of the supported operators, which include arithmetic and conditional operators. (#10726) - A style can now display a heatmap layer that visualizes a point data distribution. You can customize the appearance at runtime using the
MGLHeatmapStyleLayer
class. (#11046) - A style can now display a smooth hillshading layer and customize its appearance at runtime using the
MGLHillshadeStyleLayer
class. Hillshading is based on a rasterized digital elevation model supplied by theMGLRasterDEMSource
class. (#10642) - You can now set the
MGLVectorStyleLayer.predicate
property to a predicate that contains arithmetic and calls to built-inNSExpression
functions. You may need to cast a feature attribute key toNSString
orNSNumber
before comparing it to a string or number. (#11587) - Replaced the
MGLStyle.localizesLabels
property with an-[MGLStyle localizeLabelsIntoLocale:]
method that allows you to specify the language to localize into. Note that this method does not automatically update the style when the system’s preferred language changes. Also added an-[NSExpression(MGLAdditions) mgl_expressionLocalizedIntoLocale:]
method for localizing an individual value used withMGLSymbolStyleLayer.text
. (#11651) - Fixed incorrect color calibration on macOS 10.13 High Sierra when using color-related methods of
MGLStyleLayer
subclasses, as well as when displaying anMGLAttributionInfo
. It is no longer necessary to explicitly convert anNSColor
to the sRGB color space before using these classes on High Sierra. (#11391) - The
MGLSymbolStyleLayer.textFontNames
property can now depend on a feature’s attributes. (#10850) - Changes to the
MGLStyleLayer.minimumZoomLevel
andMGLStyleLayer.maximumZoomLevel
properties take effect immediately. (#11399)
Content sources
- Renamed
MGLRasterSource
toMGLRasterTileSource
andMGLVectorSource
toMGLVectorTileSource
. (#11568) - Added an
MGLComputedShapeSource
class that allows applications to supply vector data to a style layer on a per-tile basis. (#9983) - Properties such as
MGLSymbolStyleLayer.iconAllowsOverlap
andMGLSymbolStyleLayer.iconIgnoresPlacement
now account for symbols in other sources. (#10436)
Map rendering
- Improved the reliability of collision detection between symbols near the edges of tiles, as well as between symbols when the map is tilted. It is no longer necessary to enable
MGLSymbolStyleLayer.symbolAvoidsEdges
to prevent symbols in adjacent tiles from overlapping with each other. (#10436) - Symbols can fade in and out as the map pans, rotates, or tilts. (#10436)
- Properties such as
MGLSymbolStyleLayer.iconAllowsOverlap
andMGLSymbolStyleLayer.iconIgnoresPlacement
now account for symbols in other sources. (#10436) - Added the
MGLTileSourceOptionTileCoordinateBounds
option to create anMGLTileSource
that only supplies tiles within a specific geographic bounding box. (#11141) - Fixed an issue preventing a dynamically-added
MGLRasterStyleLayer
from drawing until the map pans. (#10270) - Fixed an issue preventing
MGLImageSource
s from drawing on the map when the map is zoomed in and tilted. (#10677) - Improved the sharpness of raster tiles on Retina displays. (#10984)
- Fixed a crash parsing a malformed style. (#11001)
- Fixed an issue where symbols with empty labels would always be hidden. (#11206)
- Fixed an issue where a tilted map could flicker while displaying rotating symbols. (#11488)
- Increased the maximum width of labels by a factor of two. (#11508)
Annotations
- Fixed an issue where tapping a group of annotations may not have selected the nearest annotation. (#11438)
- The
MGLMapView.selectedAnnotations
property (backed by-[MGLMapView setSelectedAnnotations:]
) now selects annotations that are off-screen. (#9790) - The
animated
parameter to-[MGLMapView selectAnnotation:animated:]
now controls whether the annotation and its callout are brought on-screen. Ifanimated
isNO
then the annotation is selected if offscreen, but the map is not panned. Currently only point annotations are supported.(#3249) - Fixed a crash when rapidly adding and removing annotations. (#11551, #11575)
Map snapshots
- Fixed a memory leak that occurred when creating a map snapshot. (#10585)
- Fixed an issue that caused
MGLMapSnapshotter.pointForCoordinate
to return an incorrect value. (#11035)
Other changes
- The
-[MGLMapView convertRect:toCoordinateBoundsFromView:]
method and theMGLMapView.visibleCoordinateBounds
property’s getter now indicate that the coordinate bounds straddles the antimeridian by extending one side beyond ±180 degrees longitude. (#11265) - Feature querying results now account for the
MGLSymbolStyleLayer.circleStrokeWidth
property. (#10897) - Reduced offline download sizes for styles with symbol layers that render only icons, and no text. (#11055)
Documentation is available online or as part of the download.