| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
There is now only one instance of mbgl::OfflineFileSource, created when the shared MGLOfflineStorage object is initialized. Also create and use the shared MGLOfflineStorage object when initializing an MGLMapView object. The unified cache file is located in a subdirectory of Application Support, where the SDK has control over the file’s lifetime. The subdirectory is already named after the host application’s bundle identifier, ensuring that each Mapbox-powered application has an independent tile limit. If there’s an ambient cache in a subdirectory of Caches, delete it. If there’s an offline cache in a subdirectory of Documents on iOS or Caches on OS X, move it to the unified cache location in a subdirectory of Application Support.
Fixes the iOS/OS X side of #4338.
|
|
|
|
| |
“Offline pack” more effectively communicates the persistent nature of the downloaded content.
|
|
|
|
| |
Renamed SDK classes related to offline viewing to more closely match the terminology used by mbgl and the Android SDK while remaining consistent with Cocoa naming principles.
|
| |
|
|
|
|
|
|
| |
Added a new ifabric Make target for packaging up a static framework similar to the one released as 3.0.1. Place artwork and certificate assets inside Mapbox.bundle inside Mapbox.framework. Link SystemConfiguration in the umbrella header.
Distinguish between the framework bundle and the resources bundle. For the dynamic frameworks and embedded static frameworks, the two are the same; for the non-embedded static framework, the latter resides inside the former.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
After filtering out elements of a vector using std::remove_if(), it’s apparently necessary to resize the vector. Otherwise, removing only has the effect of shifting the non-matching items to the end of the vector. This change reduces the annotation tap target back to almost what it was before #3261, except that these days the target is centered around the annotation image rather than the center point. There remains a much smaller slop area around the annotation, but nothing close to the effective padding before this change.
Fixes #3880.
|
| |
| |
| |
| |
| |
| | |
Introduced a setter/getter for constrain mode. On iOS and OS X, the zoom level inspectable causes the zoom level to be set independently from the longitude and latitude. Thus, the latitude inspectable had no effect because the latitude was constrained to 0 at z0. Temporarily removing the heightwise constraint allows the map to center on the intended location before zooming, which is the usual case for storyboards and XIBs. On iOS, the only guarantee we have timing-wise is that all the inspectables are applied after initialization but before the view is added to a window. So we reimpose the heightwise constraint as soon as the view is added to a window, that is, before the user has a chance to pan the map out of bounds.
Fixes #3868.
|
| |
| |
| |
| |
| |
| | |
Handle the case where the currently selected annotation isn’t one of the nearby annotations. This hasn’t come up before on OS X because clicking an annotation while another annotation is selected only dismisses the callout popover.
Fixes #3284.
|
| |
| |
| |
| | |
Fixes #3927
|
| | |
|
| | |
|
| |
| |
| |
| | |
Make sure it doesn't break.
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
* Use "named constructors": empty, world, hull
* Make the two-argument constructor lenient (i.e., it is a hull operation)
* Add various accessors
* Enforce a single empty representation
|
|
|
|
|
|
|
|
| |
adds:
setMaximumZoomLevel
setMinimumZoomLevel
and makes `maximumZoomLevel` and `minimumZoomLevel` not readonly
|
|
|
|
| |
The tilt gesture on both iOS and OS X now respects the content insets. On iOS, in user tracking mode, it additionally respects the user dot’s position if it’s aligned to the top or bottom of the view.
|
|
|
|
| |
Use mbgl::Duration and mbgl::{,Milli}Seconds whenever possible.
|
|
|
|
|
|
| |
Copied strip-frameworks.sh from realm/realm-cocoa@7cc31db631c323bb649aec1e311693a599a37f05 for realm/realm-cocoa#2759. This script, which is embedded in the dynamic framework, strips out content for invalid architectures from any embedded framework and specifically strips out Simulator content when archiving to work around an App Store bug.
Rewrote the iOS setup documentation. In particular, the MAPBOX_ACCESS_TOKEN environment variable is only for use with the iosapp demo application and doesn’t work in third-party applications.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the SpriteImage constructor signature changes from
SpriteImage(
uint16_t width, uint16_t height, float pixelRatio,
std::string&& data, bool sdf = false);
to
SpriteImage(PremultipliedImage&&, float pixelRatio, bool sdf = false)
|
|
|
|
|
|
|
|
|
|
|
| |
ref #3031
ref #2198
For example, an icon that has:
- a pixel width of 10
- a pixel ratio of 3
- a scaled with of 3.333
is now supported.
|
|
|
|
|
| |
OSX platform includes platform/darwin/image.mm which uses CoreFoundation
to decode PNG and JPEG images.
|
|
|
|
|
|
|
|
| |
Map::pixelForLatLng()
Map and Transform methods assume an origin at the top-left corner of the view, like iOS, Android, and GLFW but unlike OS X. Transform is responsible for flipping coordinates between the top-left origin of Map and the bottom-left origin of TransformState.
Fixes #3574.
|
|
|
|
| |
Methods that offer a convenient way to jump or ease now accept an optional padding parameter. MGLMapView specifies the padding to ensure that keyboard-based zooming and rotation respects the toolbar.
|
|
|
|
| |
Added a contentInsets property to MGLMapView that behaves similarly to NSScrollView.contentInsets. Adjust it according to the window’s content layout rectangle using KVO. Automatically apply the content insets whenever creating a CameraOptions or getting the center coordinates.
|
| |
|
|
|
|
| |
Cleaned up gesture recognizers, flipping the origins of anchor points only and always before calling mbgl methods. This exposed the fact that the cursor locking feature during drag-zoom/rotate/tilt was broken, so I fixed it to match MapKit behavior exactly and also account for modifier changes in mid-gesture.
|
|
|
|
| |
All Transform methods that take a PrecisionPoint now assume a “flipped” origin at the upper-left corner of the view. Previously, some methods assumed an origin at the lower-left corner.
|
| |
|
|
|
|
| |
I regenerated assets.zip so that all file paths have an `assets/` prefix, as the Android AssetFileSource implementation asserts, and removed `TEST_DATA` from the paths.
|
|
|
|
| |
Fixed a compiler error that’s new in Xcode 7.3. Also corrected a typo in MGLMapView on OS X.
|
| |
|
|
|
|
|
| |
- refs https://github.com/mapbox/mason/tree/libpng-1.6.20
- refs https://travis-ci.org/mapbox/mason/builds/100661025
|
| |
|
|
|
|
|
|
|
|
| |
Rewrote some copy to provide more context and link to more GL-related repos, including GL JS. Put the various SDKs in a table so we can show the various CI bot status images.
Integrated target list into the relevant documents. Rewrote large portions of iOS and OS X setup documentation to guide normal developers to more friendly places. Combined some Android documentation.
Moved SDK-specific documentation into platform/. Added a temporary readme in ios/ that points to the one in platform/ios/.
|
|
|
|
| |
Followup to #3426.
|
|
|
|
| |
Fixes #3426.
|
|
|
|
| |
The map feedback tool still uses mapbox.js, so its zoom levels are one off from Mapbox GL’s.
|
| |
|
|
|
|
| |
Even with the system preference set to close windows when quitting, the user would still expect this map-centric application to remember the last viewed map, because the world map isn’t quite as interesting.
|
| |
|
|
|
|
| |
Instead of forcing the system to restore windows between sessions (which confusingly switches the behavior of ⌘Q and ⌥⌘Q), honor the preference but have each new window inherit the style of the previous main window.
|
|
|
|
| |
Allows for multiple map windows open at a time.
|
| |
|
| |
|