summaryrefslogtreecommitdiff
path: root/platform/ios/src
Commit message (Collapse)AuthorAgeFilesLines
* [ios] Add custom events library start-up delay (#12088)upstream/fabian-cp-12088Randall Lee2018-06-221-13/+25
| | | | | | | | | | | | | | | | | | * [ios] Add custom delay Adds a custom delay to the events library initialization. This is only active when using certain profile configurations. * [ios] events library version update to v0.4.1 * Update Events Library to include missing MGL_EXPORT * Add MMEEventsService files to Events Lib Submodule * Change delayTime type to int64_t # Conflicts: # platform/ios/ios.xcodeproj/project.pbxproj # platform/ios/vendor/mapbox-events-ios
* [iOS] - Update telemetry certificate pinning (#11845)Randall Lee2018-06-221-0/+218
| | | | | | | | | | | | | | | * Update telemetry certificate pinning * Load both CN certificates * [ios] Use China events endpoint with China API endpoint * Update CHANGELOG.md # Conflicts: # platform/ios/CHANGELOG.md # platform/ios/ios.xcodeproj/project.pbxproj # platform/ios/src/MGLAPIClient.m
* [ios] Fix MGLAnnotationView.rotatesToMatchCamera clobbering other transformsJason Wray2018-05-081-8/+18
|
* [ios, macos] Add to-rgba expression operator. (#11725)Fabian Guerra Soto2018-05-071-1/+1
| | | | | | | | | | | | | | | | | | | | * [ios, macos] Add expression support to to-rgba operator. * [ios, macos] Update style docs. * [ios, macos] Refactored to-rgba to to-color. * [ios, macos] Add support for to-rgba expression operator. * [ios, macos] Add multiple parameters support to to-color operand. * [ios, macos] Enable to-rgba operator for MGLColor or key path expressions. * [ios, macos] Update predicates and expressions guide to reflect cast changes. * [ios, macos] Update changelogs. * [ios, macos] Clarify color casting usage.
* [ios, macos] Make NSPredicate+MGLAdditions public. (#11810)android-v6.1.0Fabian Guerra Soto2018-05-042-1/+2
|
* [ios] Switched to use center property (instead of frame) when repositioning ↵Julian Rex2018-05-031-3/+5
| | | | annotation views (when adding back into queue). (#11817)
* [ios, macos] Fix possible retain cycles in blocksJason Wray2018-04-271-3/+11
| | | | Prompted by enabling CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF.
* [ios, macos] Fix for camera movement when selecting visible annotations (#11731)Julian Rex2018-04-241-3/+18
|
* [ios] Mark -metersPerPixelAtLatitude: as unavailableupstream/fb-metersPerPixelAtLatitude-unavailableJason Wray2018-04-231-1/+1
| | | | This deprecated method has its implementation removed in 4.0.0 but was not marked as unavailable.
* [ios] Mark -presentCalloutFromRect:inView:constrainedToView:animated: ↵Julian Rex2018-04-191-1/+1
| | | | unavailable (#11738)
* [ios] Mark unused parameter of -[MGLMapView reloadStyle:] as nullableJason Wray2018-04-171-1/+1
|
* [ios, macos] Convert various class methods to class propertiesJason Wray2018-04-161-1/+1
| | | | This improves the Swift interface while having no effect on Obj-C usage.
* [ios] Remove more deprecated bits for release-bobaJason Wray2018-04-162-51/+6
|
* [ios] Change MGLAnnotationView.scalesWithViewingDistance default value to NOupstream/fb-undefault-scalesWithViewingDistanceJason Wray2018-04-122-5/+5
|
* [ios, macos] Eliminated MGLAbstractShapeSourceMinh Nguyễn2018-04-021-1/+0
| | | | MGLComputedShapeSource is now a direct subclass of MGLSource and sibling of MGLShapeSource.
* [ios, macos] Renamed MGLVectorSource to MGLVectorTileSourceMinh Nguyễn2018-04-024-14/+14
|
* [ios, macos] Renamed MGLRasterSource to MGLRasterTileSourceMinh Nguyễn2018-04-022-5/+5
| | | | Also updated various source class listings to reflect the addition of image and raster DEM sources.
* Eviscerate mbgl expression to Foundation JSON object conversion (#11389)Minh Nguyễn2018-03-302-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ios, macos] Eviscerate mbgl expression to Foundation JSON object conversion * [ios, macos] Remove literal special case MGLJSONObjectFromMBGLValue() is just a literal translation from C++ types to Foundation types; no need for expression-specific literal wrapping. * [ios, macos] Implemented RGB(A) operators * [ios, macos] More robust color conversion * [macos] Create calibrated RGB from expression on Sierra * [macos] Calibrate colors in expressions at runtime * [ios, macos] Special-case number conversion without fallbacks * [ios, macos] Test mgl_number expressions * [ios, macos] Updated tests for aftermarket expressions * [ios, macos] Relax roundtripping requirement for serialize() * [ios, macos] Fixed interpolation expression tests * [ios, macos] Removed dead code * [ios, macos] Fixed color conversion on Sierra
* [ios,macos] Selecting offscreen annotation pans map to fit annotation & ↵Julian Rex2018-03-213-23/+126
| | | | callout view (#3249, #9790)
* [ios] Fix pinch drift ignoring delegate camera change responseJason Wray2018-03-141-3/+7
|
* [ios] Improved heading indicator arrow visibilityJason Wray2018-03-141-1/+1
|
* [ios, macos] Fix an issue where a wrong annotation may selected if ↵Lloyd Sheng2018-03-131-26/+23
| | | | | | | | | | | | annotations were set close together (#11438) * [ios] Fix an issue where wrong annotation may selected when annotations very close #10734 * [macos] Fix an issue where a wrong annotation may selected if annotations were set close together * update the iOS change log and the macOS change log * Fix an issue where the comment referenced to the wrong variable name
* [ios] Add MGLMapView.showsScale to control scale bar visibility (#11335)Jason Wray2018-03-023-7/+37
| | | | | | - Fixes scale bar not being visible until a camera change event. - Adds IBInspectable for scale bar visibility. - Add tests of the scale bar being added to the map view
* [ios] Provide haptic feedback when user rotates to due northJason Wray2018-02-272-0/+34
|
* [ios, macos] Unwrap coordinate boundsMinh Nguyễn2018-02-212-40/+44
| | | | Updated coordinate bounds conversion methods to use the beyond-±180 method to indicate that the bounds extends beyond the antimeridian. Also copyedited conversion documentation.
* [ios] Fix loop when first asking for location permission (#11229)Jason Wray2018-02-201-1/+2
|
* Replace embedded telem implementation with mapbox-mobile-events library (#10698)Jesse Bounds2018-02-208-1199/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ios] Introduce mobile events dependency This adds the mobile events dependency including the events library's namespaced header file so that the related compiled symbols are prefixed to make them specific to the maps SDK. A pre-compiled header file is added so that the namespaced header file is added in all places where it is needed (most importantly every events library file). * [ios] Use new events library for telemetry events This makes the following significant changes: Refactors the MGLMapboxEvents singleton to delegate internally to an instance of MMEEventsManager that it keeps for itself. The MGLMapboxEvents public API is refactored to reflect this. Note: MGLMapboxEvents continues to handle checking for opt out Uses that new events API in MGLMapboxEvents to send all telem events (and turnstile) All embedded certs are removed since the new telem library uses public key info pinning Legacy telemetry utility classes for location and networking are removed since those are implemented in the telem library * [ios] Update submodules initialized by cmake We no longer bring in SMCalloutView as a submodule so it is removed. We now vendor the telemetry events library as a submodule so it is added. * Update mapbox-mobile-events * Update mobile events lib * Set events options with MGL user defaults values For options that historically could be set with user defaults in the Maps SDK, collect them and set the appropriate property values in the new events library. Also, check the existence of two new optional configuration values MGLTelemetryAccessToken and MGLTelemetryBaseURL so that the events endpoint and access token can be configured and the access token can easily be set dynamically and apart from the access token for the maps API. MGLTelemetryBaseURL replaces the legacy MGLTelemetryTestServerURL. This is ok because this value was never intended to be used by client applications. The new name better reflects the fact that the URL can be changed to any backend stack, not just a test server. Because it is possible for the configuration values to be read from user defaults before the events manager is fully set up, this also adds a local cache for the baseURL and accessToken values so that they can be stored and applied once it is time to setup the the events manager. * Update mapbox-mobile-events mapbox-mobile-events was forced pushed to include https://github.com/mapbox/mapbox-events-ios/pull/28 * Rename MGLMapboxEvents singleton access method Manager is not in the name of the class. Just call it an instance. * Update mapbox-mobile-events * Add comments about config value loading * Guard against creating events for IB * Refactor user defaults update handler This updates the handling logic for user defaults to break apart config changes that require a check for pausing or resuming the events lib’s telemetry collection from config changes that can happen with no update to the pause/resume state. It also ports the optimization from https://github.com/mapbox/mapbox-gl-native/pull/10803 so that the call to pause and resume is not performed unless the user defaults store has new values that have not yet been applied to the events library. * Update mapbox-mobile-events * Rename events submodule folder * Fix incorrect events library refs * Update mapbox-mobile-events * Update user user agent id value This value aligns with our schme of {source-sdk-platform} and will be used by the events library in the user agent and vendorid. * Update mapbox-mobile-events Pin to v3.0.0 (d522b18) * Improve code comments * [ios] Fixed a broken file reference to MGLTelemetryConfig.
* [ios, macos] Mark deprecated methods as unavailable (#11205)Jordan Kiley2018-02-162-63/+8
| | | Fixes #10735
* Merge branch 'master' into release-bobaFabian Guerra2018-02-158-69/+363
|\ | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # platform/android/CHANGELOG.md # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/Mapbox.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java # platform/android/scripts/exclude-activity-gen.json # platform/ios/CHANGELOG.md # platform/ios/Mapbox-iOS-SDK-nightly-dynamic.podspec # platform/ios/Mapbox-iOS-SDK-symbols.podspec # platform/ios/Mapbox-iOS-SDK.podspec # platform/macos/CHANGELOG.md
| * [core, ios, macos, android, node] Heatmap layer (#11046)Vladimir Agafonkin2018-02-151-0/+1
| | | | | | | | | | Co-Authored-By: Konstantin Käfer <mail@kkaefer.com> Co-Authored-By: Anand Thakker <anandthakker@users.noreply.github.com> Co-Authored-By: Minh Nguyễn <1ec5@users.noreply.github.com>
| * [ios] Release cached tiles on entering background.Chris Loer2018-02-141-0/+7
| | | | | | | | | | Retain current render tiles for fast restart. Waiting for a memory warning doesn't work because we can't make GL release calls once we're in the background.
| * [core] Rename "onLowMemory" to "reduceMemoryUse".Chris Loer2018-02-141-2/+2
| | | | | | | | | | Android still calls "reduceMemoryUse" only while handling a low memory event. iOS, on the other hand, calls "reduceMemoryUse" every time it enters the background.
| * Merge tag 'ios-v3.7.4' into masterFabian Guerra2018-02-137-67/+353
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # include/mbgl/style/conversion/tileset.hpp # include/mbgl/util/tileset.hpp # platform/android/CHANGELOG.md # platform/android/MapboxGLAndroidSDK/gradle.properties # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java # platform/ios/CHANGELOG.md # platform/ios/ios.xcodeproj/project.pbxproj # platform/macos/CHANGELOG.md # src/mbgl/layout/symbol_projection.cpp # src/mbgl/renderer/tile_pyramid.cpp # src/mbgl/style/conversion/tileset.cpp
| | * [ios] Adds camera change delegate methods with reason parameter. (#11151)Julian Rex2018-02-123-64/+294
| | | | | | | | | | | | Added missing notification handler for UIApplicationWillResignActiveNotification.
| | * Adjust radius (#11132)Randall C Lee2018-02-061-1/+1
| | |
| | * [ios] Add Radius Configuration (#11070)Randall C Lee2018-02-054-3/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add Radius Configuration * Remove default config - removes default configuration - moves config setup to events init method - renames config class * Delete MGLConfig header file
* | | [ios] Fix image property of MGLAnnotationImage does not update.Fabian Guerra2018-01-261-5/+0
|/ /
* | [ios, macos] Hook up hillshade style layers, raster DEM sources to iOS/macOS ↵Minh Nguyễn2018-01-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#11036) * [ios, macos] Finished implementing MGLHillshadeStyleLayer * [macos] Added icon for hillshade layer Also set the background layer icon to mirror in right-to-left locales. * [ios, macos] Implemented raster DEM source * [macos] Added Enhance Terrain debugging command * [ios, macos] Simplified raster DEM source example
* | Reimplement style values atop NSExpression (#10726)Minh Nguyễn2018-01-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ios, macos] Import headers, not implementation files * [core] Added accessors for various expression parameters Added missing parameter accessors to various expression operator classes, as well as a method on InterpolatorBase and Step that enumerates the stops and their values. * [ios, macos] Silenced warning in test of error condition * [ios, macos] Made MGLSphericalPosition boxable * [ios, macos] Implemented array enumeration during conversion * [ios, macos] Temporarily ignore heatmap layer type * [ios, macos] Migrated MGLSymbolStyleLayer.text to NSExpression MGLSymbolStyleLayer.text is now of type NSExpression instead of MGLStyleValue, as a first step toward migrating the entire layer API from style values to expressions. Implemented conversions from NSExpression to JSON arrays and vice versa. The most common NSExpression functions are now converted into style expressions, but not all of the most common style expression operators are supported yet. * [ios, macos] Implemented string coercion * [ios, macos] Color literals * [ios, macos] Null constant expressions * [ios, macos] Convert dictionary literals * [ios, macos] Interpolation expressions * [ios, macos] to-boolean, to-number, get from object * [ios, macos] Variable expressions Implemented custom expression functions for assigning and referring to variables within the context of an expression. Variables are assigned via a “context dictionary” and applied to an subexpression that is given as another argument to the same expression. Also implemented built-in variable expressions for zoom level and heatmap density. * [ios, macos] Convert colors, offsets, padding in expressions to JSON objects * [ios, macos] Expression-based style property getters Implemented a conversion from mbgl::style::PropertyValues to Objective-C JSON objects, which are then converted to NSExpressions. * [ios, macos] Consolidated property value–expression conversion in MGLStyleValueTransformer * [ios, macos] Predicate and expression guide Extracted documentation about predicates from a documentation comment in MGLVectorStyleLayer.h to a new jazzy guide. Added details about NSExpression support as well. Began updating the “For Style Authors” guide to reflect the transition from style values to expressions. * [ios, macos] Updated style authoring guide Updated the Information for Style Authors guide to discuss expressions instead of style functions. Included a table mapping style specification expression operators to NSExpression syntaxes. * [ios, macos] Migrated codegen templates to expressions * [ios, macos] Applied expression changes via codegen Ran make darwin-style-code. * [macos] Migrated macosapp to expressions * [ios, macos] Updated style function guide This guide needs to be thoroughly rewritten, but for now the example code has been migrated to expressions. * [ios, macos] Eviscerated style function tests * [ios, macos] Updated changelogs * [ios] Migrated iosapp to expressions * [ios, macos] Exposed JSON conversion methods publicly * [ios, macos] Removed MGLStyleValue, MGLStyleFunction
* | [ios] Optimize MGLAnnotationView scale transform when not pitchedupstream/fb-unpitched-annotation-view-scalingJason Wray2018-01-182-3/+14
| |
* | Merge branch 'release-agua' into masterFabian Guerra2018-01-172-68/+91
|\ \ | |/ | | | | | | | | | | | | | | | | # Conflicts: # platform/android/CHANGELOG.md # platform/android/MapboxGLAndroidSDK/gradle.properties # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java # platform/ios/CHANGELOG.md # platform/ios/ios.xcodeproj/project.pbxproj # platform/macos/CHANGELOG.md
| * [ios] Fix the layout constraints on iOS 11 for iPhone X (#10858)Fabian Guerra Soto2018-01-101-32/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ios] Fix the layout constraints on iOS 11 for iPhone X for the bottom ornaments. * WIP adding tests for layout of map view attribution logo and other ornaments * Rename * First pass at tests for mapview ornament layout * Additional code changes from call with Fabian and Jason * [ios] Fix ornaments insets margin space. * [ios] Fix map view layout test for pre iOS 11. * [ios] Refactor MGLMapView ornaments layout constraints for iOS 11. * [ios] Remove NSLogs from MGLMapViewLayoutTests
| * [ios] Dispatch location auth status check to backgroundJesse Bounds2018-01-041-36/+67
| | | | | | | | | | | | | | | | | | | | This attempts to work around reports of repeated calls to [CLLocationManager authorizationStatus] blocking the main thread by dispatching it to the background, serial queue that is already available in MGLMapboxEvents. This also adds a guard to the handler for the user defaults change event so that the call to pause or resume if required is done only if a user defaults value changes that would require an update to the pause / resume state. The guard works by utilizing two new state variables that keep track of the previous values for account type and metrics enabled configuration variables. The call to pause/resume is only done if the latest relevant values in the user defaults dictionary are actually different than the previous ones. The default values for the new state variables assume an account value of 0 and metrics enabled == true so there can be a small inefficiency if a user prevously opted out of telemetry, kills the app, and restarts it. In that case, the pause/resume method would get invoked one time when it would not technically need to. This should not be an issue in practice though.
* | [ios] Fix and expand accessibility feature transliterationJason Wray2018-01-103-15/+58
| | | | | | | | | | - Fixed pre-iOS 11 compatibility. - Expanded transliteration to all supported languages.
* | Merge branch 'release-agua' into masterupstream/fabian-merge-release-aguaFabian Guerra2018-01-044-16/+36
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # circle.yml # cmake/core-files.cmake # platform/android/CHANGELOG.md # platform/android/MapboxGLAndroidSDK/build.gradle # platform/android/MapboxGLAndroidSDK/gradle.properties # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/text/LocalGlyphRasterizer.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/BitmapUtils.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml # platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/DebugModeActivity.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/LocalGlyphActivity.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/userlocation/MyLocationTintActivity.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_local_glyph.xml # platform/android/MapboxGLAndroidSDKTestApp/src/main/res/values/descriptions.xml # platform/darwin/src/MGLMapSnapshotter.mm # platform/darwin/src/MGLRendererConfiguration.h # platform/ios/CHANGELOG.md # platform/ios/DEVELOPING.md # platform/ios/INSTALL.md # platform/ios/README.md # platform/ios/resources/bg.lproj/Localizable.strings # platform/ios/resources/es.lproj/Localizable.strings # platform/ios/resources/vi.lproj/Localizable.strings # platform/ios/src/MGLMapView.mm # platform/macos/macos.xcodeproj/project.pbxproj # src/mbgl/text/glyph_manager.cpp
| * [darwin, ios, macos] Introduces an MGLRendererConfiguration classAndrew Kitchen2018-01-031-13/+5
| | | | | | | | | | | | Instructions for enabling client-side rendering of CJK glyphs live in this header, and this class provides the rest of the values needed for instantiating the renderer on iOS and macOS.
| * [ios, macos] Adds support for specifying an ideographic font family nameAndrew Kitchen2018-01-031-2/+16
| | | | | | | | | | Adding a MGLIdeographicFontFamilyName to the containing app's Info.plist will result in CJK glyphs being rasterized on demand (#10522)
| * [ios] Update visible coordinates documentation to reflect antimeridian usage.Fabian Guerra2017-12-211-0/+12
| |
| * [ios] Fix ornament constrains on iOS 10Fabian Guerra2017-12-211-2/+3
| |
| * [ios] update constraints when updating content insetFredrik Karlsson2017-12-141-1/+1
| |