Commit Graph

699 Commits

Author SHA1 Message Date
Minh Nguyễn
c7b2c5c601 [ios, macos] Removed redundant typedef
Fixed a jazzy warning.
2018-01-08 16:41:53 -08: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
Fabian Guerra
cbb9002d4f [ios, macos] Update mode.hpp file path 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
38bffda85a [darwin, macos] Rename Info.plist key for consistency
Also removes related dead code in macos MGLMapView.mm
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
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
Minh Nguyễn
3685cb3589 [ios, macos] Updated MGLImageSource example
Ran make darwin-update-examples to ensure that headers reflect the tested example code.
2017-12-21 12:02:20 -08:00
Minh Nguyễn
1b407e85e9 [ios, macos] Fixed MGLMapSnapshotter test crash
Fixed a crash in MGLDocumentationExampleTests caused by an asynchronous snapshot call that the test wasn’t waiting on, compounded by the use of a style that requires an access token (as opposed to the one-liner style that uses no remote resources. Employed some Swiftisms to fulfill expectations without making the example code look weird.
2017-12-21 12:02:20 -08:00
Asheem Mamoowala
6a9eec8ed5 Fix CustomLayer context retain count (#10765)
* [core] RenderCustomLayer should de-initialize old context

* [iOS, macOS] Use toll-free bridging to retain/release MGLOpenGLStyleLayer instead of a separate array.
2017-12-20 14:51:30 -08:00
Fabian Guerra
f644d188be [ios, macos] Remove duplicated variables between MGLMapSnapshotOptions and MGLMapSnapshotter 2017-12-20 09:01:15 -06: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
Minh Nguyễn
9c1dfe46cf [ios, macos] Cleaned up base localization files
Localizable strings in Darwin classes need to specify “Foundation” as the table so that NSBundle consults the right .strings files. Reran make genstrings to add some missing strings to the base localizations and undo some manual edits to the base localizations that contained errors.
2017-12-18 11:41:56 -08:00
Jason Wray
c5e7bd35fc [ios] Fix strict prototypes warnings in blocks 2017-12-15 19:21:44 -05:00
Chris Loer
4fcf1853b0 [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.
2017-12-11 10:43:00 -08:00
Chris Loer
6dbb9eb22a [ios,macos] Update docs to use Apple-friendly "PingFang" font example. 2017-12-11 10:43:00 -08:00
Andrew Kitchen
4418edbfcd [darwin, macos] Rename Info.plist key for consistency
Also removes related dead code in macos MGLMapView.mm
2017-12-11 10:43:00 -08:00
Chris Loer
155804be4d [ios,macos] Remove dead/non-functioning font-weight and glyph metric code.
Add local font family to default iosapp configuration.
2017-12-11 10:43:00 -08:00
Andrew Kitchen
b2f06677a7 [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.
2017-12-11 10:43:00 -08:00
Chris Loer
cb380064bb [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.
2017-12-11 10:43:00 -08:00
Jason Wray
627587694d [ios, macos] Append SDK version parameter to feedback URL 2017-12-07 19:01:04 -05:00
Jordan Kiley
f89afa0b27 [ios, macos] Rename the iOS and macOS SDKs (#10610) 2017-12-06 10:13:17 -05:00
Chris Loer
966b6a53ce [core, ios, qt, android] Close race condition in RunLoop (issue #9620)
Because a message we queue from the foreground may cause the background to complete, exit, and tear down the AsyncTask, we have to block queue processing until we've finished our call to AsyncTask::send().
Broadening the scope of a mutex is scary, but I audited the code of our four implementations of AsyncTask and I don't see any way this could cause a deadlock.
2017-12-06 12:37:48 +01:00
Jordan Kiley
8f3cc3dbc4 [ios, macos] Rename the iOS and macOS SDKs (#10610) 2017-12-04 16:40:14 -08:00
Fabian Guerra
784b71a81c [ios, macos] Refactor snapshot attribution. 2017-12-04 17:04:40 -05:00
Konstantin Käfer
2eec5a1980 [core] move HeadlessBackend extension initialization code into Impl 2017-11-29 15:48:51 +01:00
Konstantin Käfer
335f04f7e1 [core] fold HeadlessDisplay into the headless RenderBackend implementation 2017-11-29 15:48:51 +01:00
Andrew Kitchen
c178bd2d25 [darwin] Fixes CGImageRef leak when creating a map snapshot (#10585) 2017-11-28 14:51:30 -08:00
Andrew Kitchen
09b97e037c [darwin] Adjusts initializer body to avoid premature ivar usage (#10582) 2017-11-28 13:43:45 -08:00
Andrew Kitchen
a2817ff5ed [darwin, macos, ios] Renames CGImage creation function to imply +1 retain count (#10570) 2017-11-27 16:47:58 -08:00
Chris Loer
5da5ba7706 [core, ios, qt, android] Close race condition in RunLoop (issue #9620)
Because a message we queue from the foreground may cause the background to complete, exit, and tear down the AsyncTask, we have to block queue processing until we've finished our call to AsyncTask::send().
Broadening the scope of a mutex is scary, but I audited the code of our four implementations of AsyncTask and I don't see any way this could cause a deadlock.
2017-11-27 14:42:44 -08:00
Asheem Mamoowala
3067b77c65 [core, ios, macos] Implement unique_any and remove linb::any 2017-11-22 13:56:38 -08:00
Asheem Mamoowala
246417ef24 [ios, macos] Implement MGLComputedShapeSource binding for CustomGeometrySource 2017-11-22 13:56:38 -08:00
Jesse Crocker
b2925e71ac [darwin] Abstract ShapeSource interface 2017-11-22 13:56:38 -08:00
Fabian Guerra
5eb050dc35 [ios, macos] Update the attribution format for small snapshots. 2017-11-17 16:40:12 -05:00
Jordan Kiley
a0cfac4c1a Update MGLMapSnapshotter docs (#10438) 2017-11-10 10:02:45 -08:00
Tobrun
225fba8a0a Merge branch 'release-agua' into tvn-merge-release 2017-11-10 06:16:35 +01:00
Fabian Guerra
a936fd6f8a [ios, macos] Cleanup duplicated snapshotter frame code. 2017-11-08 16:40:50 -05:00
Fabian Guerra
93e363bd8c [ios, macos] Add attribution to snapshots. 2017-11-07 17:56:09 -05:00
Jordan Kiley
d29ebe3d3f [ios, macos] noted how to update shape source (#10383) 2017-11-03 18:29:03 -07:00
Minh Nguyễn
2955fb594c Make places and roads accessible to VoiceOver (#9950)
* [ios] Summarize places, roads after zooming with VoiceOver

After zooming, MGLMapView’s accessibility value now indicates the number of visible roads and lists out a few places visible in the current viewport, starting with the features at the highest z-index (not necessarily the largest or the closest to the center of the view). Avoid saying that no annotations are visible.

* [ios] Allow VoiceOver to navigate among place features

Split out a separate header for the various accessibility elements tied to MGLMapView. Wrap place features in accessibility elements and insert them into the narration order after the visible annotations but before the attribution button. Refactored MGLMapView’s accessibility code to rely on ranges to avoid off-by-one errors.

* [ios] Post layout change notification when fully rendered

Post a layout change notification when fully finishing a map render.

* [ios, macos] Moved MGLVectorSource+MGLAdditions to more specific group

* [ios] Localize accessibility feature names

* [ios] Find place feature accessibility elements by identifier

* [ios] Refactored accessibility traits

Also created a new MGLPlaceFeatureAccessibilityElement class.

* [ios] Sort accessibility elements by screen distance from center

Sort annotation accessibility elements by screen distance, not the hypotenuse of coordinates, which can yield incorrect results when the map is rotated or tilted or when the user is located at high latitudes. Sort place feature accessibility elements by screen distance as well.

* [ios] Create a place feature accessibility element, not an abstract feature accessibility element

* [ios] Only query for visible place features once per camera

Improved accessibility performance after changing the map camera. MGLMapView no longer queries the map for place features once per place feature.

* [ios] Made roads accessible

Wrap visible road features in accessibility elements described by the road name, route number, and general direction of travel.

* [ios] Cleaned up radian conversions

* [ios] Thickened road accessibility elements

* [ios] Made unioned roads accessible

* [ios] Consistently sort accessibility elements

Also fixed an issue causing road feature accessibility elements to get treated like place feature accessibility elements.

* [ios] Announce direction of divided roads

Announce the direction of a divided road based on the direction of its first polyline.

* [ios] Refined announced elevation units

* [ios] Romanize feature names

* [ios] Updated changelog

* [ios] Delay zoom announcement

A 100-millisecond delay is enough for the post-zooming announcement to reflect the new zoom level rather than the previous zoom level.

* [ios] Consolidated geometry functions

Adopted MGLGeometry_Private.h in the accessibility code, forcing a conversion to Objective-C++. Avoid inlining some of the more complex geometric functions.

* [ios] Fixed feature name romanization in accessibility labels

NSLocale.scriptCode is only set when the locale identifier explicitly specifies a script. Use NSOrthography to identify the dominant orthography regardless of locale.

Also added a unit test of feature accessibility element labels.

* [ios] Added tests for place, road accessibility values

* [ios] Announce one-way roads

A road feature’s accessibility value now indicates whether the road is a one-way road.
2017-11-03 12:17:45 -07:00
Ivo van Dongen
74b51f90b2 [darwin] MGLMapSnapshot - add missing EXPORT 2017-11-01 09:23:53 -04:00
Fabian Guerra
026cb6f49b [ios, macos] Fix MGLMapSnapshotter documentation typo. 2017-11-01 09:23:53 -04:00
Ivo van Dongen
74662831f6 [darwin] map snapshotter - expose attributions 2017-11-01 09:23:53 -04:00
Ivo van Dongen
de9098cf99 [darwin][ios][macos] map snapshotter - add MGLMapSnapshot wrapper 2017-11-01 09:23:53 -04:00
Ivo van Dongen
e9568ccda7 [darwin] map snapshotter - snapshotter mutability 2017-11-01 09:23:53 -04:00
Ivo van Dongen
a42455c56a [darwin] MGLMapSnapshot - add missing EXPORT 2017-11-01 10:46:23 +02:00