Commit Graph

1265 Commits

Author SHA1 Message Date
Minh Nguyễn
7bed2cebd2 [ios] Restored framework dependencies to static installation instructions
Backed out documentation about #4029 because it doesn’t apply when using a storyboard, and the installation instructions use a storyboard.
2016-02-22 10:44:49 -08:00
Jason Wray
15b9f3171a [ios] Refactor MGLMapView's location services
- Pause location services when the app goes to sleep; address iOS 8 blue bar issue.
- Only ask for location permissions if not already granted/denied.
- Cleanup usage of `.isDormant` → `.dormant`

Partially addresses #2945, for which a full and complete fix waits until #4030.
2016-02-19 13:14:54 -05:00
Minh Nguyễn
9f4e8dd676 [ios] Removed manual framework linking from installation instructions
Even these three are no longer needed, now that the umbrella header pulls them in.
2016-02-18 14:51:51 -08:00
Minh Nguyễn
1c25dc098e [ios] Import required frameworks with static framework umbrella
The umbrella header inside the static framework now imports the required iOS SDK frameworks so manual linking is unnecessary. This change corrects a regression introduced in #3183, when the umbrella header used in version 3.0.1 was removed.
2016-02-18 14:41:47 -08:00
Minh Nguyễn
55fca26ea5 [ios] Distinguish between AGV and semver
Distinguish between Apple Generic Versioning and Semantic Versioning in Info.plist. Also fill in the build number in the dynamic framework.

Fixes #3911.
2016-02-13 09:56:44 -08:00
Jason Wray
c5e3b20891 [ios] Update linked library extension to .tbd
[skip ci]
2016-02-12 15:56:12 -08:00
Minh Nguyễn
51d7d204db [ios, osx] Exclude misses from nearby annotations
After filtering out elements of a vector using std::remove_if(), it’s apparently necessary to resize the vector. Otherwise, removing only has the effect of shifting the non-matching items to the end of the vector. This change reduces the annotation tap target back to almost what it was before #3261, except that these days the target is centered around the annotation image rather than the center point. There remains a much smaller slop area around the annotation, but nothing close to the effective padding before this change.

Fixes #3880.
2016-02-10 22:02:46 -08:00
Minh Nguyễn
bd59ab9a52 [core, ios, osx] Only constrain after adding to a window
Introduced a setter/getter for constrain mode. On iOS and OS X, the zoom level inspectable causes the zoom level to be set independently from the longitude and latitude. Thus, the latitude inspectable had no effect because the latitude was constrained to 0 at z0. Temporarily removing the heightwise constraint allows the map to center on the intended location before zooming, which is the usual case for storyboards and XIBs. On iOS, the only guarantee we have timing-wise is that all the inspectables are applied after initialization but before the view is added to a window. So we reimpose the heightwise constraint as soon as the view is added to a window, that is, before the user has a chance to pan the map out of bounds.

Fixes #3868.
2016-02-10 15:15:29 -08:00
Minh Nguyễn
71611ec612 [ios, osx] Fixed crash reselecting annotation
Handle the case where the currently selected annotation isn’t one of the nearby annotations. This hasn’t come up before on OS X because clicking an annotation while another annotation is selected only dismisses the callout popover.

Fixes #3284.
2016-02-10 09:38:04 -08:00
Minh Nguyễn
2080d19764 [ios] Conform to SMCalloutViewDelegate
#3322 #3456 replaced SMCalloutViewDelegate conformance with MGLCalloutViewDelegate conformance. Unfortunately, the two protocols differ in some symbols. This change restores SMCalloutViewDelegate methods alongside MGLCalloutViewDelegate methods.

Fixes #3871.
2016-02-09 23:56:25 -08:00
Minh Nguyễn
35fdf32de5 [ios] Load categories in MGLAccountManager for Fabric
These categories need to be loaded explicitly so that they’re linked into the application binary. In the dynamic framework, they’re loaded inside the InitializeMapbox() framework initializer; for static frameworks, we recommend setting the -ObjC flag. Fabric uses the static framework without setting the -ObjC flag, so these redundant calls are needed.
2016-02-09 14:56:01 -08:00
Tobrun
fa21051683 [android] #3830 added mocked parcel implementation 2016-02-05 14:32:58 +01:00
jaumeolba
026e6a7560 Fix Memory leak caused by duplicated add in LocationListener list
The addLocationListener method didn't check if the LocationListener was
already in the list.

From MapView, if we call setMyLocationEnabled(true), it adds a
LocationListener and onResume adds the same LocationListener again, but
is just removed by onPause.

So LocationListener is added twice but removed just once, so
LocationServices singleton keeps an instance of the the LocationListener
that is never released.
2016-02-05 10:59:50 +01:00
Mike Morris
8e5862bd5d node-v3.0.2 2016-02-04 19:02:08 -05:00
Mike Morris
86691a08de [node] patch memory leak in NodeMap::request
Creating a v8::Function with
Nan::GetFunction(Nan::New<v8::FunctionTemplate>) can leak, use
Nan::New<v8::Function> instead.

https://code.google.com/p/chromium/issues/detail?id=272579
2016-02-04 18:27:52 -05:00
Jordan Moncharmont
48dbd48e77 [ios] Explain prerelease testing in docs
Show how to point a podspec at an officially tagged pre-release.
2016-02-04 14:48:01 -08:00
John Firebaugh
4d29c7d5ce [core] Remove Response::Error::Reason::Canceled
There is no such thing as a cancelled response, only cancelled requests. A request that is cancelled does not have its callback called with a Response.
2016-02-04 13:18:14 -08:00
John Firebaugh
d7db9c775a [all] Make #include <mapbox/variant.hpp> universally accessible 2016-02-04 11:08:02 -08:00
Tobrun
7f27c74251 [android] #3811 - handle null target value by using previous camera position. 2016-02-04 12:35:39 +01:00
Tobrun
aa05cba0df [android] #3758 - Projection / Visible Region implementation.
[android] #3758 - add VisibleRegion + unit tests, removed boundingbox, cleanup jni, cleanup test app, renamed CoordinateSpan to LatLng.
2016-02-04 12:08:39 +01:00
Brad Leege
932012e931 [android][core] #509 - Setting Min and Max Zooms warning annotations in Android. Clamping Min and Max zooms at Core GL for all platforms to use at runtime. 2016-02-03 17:59:44 -06:00
Minh Nguyễn
e8b8f5e493 [ios] Fixed designable warning when showing user location
Turn the Shows User Location inspectable into a no-op when running in the designables agent. Otherwise, we complain that the agent lacks Location Services permissions.
2016-02-03 11:14:09 -08:00
Tobrun
9beb6629b6 [android] #3752 - added scroll by x,y feature, introduced new CameraUpdateType, introduced caching system for invalidating CameraPosition, general cleanup, readded getLatLng in MapView, ..
[android] #3752 - correctly invalidating cameraposition
2016-02-03 18:38:38 +01:00
John Firebaugh
37c27f3a8f [core] Improve LatLngBounds API
* Use "named constructors": empty, world, hull
* Make the two-argument constructor lenient (i.e., it is a hull operation)
* Add various accessors
* Enforce a single empty representation
2016-02-02 23:04:18 -08:00
Tobrun
ce8c6e26d5 [android] #3736 - clicks should ignore marker validation when an InfoWindowAdapter is supplied by end developer. 2016-02-02 18:08:14 +01:00
Tobrun
6dff169f2b [android] #3754 - newLatLngBounds: unit tests for LatLng and LatLngBounds, builder pattern + refactoring.
[android] #3754 - Working version using the underlying VisibleCoorindateBounds

[android] #3754 - refactor Camera api inside maps package, correctly use factory pattern, LatLngBounds hooks into camera API

[android] #3754 - cleanup old API
2016-02-02 17:25:46 +01:00
Tobrun
a699690c16 [android] #3759 - Add SupportMapFragment, test app integration, cleanup old fragment implementation 2016-02-02 08:18:41 +01:00
Minh Nguyễn
7694eebe88 [ios] Renamed -showAnnotations:withEdgeInsets:animated:
Renamed -showAnnotations:withEdgeInsets:animated: to -showAnnotations:edgePadding:animated: for consistency with other methods. Reworded documentation comments to avoid hard-coding too many specifics that are prone to getting outdated.
2016-02-01 20:55:55 -08:00
Jordan Moncharmont
909832624e Custom edgeInsets for fitting in showAnnotations
Keeps sensible defaults already in place, but allows callers to override.
2016-02-01 20:55:55 -08:00
Tobrun
0e66d4dcc5 [android] #3776 - UiSettings uses MapView instead of MapboxMap as dependency. Cleanup obsolete methods MapboxMap/MapView, Renaming convention Google Maps SDK, Update tests, Some minor fixes in state management 2016-02-01 16:22:54 +01:00
Tobrun
6ebb3e88d8 [android] #3753 - Optimising zoom
[android] #3753 - removed old zoom methods from MapView
2016-02-01 16:08:09 +01:00
Tobrun
7c58c7803e [android] #3760 - parity with Google Maps SDK
[android] #3760 - added missing methods for UiSettings, updated tests and test app to reflect this change

[android] #3760 - typo fix
2016-02-01 12:47:14 +01:00
Tobrun
8ed1dc9f74 [android] #3145 - MapboxMap 2016-01-29 13:15:58 +01:00
Minh Nguyễn
710398b780 [ios] Removed redundant usage section
Also copied some further setup steps from the IB page on the project wiki.
2016-01-28 23:38:21 -08:00
Minh Nguyễn
6995452541 [ios] Restored toggleDebug
Restored (but deprecated) a method removed in #3100 to avoid a major version bump.
2016-01-28 22:36:58 -08:00
Minh Nguyễn
6b3b3f3ff6 [ios] Debug mask
Ported MGLMapDebugMaskOptions from the OS X SDK. Deprecated debugActive and -cycleDebugOptions.
2016-01-28 22:23:07 -08:00
Minh Nguyễn
8cdd02bc8f [ios] Eliminated “flashlight mode”
Avoid resetting user tracking state when going from location or course tracking mode to heading tracking mode.

Fixes #3710.
2016-01-28 17:57:44 -08:00
Ansis Brammanis
b738087080 [osx] setMaximumZoomLevel, setMinimumZoomLevel
adds:
setMaximumZoomLevel
setMinimumZoomLevel

and makes `maximumZoomLevel` and `minimumZoomLevel` not readonly
2016-01-28 15:10:26 -08:00
Ansis Brammanis
371a210be8 [ios] getters, setters for minZoom, maxZoom
adds:
minimumZoomLevel
setMinimumZoomLevel
maximumZoomLevel
setMaximumZoomLevel
2016-01-28 15:10:26 -08:00
Ansis Brammanis
ca0099b6a4 [android] getters, setters for minZoom, maxZoom
adds:
map.getMminZoom();
map.setMminZoom(double);
map.getMaxZoom();
map.setMaxZoom(double);
2016-01-28 15:10:26 -08:00
Brad Leege
94731a9ef0 [android] #3716 - Setting Android Version to 4.0.0-SNAPSHOT 2016-01-28 14:02:51 -06:00
Brad Leege
d3a027075f Merge branch 'master' into release-android-v3.2.0 2016-01-28 14:00:23 -06:00
Brad Leege
9fd7dd4597 [android] #3716 - Updating version to 3.2.0 for release 2016-01-28 11:54:21 -06:00
Brad Leege
41472054fc [android] #3728 - Adding Back Pressed support for App Bar Home Button 2016-01-28 11:44:08 -06:00
Brad Leege
87e28d09b2 [android] #3723 - Commenting out content padding in MapView API 2016-01-28 10:50:44 -06:00
Minh Nguyễn
eeeec862a2 [ios] Remove dependency on variable in package.sh
Fixes #3725.
2016-01-28 08:49:51 -08:00
Tobrun
1295ba7017 [android] #3692 - fix crash with bad internet connection 2016-01-28 09:01:59 +01:00
Tobrun
b492e2408d [android] #3708 - added code coverage test documentation and debug option 2016-01-28 08:09:54 +01:00
Jesse Bounds
fab847c128 [ios] Remove incorrect tab whitespace in method
This just removes some whitespace that made the implementation of
`pushTurnstileEvent` in `MGLMapboxEvents` look a little strange.

The indentation was right below an early return conditional
(with no braces) so it felt like the right thing to do (for
readability) to clean it up. Choosing and enforcing a consistent style
for conditionals with one line might be a good idea, too, but this
small change does not go there.
2016-01-27 13:46:31 -08:00
Larry Geromegnace
3d32c63f7d [android] Add getters for content paddings. 2016-01-27 10:57:38 -06:00