Commit Graph

1704 Commits

Author SHA1 Message Date
Jason Wray
9a30e252b5 [ios] Bump podspecs for 3.7.5 2018-02-16 20:06:32 -05:00
Jason Wray
9989e71e3f [ios] Fix loop when first asking for location permission (#11229) 2018-02-16 20:01:03 -05:00
Fabian Guerra Soto
3a0c87b1b4 [ios] Bump podspec to 3.7.4 (#11179)
* [ios] Bump podspec to 3.7.4

* [ios, macos] Update changelogs.
2018-02-12 17:37:00 -05:00
Fabian Guerra Soto
024e75bd56 [ios, macos] Fix memory leaks in MGLMapSnapshotter. (#11133) 2018-02-12 16:47:16 -05:00
Julian Rex
9ee99c91bb [ios] Adds camera change delegate methods with reason parameter. (#11151)
Added missing notification handler for UIApplicationWillResignActiveNotification.
2018-02-12 16:37:21 -05:00
Minh Nguyễn
101b55b0f0 [ios, macos] Added option to restrict tile source to bounds
Cherry-picked from c3bf7c55a1.
2018-02-08 12:39:30 -08:00
Randall C Lee
638ab799ed Adjust radius (#11132) 2018-02-06 15:34:46 -05:00
Randall C Lee
332dad2a4e [ios] Add Radius Configuration (#11070)
* Add Radius Configuration

* Remove default config

- removes default configuration
- moves config setup to events init method
- renames config class

* Delete MGLConfig header file
2018-02-05 16:17:57 -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
Minh Nguyễn
4731e0c7f1 [ios, macos] Updated changelogs 2018-01-05 18:54:27 +00: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
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
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
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
Fredrik Karlsson
74b0627432 [ios] update constraints when updating content inset 2017-12-14 12:38:55 -06:00
Fabian Guerra
177afa9a0d [ios] Fix an Interface Builder crash for IBInspectable properties. 2017-12-14 09:48:23 -06:00
Fabian Guerra
d650b91c00 [ios] Fix the content insets for the scale and compass view. 2017-12-14 09:45:44 -06:00
Fabian Guerra Soto
05d2a539fd [ios] Update changelog and bump podspec to 3.7.1 (#10651) 2017-12-06 14:02:39 -05:00
Jordan Kiley
f89afa0b27 [ios, macos] Rename the iOS and macOS SDKs (#10610) 2017-12-06 10:13:17 -05:00
Julio Cesar Fausto
6893888435 [ios, macos] Snapshot classes added to jazzy 2017-12-05 17:24:41 -05:00
Fabian Guerra
06a0c03605 [ios, macos] Update changelogs. 2017-11-30 14:31:30 -05:00
Fabian Guerra
0c50da6913 [ios, macos] Fix an issue that triggers didSelectAnnotations for MGLAnnotationImage based annotations. 2017-11-30 14:31:30 -05:00
Fabian Guerra
787c782749 [ios] Fix minimumZoomLevel is not getting set. 2017-11-29 19:11:35 -05:00
Jesse Bounds
bcfe51c16c [ios] Add easy to use demo app for developers (#10524)
This updates the package script to include a pre-built iOS app in the published assets of the dynamic SDK. It symlinks the Mapbox.framework in that dynamic build to the demo app so the only real increase in size is the demo Xcode project itself.

The addtional step in the publish script checks that the Mapbox.framework that is symlinked in for building in the demo project can actually be built. If it cannot, then the step is skipped and the build will continue as it normally would. Since the demo app is currently not required for publishing it should not block publishing a build.
2017-11-22 10:28:43 -08:00
Fabian Guerra
131167e1d3 [ios] Update changelog and bump podspec to 3.7.0 2017-11-17 17:28:14 -05:00
Fabian Guerra
5eb050dc35 [ios, macos] Update the attribution format for small snapshots. 2017-11-17 16:40:12 -05:00
Jason Wray
f6c9dd6b25 [ios] Update puck arrow stroke color when tint changes
🤤
2017-11-16 17:15:59 -05:00
Fabian Guerra
739f88e61f [ios] Update podspecs to v3.7.0-rc.1 2017-11-14 16:04:54 -05:00
Minh Nguyễn
43c6f6b3b0 [ios] Updated Spanish, Vietnamese translations 2017-11-14 11:53:49 -08:00
Fabian Guerra Soto
addefe539a [ios] Fix toCamera.centerCoordinate in shouldChangeFromCamera (#10433)
* [ios] Fix toCamera.centerCoordinate in shouldChangeFromCamera has same center as oldCamera.

* [ios] Update changelog.

* [ios] Remove unnecessary variables.

* [ios] Clarify changelog doc.
2017-11-14 13:37:45 -05:00
Jordan Kiley
91dabd01df [ios] Silence smart invert warnings (#10425) 2017-11-09 13:09:16 -08:00
Nadia Barbosa
bfdd0c5031 [ios] Doc fixes for "Adding Points to a Map" guide 2017-11-09 13:11:09 -05:00
Fabian Guerra
3efb740b42 [ios] Bump podspec to beta.4 2017-11-07 18:41:47 -05: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
de9098cf99 [darwin][ios][macos] map snapshotter - add MGLMapSnapshot wrapper 2017-11-01 09:23:53 -04:00