| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
`-pauseMetricsCollection` and `-resumeMetricsCollection` were originally introduced to mitigate concerns around battery usage, but `MGLMapboxEvents` has since evolved to tread much lighter on the battery. There’s no longer any need for the client to call these methods directly. The iOS test project now includes MGLMapboxEvents.h explicitly to avoid having to package a header that will go unused.
|
|
|
|
| |
A typo in a selector literal meant that `-[MGLMapViewDelegate mapViewDidFailLoadingMap:withError:]` would never be sent to delegates even if `MGLMapView` had called it. Along for the ride, create a proper `NSError` to pass into that callback, and an error domain for that error.
|
|
|
|
| |
because Travis uses Apple LLVM 6.0 and full c++14 support landed in 6.1
|
|
|
|
| |
`MGLMetricsLocationManager` was nothing but overhead for `CLLocationManager`. Also removed an unused method.
|
|
|
|
| |
The shared `MGLMapboxEvents` now owns the only instance of `MGLMetricsLocationManager`. It also owns a `MGLMapboxEventsData` object, to which all user-specific data has been relegated. This object can be built up and torn down on the fly, whenever the opt-out preference is toggled. `MGLMapboxEvents` has also given up knowledge of the access token and now queries `MGLAccountManager` for that information, which `MGLMapView` keeps up-to-date.
|
| |
|
|\
| |
| | |
MapboxGL Startup Infrastructure
|
| |\ |
|
| | |
| | |
| | |
| | | |
singleton code into MGLAccountManager.h and .m
|
| | | |
|
| | | |
|
| | | |
|
| |/
|/| |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Added macro for main thread assertions based on `NSAssert()`. Reworded Boolean property per Objective-C conventions.
|
| |
| |
| |
| | |
issues
|
| |
| |
| |
| | |
this will make it easier to add more targets to iOS builds in the future. It'll also help by having Xcode files named after the platform they're for, so it's easier to distinguish windows
|
|/
|
|
| |
previously, we used multiple different projects for various targets (app, test, render) that overwrote each other, so it was impossible to have one project to build them all, one project to compile them, one project to run them all and in the darkness bind them
|
| |
|
| |
|
|\
| |
| | |
Separate objects from Thread management
|
| | |
|
| | |
|
|/
|
|
| |
Needed in target_defaults to prevent node-gyp from overriding this everywhere with '10.5' from https://github.com/joyent/node/blob/master/common.gypi
|
|
|
|
|
|
| |
Declared these IB-specific inspectables in a separate category that developers are not expected to import. Currently these inspectables are order-dependent due to #1181.
Ref #929
|
|
|
|
|
|
|
|
|
|
| |
When an access token is set in the Attributes inspector (or as a user-defined runtime attribute), we draw some lovely Mapbox branding so the view shows up. (Manipulating invisible rectangles is a frustrating exercise, I’m told.) In the absence of an access token, the view displays a helpful message with directions for obtaining and setting the access token.
Along the way, completely opt out of `MGLMapboxEvents` when targeting Interface Builder, because touching Core Location throws an exception in that environment and it doesn’t make sense to record any metrics when designing on the Interface Builder canvas. Also, don’t start `mbgl::Map` at all (and don’t update it) because none of the runtime drawing code should ever be run in the designable. Normally these chunks of code would be excluded in IB using the TARGET_INTERFACE_BUILDER preprocessor macro. However, Mapbox GL is being packaged as a static library, so the macro is only evaluated when the library is prebuilt, even if the library eventually makes its way into the CocoaPods-generated framework. Instead, we detect that we’re being run by the IBDesignablesAgentCocoaTouch process.
Overrode `-[MGLMapView initWithFrame:]` to call `-commonInit`. We’ve marked this initializer unavailable in the header, but IB still calls it regardless.
Fixes #929.
|
|
|
|
|
|
|
|
| |
`Map` should be able to deal with having no access token or JSON even while it’s running. Most of `Map` accounts for this situation, but `reloadStyle()` incorrectly assumes that one or the other is set. This change corrects the assumption in `reloadStyle()`.
Also expose the access token and style name to clients as ordinary KVO-compliant properties. Actually, they’re not so ordinary because they’re inspectable!
Ref #1070, #1147
|
|
|
|
|
|
| |
Unlike iOS, OS X does not consider OpenGL.framework to be a standard library, so LINK_WITH_STANDARD_LIBRARIES does not pull it in.
Ref #1099, #1105
|
|\
| |
| |
| | |
Left in MGLTypes.h, which is now a platform-neutral (iOS + OS X) place for MGLUserTrackingMode.
|
| |
| |
| |
| | |
This code appears to be unused and has not been kept in sync with style
spec changes.
|
|\ \
| | |
| | | |
Enable modules in iOS demo app
|
| | |
| | |
| | |
| | | |
No longer need to explicitly link system frameworks like UIKit.
|
|/ / |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
gyp/platform-ios.gypi
platform/ios/MGLMapView.mm
styles
|
| | | |
|
| |/ |
|
| |
| |
| |
| | |
method name.
|
| | |
|
| |
| |
| |
| | |
comply with naming scheme.
|
|/ |
|
|
|
|
|
|
| |
- OpenGL ES 2 doesn't allow NPOT textures with wrap-around
- The Sprite object reported the map's pixelRatio, even though it loaded @2x assets
- Copying icons from the sprite into the atlas now uses bilinear scaling to scale up to the actual size
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
fixes #838
instead of rendering ad libitum on the map thread, we are now driving rendering from the UI thread on iOS via the map.renderSync() function. There are still white bars during the rotation, but the general content of the view is kept visible.
- upgrades GLFW to 3.1
- removes swapped/needsSwap in favor of a more explicit scheme
- View#invalidate() now replaces View#swap() and is called whenever the View needs to trigger a rerender. GLFW and Android to this right away, while iOS goes back to the main thread and does the Map redrawing as part of the GLKView update
- sets all iOS deployment targets to 7.0
- disables SQLite3 version check, since the library version changed on iOS 8.2
|
|
|
|
|
|
|
|
|
| |
we are now scoping all file requests to an environment object. The FileSource implementation treats
this as an opaque pointer, but allows canceling all Requests that are associated with that pointer.
This is necessary to abort all file requests that originated from a particular Map object. Aborting
a file request is different from canceling a file request: A canceled request doesn't have its
callback called, while an aborted request will have its callback called with an error, indicating
that the environment is going to be shut down.
|
| |
|
| |
|
| |
|