Commit Graph

1756 Commits

Author SHA1 Message Date
Minh Nguyễn
e6d6a231e8 [ios, macos] Added Danish localization 2018-02-07 02:34:29 -08:00
Minh Nguyễn
bffc834ff1 [ios] Updated Swedish translations 2018-02-07 02:34:29 -08:00
Minh Nguyễn
6757456e16 [android, ios, macos] Updated Russian translations 2018-02-07 02:34:29 -08:00
Minh Nguyễn
1d48a7d2ff [ios] Removed byte order mark 2018-02-07 02:34:29 -08:00
Minh Nguyễn
02e6265c83 [ios] Made NSExpression+MGLAdditions.h public 2018-01-29 21:34:41 -08:00
Fabian Guerra Soto
306898d77b [ios] Update changelog and bump pod spec to 4.0.0-beta.1 (#11069)
* [ios] Update changelog and bump pod spec to 4.0.0-beta.1

* [ios, macos] Reorganized changelog entries

* [ios] Add missing changelog entries.

* [ios, macos] Rolled up core changes into changelogs
2018-01-26 15:56:03 -05:00
Minh Nguyễn
045392938b [ios] Fixed syntax error in style author guide 2018-01-26 10:42:23 -08:00
Fabian Guerra
91521fa106 [ios] Fix image property of MGLAnnotationImage does not update. 2018-01-26 10:20:30 -05:00
Minh Nguyễn
b6747a84f4 [ios, macos] Hook up hillshade style layers, raster DEM sources to iOS/macOS (#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
2018-01-25 10:46:27 -08:00
Minh Nguyễn
fb5b8d34f2 Reimplement style values atop NSExpression (#10726)
* [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
2018-01-24 00:04:02 -08:00
Molly Lloyd
f3294200c6 [core] add raster-dem source type and hillshade layer type (#10642) 2018-01-23 10:49:23 -08:00
Minh Nguyễn
4fc070dcfd [ios, macos] Converted strings files to UTF-8 2018-01-19 18:09:59 -08:00
Minh Nguyễn
7cc0029758 [android, ios, macos] Updated Ukrainian translations 2018-01-19 18:09:59 -08:00
Minh Nguyễn
2820d97237 [android, ios, macos] Updated Swedish translations 2018-01-19 18:09:59 -08:00
Minh Nguyễn
e329004f26 [android, ios, macos] Updated French translations 2018-01-19 18:09:59 -08:00
Andrew Kitchen
d0193c5b2b Restores fix to MGLOpenGLStyleLayer memory-related crash (#10765)
Revert this commit to see integration test fail.
2018-01-19 20:28:57 -05:00
Andrew Kitchen
2c48871c06 Adds an integration test harness to the iOS project
This will allow us to write lightweight integration tests between MGLMapView and the core renderer.
Also includes a test for the recent custom layer memory fix, reverting the fix in order to demonstrate the failing test.
2018-01-19 20:28:57 -05:00
Minh Nguyễn
40a0b2deb7 [android, ios, macos] Added Hebrew localization 2018-01-19 15:57:54 -08:00
Jason Wray
7c2e8c5eb1 [ios] Remove support for 32-bit simulators (i386)
And restore some docs that got lost in a merge.
2018-01-19 10:25:17 -05:00
Jason Wray
42845ad63f [ios] Optimize MGLAnnotationView scale transform when not pitched 2018-01-18 13:59:43 -05:00
Jesse Bounds
fa3dee93f8 [ios] Remove unused reference to reachability
This removes a reference to reachability that has been used and incorrect since the file does not exist at the referenced location.
2018-01-17 11:52:48 -08:00
Fabian Guerra
42bcb4b405 Merge branch 'release-agua' into master
# 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
2018-01-17 09:41:37 -05:00
Jason Wray
0806e16eb3 [ios] Fix and expand accessibility feature transliteration
- Fixed pre-iOS 11 compatibility.
- Expanded transliteration to all supported languages.
2018-01-10 17:26:11 -05:00
Fabian Guerra
9e96aa1923 [ios] Bump podspec to v3.7.3 2018-01-10 15:48:01 -06:00
Fabian Guerra Soto
0542ece0bf [ios] Fix the layout constraints on iOS 11 for iPhone X (#10858)
* [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
2018-01-10 14:28:55 -06:00
Jason Wray
a170c18bb2 [ios] Make all headers members of both dynamic and static targets (#10851)
Many headers were not members of the static target, while all already belonged to the dynamic target.
2018-01-10 13:31:11 -05:00
Minh Nguyễn
dcd7019e7d [ios, macos] Updated changelogs 2018-01-05 18:57:06 +00:00
Minh Nguyễn
4731e0c7f1 [ios, macos] Updated changelogs 2018-01-05 18:54:27 +00:00
Fabian Guerra
187b6dc31c Merge branch 'release-agua' into master
# 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
2018-01-04 12:55:19 -06:00
Jesse Bounds
9c9ad538f8 [ios] Dispatch location auth status check to background
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.
2018-01-04 10:38:52 -08:00
Tobrun
dadd90e4e9 [all] - update licenses to 2018 2018-01-03 18:41:25 +01:00
Andrew Kitchen
760ef23ac3 [ios, macos] Updates documentation with default CJK font recommendations
Also updates the font to use for rendering CJK ideographs in our sample
apps to `PingFang TC`, as simply specifying `PingFang` was always
triggering iOS's font fallback behavior.

[Fixes #10675]
2018-01-03 11:37:53 -06:00
Chris Loer
e8abb8c81a [ios,macos] Revert ideographic->ideograph name change.
Original GL JS name was meant to represent "font family to use for locally generating ideographs", but "ideographic font family" communicates a similar intent more concisely.
2018-01-03 11:37:53 -06:00
Chris Loer
b94929ca08 [ios,macos] Update docs to use Apple-friendly "PingFang" font example. 2018-01-03 11:37:53 -06:00
Chris Loer
45e59e4da8 [ios,macos] Remove dead/non-functioning font-weight and glyph metric code.
Add local font family to default iosapp configuration.
2018-01-03 11:37:53 -06:00
Andrew Kitchen
3fd2eb2557 [macos, ios] Adds documentation for the MGLIdeographFontFamilyName key 2018-01-03 11:37:53 -06:00
Andrew Kitchen
314c51611c [darwin, ios, macos] Introduces an MGLRendererConfiguration class
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.
2018-01-03 11:37:53 -06:00
Andrew Kitchen
c1705f37fb [ios, macos] Adds support for specifying an ideographic font family name
Adding a MGLIdeographicFontFamilyName to the containing app's Info.plist
will result in CJK glyphs being rasterized on demand (#10522)
2018-01-03 11:37:53 -06:00
Chris Loer
0dc00ad877 [ios,macos] Darwin implementation of a CoreText-based LocalGlyphRasterizer.
- Changing font weight does not currently appear to be working.
 - Glyph metric extraction code not working; currently unused.
2018-01-03 11:37:53 -06:00
Jason Wray
637892cd6f [ios, macos] Move private categories into explicitly private headers
Instead of creating `MGLAdditions` categories/files for our own classes, this standardizes on the `Private` convention that we had been using elsewhere.

This also fixes build errors where the `MGLAdditions` categories weren't importing their parents.
2018-01-02 19:36:31 -05:00
Andrew Kitchen
54c4b83312 [ios, macos] Updates documentation with default CJK font recommendations
Also updates the font to use for rendering CJK ideographs in our sample
apps to `PingFang TC`, as simply specifying `PingFang` was always
triggering iOS's font fallback behavior.

[Fixes #10675]
2018-01-02 18:46:40 -05:00
Jason Wray
4709bf0529 [ios] Update custom install docs for Xcode 9.1 2017-12-22 11:12:18 -08:00
Minh Nguyễn
c1831229ac [ios, macos] Copyedited changelogs
macOS map SDK v0.6.0 has yet to be released.
2017-12-22 08:42:48 -08:00
Fabian Guerra
3b254a7fbd [ios] Update changelog. Podspec bump to v3.7.2 2017-12-21 15:15:38 -06:00
Jason Wray
c6169ab50c [ios] Re-add i386 slice to framework; strip from dSYM 2017-12-21 12:09:43 -08:00
Fabian Guerra
ff62fa957c [ios] Update visible coordinates documentation to reflect antimeridian usage. 2017-12-21 14:04:09 -06:00
Fabian Guerra
b9ef272730 [ios] Fix ornament constrains on iOS 10 2017-12-21 13:50:00 -06:00
Jason Wray
8e69a35d75 [ios, build] Stop packaging i386 simulator arch
Only builds and packages x86_64 architecture in our frameworks and dSYM. Removes support for 32-bit simulators, such as the iPhone 5 and iPad 2. This does not affect device support — 32-bit devices are still supported via the arm7 architecture.
2017-12-20 17:36:06 -08:00
Minh Nguyễn
7f5dfb16bc Update iOS, macOS SDK translations (#10738)
* [ios, macos] Updated Bulgarian, Spanish, Vietnamese localizations

* [ios, macos] Added Arabic localization

* [ios, macos] Updated localizations
2017-12-20 02:26:05 -08:00
Chris Loer
a53818a10b [core] Enable local glyph generation using TinySDF.
- Platform-specific LocalGlyphRasterizer is responsible for deciding which glyphs to rasterize locally and for implementing the rasterization.
 - Default platform implementation doesn't locally generate any glyphs -> no behavior change
 - Unit test uses StubLocalGlyphRasterizer, which returns a single fixed bitmap for all CJK glyphs
 - Rename glyph_loader.test to glyph_manager.test
2017-12-18 12:17:22 -08:00