Commit Graph

189 Commits

Author SHA1 Message Date
Minh Nguyễn
5f1144f05a [osx] Fixed framework mastering 2016-05-11 13:37:34 -07:00
Bruno de Oliveira Abinader
c13dd32242 [core] Added Viewport mode
Satisfies embedding platforms that requires the viewport coordinate
systems to be set according to its standards e.g. viewport mirrored
vertically.
2016-05-11 15:48:51 +03:00
Minh Nguyễn
659c2568ec [core, osx] Updated changelogs 2016-05-11 00:09:01 -07:00
Minh Nguyễn
d14ca37570 [osx] Fixed nested framework
An error in the packaging script caused Mapbox.framework to be placed inside a folder named Mapbox.framework. This change moves the framework up one level.
2016-05-10 17:37:03 -07:00
Minh Nguyễn
03a20cd662 Update INSTALL.md 2016-05-10 17:22:10 -07:00
Minh Nguyễn
5db85a4d7d [osx] Updated changelog for v0.1.0 2016-05-10 13:58:33 -07:00
Minh Nguyễn
eb1e6c0f0c [osx] Automate framework packaging
Added a package script and make rule that parallels the iOS SDK package script and make rule, but with far fewer intricacies.
2016-05-10 10:18:23 -07:00
Minh Nguyễn
1634058b51 [ios, osx] Reformatted documentation comments
Reformatted documentation comments in public headers in the OS X SDK and public headers shared between the iOS and OS X SDKs to wrap at column 80 and avoid excessive indentation that causes SourceKitten to detect code blocks.
2016-05-10 09:59:04 -07:00
Minh Nguyễn
a025d8327a [osx] Added changelog
Also updated developer installation guide to refer to the new make rule for generating documentation.
2016-05-10 09:59:04 -07:00
Minh Nguyễn
5616cd2bb1 [osx] Added OS X SDK documentation target
Added a target, script, and make rule for generating OS X SDK documentation with jazzy, along with a docset cover page.

Switched the umbrella header from framework header syntax to user header syntax so SourceKit can find all the headers.

Fixes #4871.
2016-05-10 09:59:04 -07:00
Minh Nguyễn
b3d4a5cbf8 [ios, osx] Find nearby annotation when not persisting query
Fixed an issue that made the osxapp context menu only apply to the right-clicked pin after first selecting the pin. This also happened to be a latent bug in the iOS implementation.
2016-05-09 13:13:31 -07:00
Minh Nguyễn
e4d32b5cbe [osx] Removed two-finger tap zoom-out gesture
As in MapKit, a two-finger tap should be interpreted as a secondary click to open the context menu, if applicable. It should not zoom out; rather, a double-tap on a mouse should zoom out (“smart magnification”).
2016-05-09 13:11:03 -07:00
Minh Nguyễn
5d2929ed0e [osx] Hooked context menu back up to map view
These connections were lost in #3427.

Fixes #3493.
2016-05-09 13:06:13 -07:00
Minh Nguyễn
df1cae8d3a [osx] Exclude subviews from click gestures
Fixes #3418.
2016-05-09 00:17:22 -07:00
John Firebaugh
771e79a769 [core] Update geometry to 0.3.0 2016-05-06 11:59:29 -07:00
Minh Nguyễn
2ec95bc490 [ios, osx] Renamed version constant, linked to more info
Renamed MGLStyleCurrentVersion to MGLStyleDefaultVersion to emphasize the constant’s role as an indicator of the default version used by SDK classes, which may be behind depending on release schedules. In the documentation for each style URL method, include the actual version number instead of the constant. In unit tests, verify that this documentation is in sync with the constant.

Link each style URL method’s documentation to a forthcoming webpage on mapbox.com that describes the style in rich detail.
2016-05-06 11:06:52 -07:00
Minh Nguyễn
5ccb43477f [ios, osx] Renamed Hybrid to Satellite Streets
The style ID has also changed, but the unversioned method will continue to point to the old v8 style ID.
2016-05-06 11:06:51 -07:00
Minh Nguyễn
2a4eeadb29 [core, ios, osx] Version default style URL APIs; deprecated Emerald
Updated default styles from v8 to v9. Deprecated the MGLMapView class methods in favor of new methods that take a version parameter. Deprecated Emerald outright in favor of Outdoors. Replaced usage of the unversioned MGLStyle methods with the corresponding versioned methods and MGLStyleCurrentVersion to ensure consistency.

Expanded MGLStyle unit tests to also assert that MGLStyle has the right number of style URL methods and that they’re all public. Linked the OS X SDK unit test bundle to libmbgl-core.a. Removed an unnecessary dependency on osxapp.

Replaced Emerald with Outdoors in iosapp and osxapp.

Fixes the iOS and OS X side of #4577 and #4702.
2016-05-06 10:57:54 -07:00
Minh Nguyễn
d28b6f3719 [ios, osx] Avoid recomputing tile cache size on every redraw
The tile cache size is only recomputed when an input changes.

Fixes #4026.
2016-05-06 08:47:18 -07:00
Minh Nguyễn
8a7087af68 [osx] Display print dialog after drawing
Fixes #4956.
2016-05-06 08:11:50 -07:00
John Firebaugh
9330d674a9 [core] Use geometry.hpp's point 2016-05-05 11:30:53 -07:00
John Firebaugh
ce2a06e677 [core] Privatize math.hpp and vec.hpp 2016-05-05 11:16:57 -07:00
John Firebaugh
10e522d10b [core] Privatize various util headers (#4945) 2016-05-04 14:09:51 -07:00
John Firebaugh
c8391729c7 [core] Use geometry.hpp feature type 2016-05-03 17:25:49 -07:00
Dane Springmeyer
c82b02c508 [core] port to protozero (#4906) 2016-05-03 13:57:17 -07:00
Dane Springmeyer
d4070d3356 Merge pull request #4919 from mapbox/follow-to-4916
Boost headers are no longer needed in project files after #4916
2016-05-02 16:53:10 -07:00
John Firebaugh
7800445c85 [core] Use gyp's direct_dependent_settings to propagate variant cflags 2016-05-02 13:12:24 -07:00
John Firebaugh
34f9618d31 [core] Replace boost::lexical_cast with std::to_string
This removes the only boost dependency from public headers.
2016-05-02 13:08:51 -07:00
John Firebaugh
10528091db [core] Upgrade to boost 1.60.0 (#4899) 2016-04-28 15:21:50 -07:00
Konstantin Käfer
4770a9eb21 [osx] make scrollwheel zooming smoother
- uses the same algorithm as the GLFW app to determine scrollwheel zoom speed
- disables transitions which makes the trackpad feel faster due to immediate response
2016-04-26 10:42:33 +02:00
Konstantin Käfer
f9bdaa9d3a [osx] disable touch events
they are canceling out trackpad scrolling events
2016-04-26 10:42:33 +02:00
Minh Nguyễn
0339639e3d [osx] Fixed crash on launch on OS X 10.10
Fixed a crash introduced in #4783 that occurs when launching osxapp. -[NSString localizedCapitalizedString] is only available on OS X 10.11 and above.
2016-04-25 13:59:43 -07:00
Minh Nguyễn
19f4236ebb [ios, osx] Document common workflows
We have a lot of targets now, and it isn’t always clear to new contributors where files end up. Hopefully this brief guide to adding files will help.
2016-04-24 16:18:23 -07:00
Minh Nguyễn
95613bd7dd [ios, osx] Made OS X SDK localizable
Replaced the iOS-specific ilocalize make rule with a genstrings make rule that creates iOS, OS X, and shared strings files. Moved the override English .stringsdict file under darwin/resources/. Made the default OS X callout view XIB localizable. Made some hard-coded strings in the OS X SDK source localizable.
2016-04-24 16:18:23 -07:00
Minh Nguyễn
e4752912da [ios, osx] Corrected clock, coordinate formats
Long unit style isn’t intended to be spelled out, so the clock and coordinate direction formatters now use numerals for long unit style, differing from medium unit style in less drastic ways. The locale no longer needs to be exposed, since it’ll always match the overall string’s locale. Added support to the coordinate formatter for different unit styles. Made minutes and seconds of arc optional.

Maintain strings for darwin/ formatter classes in a separate Foundation strings table that can be shared between the iOS and OS X SDKs. Added an English .stringsdict override that correctly pluralizes units.

Capitalize osxapp window titles, now that they spell out the directions.
2016-04-24 16:13:54 -07:00
Minh Nguyễn
3e22369f27 [ios, osx] Eliminated platform/{ios,osx}/include
Also updated various project references to be group-relative, so Xcode chooses the right directory by default when adding a new file.

Fixes #4770.
2016-04-23 10:35:59 -07:00
Minh Nguyễn
2d32336a41 [osx] Moved resources one level up
Moved SDK resources to sdk/, by analogy with framework/ for iOS resources.

Moved the umbrella header into include/, for consistency with the iOS SDK.
2016-04-23 10:15:18 -07:00
Minh Nguyễn
2d19a70b00 [osx] Added screenshot 2016-04-22 17:13:33 -07:00
Minh Nguyễn
df0d1187da [ios, osx] Fixed direction, pitch restoration
Followup to #4790. Fixed a regression preventing the direction and pitch from being persisted across sessions.
2016-04-22 17:09:25 -07:00
Minh Nguyễn
466ed55200 [core, ios, osx] cameraThatFitsCoordinateBounds
Added an API to get a camera that you can pass into -[MGLMapView setCamera:] that fits the given coordinate bounds, by analogy with -[MKMapView regionThatFits:] or -[MKMapView mapRectThatFits:edgePadding:].

Added mbgl::Map::getCameraOptions() for getting the current camera options more conveniently.
2016-04-22 16:39:25 -07:00
Minh Nguyễn
1039f21527 [ios, osx] Fixed dangling KVO observer crash
Fixed a crash when deallocating an MGLMapView that has point annotations. Now we explicitly remove all the annotations from the view and thus remove all remaining KVO observers on those annotations.

Fixes #4805.
2016-04-22 15:43:55 -07:00
Minh Nguyễn
9c9ff2d2d4 [ios, osx] Updated build system for jazzy
Consolidated NSValue categories to work around realm/jazzy#539. Documented MGLErrorCode. Moved jazzy configuration file into platform/ios/. Removed redundant include/Mapbox.h that was only being used by jazzy, now that the static frameworks’s umbrella header is based on that of the dynamic framework. Moved framework/Mapbox.h to include/Mapbox.h for consistency.
2016-04-22 12:31:42 -07:00
Minh Nguyễn
2a1a5f0885 [ios, osx] Split MGLDirectionFormatter in two
Split MGLDirectionFormatter into MGLClockDirectionFormatter, which specializes in clock positions, and MGLCompassDirectionFormatter, which boxes the compass. This neatly avoids any confusion that might arise if the developer fails to read the documentation and thinks the original unified formatter can convert between the two types of directions.
2016-04-22 11:29:10 -07:00
Minh Nguyễn
e5c6cfde4b [ios, osx] Direction formatter
Implemented an NSFormatter for formatting CLLocationDirection values as localizable display strings. The formatter supports both absolute compass directions, such as “south”, and relative “clock” directions, such as “6 o’clock”.
2016-04-22 11:13:03 -07:00
Minh Nguyễn
91023f02f8 [ios, osx] Coordinate formatter
Added a degree-minute-second coordinate formatter for general use. Use this formatter in iosapp and osxapp.

Added unit tests for the coordinate formatter and for round-tripping geometry types through NSValue.
2016-04-22 11:13:03 -07:00
Minh Nguyễn
e898b0a459 [osx] Reset pending min/max zoom levels
Followup to #4789.
2016-04-21 17:05:21 -07:00
Minh Nguyễn
3a22033b90 [ios, osx] Constrain zoom level when selecting offline pack
When selecting an offline pack for display in iosapp or osxapp, constrain the zoom level to the pack’s minimum and maximum zoom levels.

Fixes #4787.
2016-04-21 16:50:45 -07:00
Minh Nguyễn
0dbec51401 [ios, osx] Copyedited installation documentation
Copyedited installation documentation to make sense to less experienced Xcode users, ensure consistency, remove redundant language, and reflect recent build changes.
2016-04-21 14:43:49 -07:00
Minh Nguyễn
2aaa8b9474 [ios, osx] Ignore invalid observation context
If a subclass of MGLMapView registers itself as an observer of a non-multipoint annotation’s coordinate key path but fails to handle the change in its -observeValueForKeyPath:ofObject:change:context: implementation, the context would likely be a value other than the annotation’s tag. In that case, avoid doing anything in response to the coordinate changing. Even if the context in that case happens to match the annotation’s tag – say, because the developer passed in NULL (which is equal to 0) for the first added annotation (which would have a tag of 0) – the result would be an unnecessary but harmless update.
2016-04-20 14:23:57 -07:00
Minh Nguyễn
72086edb6e [ios, osx] Avoid observing coordinate on MGLMultiPoint
There’s no point observing the coordinate key path on MGLMultiPoint, since that property is immutable. Use the observation context instead of performing an annotation tag lookup when a coordinate has changed.
2016-04-20 14:23:57 -07:00