Commit Graph

128 Commits

Author SHA1 Message Date
Konstantin Käfer
f70f604e5b [core] Privatize gl/gl.hpp 2017-03-28 13:53:19 +02:00
Konstantin Käfer
a84aa453a9 [core] Privatize OpenGL/Context headers 2017-03-28 13:53:19 +02:00
Konstantin Käfer
234384ece9 [core] Move OpenGL extension initialization to Backend 2017-03-23 14:50:11 -07:00
Konstantin Käfer
8e5214144e [core] Ensure that a BackendScope exists when doing GL calls 2017-03-23 14:50:11 -07:00
John Firebaugh
e488ca702e Merge branch 'release-ios-v3.5.0-android-v5.0.0' 2017-03-21 12:04:20 -07:00
Bruno de Oliveira Abinader
2dbda72c45 [macos] Updated MapObserver::onSourceChanged 2017-03-21 17:36:56 +02:00
Minh Nguyễn
f846205eb6 [ios, macos] Fix map load error descriptions (#8466)
* [ios, macos] Corrected map load error descriptions

Ensured the uniqueness of localizable string IDs. Ran make genstrings to add the -[MGLMapViewDelegate mapViewDidFailToLoad:withError:] error description strings to the base localization.

* [ios, macos] Moved failure error changelog entry to new release
2017-03-18 14:59:11 -07:00
Bruno de Oliveira Abinader
df0dfa162b [macos] Update changes in MapObserver::onDidFailLoadingMap 2017-03-17 11:25:48 +02:00
Bruno de Oliveira Abinader
23c0b705ff [macos] Support mbgl::MapObserver 2017-03-15 14:53:32 +02:00
Minh Nguyễn
4430e65603 [ios, macos] Expanded feature querying documentation
Also fixed a couple incorrect Swift method names on macOS.
2017-03-14 14:42:57 -07:00
Minh Nguyễn
936cc33d52 [ios, macos] Resolved unused variable warnings
Resolved unused variable warnings in Release configuration that occurred because they were only used within NSAssert() invocations, which are omitted from Release builds.
2017-03-13 11:05:38 -07:00
Minh Nguyễn
b74d7bfdb4 [ios, macos] Corrected polyline equality
Now that annotation classes override -isEqual:, it’s no longer appropriate to rely on -isEqual: or -containsObject: to check for the preexistence of an annotation. Those methods become deep equality tests, which have worse performance. Checking for identity allows the developer to add a polyline and polygon with identical coordinates, title, etc. to the map.

Implemented a missing -[MGLPolyline isEqual:].

Removed outdated comments about -annotationTagForAnnotation: being expensive.
2017-03-10 15:08:00 -08:00
John Firebaugh
65f74224ab Merge master into release-ios-v3.5.0-android-v5.0.0 2017-03-08 17:31:03 -08:00
Ivo van Dongen
f591421aaa [macos] add missing method declarations for visibleFeaturesX 2017-03-07 18:23:32 -08:00
Jordan Kiley
ece19acd10 [ios, macos] Added a timing note for two delegate methods (#8259) 2017-03-07 17:39:42 -08:00
Ivo van Dongen
161ae804c2 [ios, macos] Add support for queryRenderedFeatures filter 2017-03-04 15:42:07 -08:00
Asheem Mamoowala
60d10dd27d [core] Add support for queryRenderedFeatures filter 2017-03-04 15:42:07 -08:00
Minh Nguyễn
7e9701283f [ios, macos] Update callout when relocating annotation
When relocating a selected point annotation, update the associated callout (popover) rather than deselecting the annotation.
2017-03-03 22:09:41 -08:00
Fabian Guerra Soto
1f1cc131ea [ios] Fixed conversion between Duration and NSTimeInerval (#8276) 2017-03-03 20:11:06 -05:00
Minh Nguyễn
2f388d6635 Merge branch 'release-ios-v3.4.0' into 1ec5-release-ios-v3.4.2 2017-02-21 22:47:15 -08:00
Minh Nguyễn
b512af6a66 [ios, macos] Smarten apostrophes after backticks
jazzy is inconsistently converting straight apostrophes that immediately follow backticks into either ‘ or ’ from one run to the next. Smarten the apostrophe to keep it stable.
2017-02-21 22:14:29 -08:00
Konstantin Käfer
e5b9605ab2 [macos] reuse OpenGL context when switching screens
Cherry-picked from 43e81509fb.
2017-02-20 12:34:05 -08:00
Konstantin Käfer
3ef9e26593 [ios,macos,android,qt] use shared threadpool 2017-02-20 19:26:06 +01:00
Konstantin Käfer
03a14ff000 [darwin] move RunLoop initialization to static variable 2017-02-20 14:36:27 +01:00
Minh Nguyễn
d790132eda [ios, macos] Short-circuit redundant camera changes
Avoid canceling transitions (and triggering preexisting completion handlers) until we get a chance to ensure that a new transition really does have to begin. Consistently avoid mbgl transitions for redundant camera changes. Upon bailing, schedule the completion handler to run asynchronously on a delay equivalent to the requested animation duration.

Added a “functional” equality method to MGLMapCamera that avoids trivial differences.

Fixed invocations of XCTAssertEqualWithAccuracy() that incorrectly expressed the accuracy as a number of digits rather than a scalar tolerance.
2017-02-18 14:14:09 -08:00
Minh Nguyễn
b06ae5e6b7 [macos] Make ± key bindings respect tab order, zoomEnabled 2017-02-15 22:51:30 -08:00
Eimantas Vaiciunas
d8bdc7307d [macos] Make + and - keys zoom the map
Override `insertText:`

- send all `keyDown:` events to `interpretKeyEvents:` method;
- in `insertText:` method check for the text to be sent and
  adjust zoom level if needed;
2017-02-15 22:51:30 -08:00
Konstantin Käfer
43e81509fb [macos] reuse OpenGL context when switching screens 2017-02-14 14:15:36 +01:00
Jason Wray
d12ac71ba7 [macos] Round non-freeform zoom gestures/commands to nearest integer
Affects:
 - Double-tap gestures
 - Two-finger tap gestures
 - +/- button pushes
 - Shortcut keys
 - Menu items and shortcut keys (in macapp)
2017-02-13 18:35:04 -05:00
Minh Nguyễn
272dc3f6a9 Delegate method to restrict movement (#5584)
* [ios, macos] Added delegate method to restrict movement

Added a way for the delegate to restrict where the user can move within the map using gestures.

Fixes #2457.

* [ios] Added support to restrict movement in pinch/rotate gestures

* [ios] Added support to restrict movement in double tap/quick zoom/two finger drag gestures

* [ios] fixed camera reset before two finger drag gesture is complete

* [ios] fixed camera comparison in double tap gestures

* [ios] Changelog update

* [macos] Changelog updated

* [ios, macos] Changelog cleanup

* [ios, macos] Added documentation to clarify performance impact

* [ios] clarified variable name

* [ios] blocking gestures implementation changed to a predictive approach

* [ios] gesture delegate methods refactoring

* [ios] Removed duplicated methods, improved code readability

* [ios] code refactoring to clarify the conditions to execute a gesture
2017-02-09 16:49:04 -05:00
danielmatzke
937fa0ce44 [ios, macos] 7955 fix MGLMapView leaks MGLReachability objects (and threads) (#7956)
* fix MGLMapView leaks MGLReachability objects (and threads)

* fix leak of MGLReachability objects and threads in MGLMapView.commonInit

* update changelogs
2017-02-06 16:02:35 -08:00
Fredrik Karlsson
2ab3af4b1b [ios, macos] added a distance formatter 2017-01-27 19:41:13 +01:00
Minh Nguyễn
e10360f34a [macos] Warn if access token needed but not given
When setting a nil style URL or any mapbox: style URL, if no access token has been provided, log a warning instead of asserting.
2017-01-27 09:14:02 -08:00
Konstantin Käfer
62ea1f2185 [core] remove trailing whitespace, add trailing newlines, add space after // 2017-01-27 11:44:16 +01:00
Minh Nguyễn
a662508ddd Merge branch 'release-ios-v3.4.0' into 1ec5-release-ios-v3.4.1-master 2017-01-26 17:56:46 -08:00
Konstantin Käfer
e35c1f8c87 [macos] align HeadlessDisplay with SDK OpenGL context creation options
Cherry-picked from 2a077eaa5483b243e817a328adaea1027a48e7a7.
2017-01-26 08:01:03 -08:00
Konstantin Käfer
b826d043d0 [macos] allow using the integrated GPU on dual-GPU machines
Cherry-picked from e7a7c6be789198a8155dc229ea509dd7aecf4756.
2017-01-26 08:01:03 -08:00
Konstantin Käfer
19bd68d3a2 [macos,ios] don't roundtrip through encodePNG when converting images 2017-01-26 15:26:55 +01:00
Minh Nguyễn
1b6a4c60d7 [macos] Distinguish between screens
Fixed an issue causing the mouse cursor to jump after shift- or option-dragging a map view if the window opened on a screen with a different size than the screen with keyboard focus.
2017-01-25 13:33:11 -08:00
Konstantin Käfer
332e5bcc52 [macos] align HeadlessDisplay with SDK OpenGL context creation options 2017-01-25 14:46:43 +01:00
Konstantin Käfer
b5bc4fd8b4 [macos] allow using the integrated GPU on dual-GPU machines 2017-01-25 14:46:43 +01:00
Minh Nguyễn
35e062d72c [ios, macos] Wrap camera heading (#7724)
* [ios, macos] Fixed negative camera heading when facing northwest

* [ios] Corrected counterclockwise rotation test
2017-01-24 08:29:46 -08:00
nitrag
0c95fcfd06 [ios, macos] Document how to avoid gesture recognizer conflicts (#7816)
* Expand on Gesture Implementation

Adding Gesture info as discussed: https://github.com/mapbox/mapbox-gl-native/issues/2278#issuecomment-273685832

Not sure if using codeblocks is kosher.

* Update styling and verbiage

* More updates

* [ios] -requireGestureRecognizerToFail: seems to be enough

* [macos] Added corresponding macOS documentation
2017-01-23 13:17:15 -08:00
Justin R. Miller
f6715694f9 refs #6779: mobile & Mac SDK style transition options (#7711) 2017-01-18 12:43:08 -08:00
Minh Nguyễn
344cd173ea [macos] Avoid nilling out style URL on load
-awakeFromNib nils out the styleURL property to ensure a style is always present on load. However, if the style URL is specified in the Style URL inspectable, it is set somewhere between -initWithCoder: and -awakeFromNib; nilling out the styleURL property in -awakeFromNib thus resets the style to the default. This change guards against nilling out a non-nil style URL, ensuring that -setStyleURL: is called once and only once on launch.
2017-01-18 10:38:31 -08:00
Minh Nguyễn
2dae2254dd [macos] Check for implementation before calling -toolTip
Also fixed a couple typos in changelogs.
2017-01-16 21:50:08 -08:00
Minh Nguyễn
7ef2843e6a Merge branch 'release-ios-v3.4.0' into 1ec5-release-ios-v3.4.0-beta.7 2017-01-16 11:38:35 -08:00
Jason Wray
8f6009ea20 [ios, macos] Revert deprecation of alphaForShapeAnnotation: delegate method 2017-01-13 15:43:41 -05:00
Minh Nguyễn
424c12499c [ios, macos] Make MGLMapView.style property nullable (#7664)
* [ios, macos] Made MGLMapView.style property nullable

MGLMapView’s style property is now nullable (optional in Swift). The property is set to nil while the style loads and in the event that the style has failed to load.

* [ios, macos] Switch to delegate method

* [macos] Create MGLMapView programmatically for layer tests

When MGLMapView is created via a nib, -initWithCoder: is called, causing styleURL to be set to nil, in turn causing the default Streets style to be loaded, fooling MGLStyleLayerTests into thinking one-line has been loaded. Instead, create MGLMapView programmatically, passing the intended style URL into the initializer, preventing Streets from being loaded.
2017-01-11 08:06:20 -08:00
Minh Nguyễn
581fb3849d [ios, macos] Fix miscellaneous static analyzer warnings (#7670)
* [ios, macos] Fixed static analyzer warnings

Fixed static analyzer warnings in MGLNetworkConfiguration, MGLRasterSource, and MGLShape.

* [ios] Fixed static analyzer warnings

Fixed static analyzer warnings in MGLAnnotationImage.

* [macos] Fixed static analyzer warnings

Fixed static analyzer warnings in MGLAnnotationImage and NSImage(MGLAdditions).

* [ios, macos] Two pointer-equal images are object-equal by definition
2017-01-11 03:08:05 -08:00