Commit Graph

4605 Commits

Author SHA1 Message Date
Jesse Bounds
687013bc99 [ios] Add support for full Bitcode builds (#5586)
In https://github.com/mapbox/mapbox-gl-native/commit/
f791eb32b9 we simplified the package
script and intended to remove support for building the SDK without
Bitcode support. The intention was to use the ENABLE_BITCODE project
setting to do this and remove the control of that variable in the
script. However, since we use `xcodebuild build` this only uses
bitcode `marker` by default and causes a failure when an app that uses
the Mapbox SDK is archived.

This adds the `BITCODE_GENERATION_MODE` and `bitcode` value to the
necessary iOS SDK and mbgl and platform targets. If the SDK is compiled
with these flags set, it will be successfully processed in the bitcode
phase in an app archive operation.

This also removes the `BITCODE` flag from the Makefile since the
intention is to not support building the SDK without bitcode support
and the presence of that option might be confusing.
2016-07-06 08:09:10 -07:00
Thiago Marcos P. Santos
480e26c53f [android] Add support for timers on the main thread
Wake up the main thread run loop with a file descriptor event from a
thread that exists for this sole purpose.
2016-07-06 17:43:19 +03:00
Thiago Marcos P. Santos
2425cf4ef8 Revert "[android] Do not create Timers on Default main loops"
This reverts commit 13cd75f099.
2016-07-06 17:43:09 +03:00
Fredrik Karlsson
9993017cc9 [ios] fixes #4536 include podspec in iOS releases (#5569) 2016-07-06 11:09:50 +02:00
Tobrun Van Nuland
99a4850613 [android] #5000 - initial surface view implementation. 2016-07-06 11:01:37 +02:00
Fredrik Karlsson
7b6ef80b5d [ios] fixes #5544 support canceling a drag operation and not by default (#5561) 2016-07-05 22:47:54 +02:00
Fredrik Karlsson
546469459f [ios] #3979 compress telemetry events (#5490)
* [ios] #3979 wip gzip telemetry events

* [ios] expose compression from core instead of adding a new dependency

* [ios] #3979 Exposed decompress from mbgl and added a test case

* [ios] #3979 cleanup

* [ios] #3979 cleaned up test case

* [ios] #3979 cleanup

* [ios] #3979 gzip -> deflate
2016-07-05 22:46:04 +02:00
Thiago Marcos P. Santos
dfd0b105cd [android] Fix issue when stop is called before run on the RunLoop
The current ::stop() implementation was not thread safe and we
should queue the ::stop() for the next loop iteration so even
if we call ::stop() before ::run(), it gets processed.
2016-07-05 21:04:27 +03:00
Thiago Marcos P. Santos
13cd75f099 [android] Do not create Timers on Default main loops
Not supported, because we don't have control over the Looper
timeout like we do for Loopers we create. On the main thread,
Android takes care of making the application sleep and sets
an arbitrary timeout. This could be properly fixed by implementing
timers in Java, but we don't really have the use case of timers
in the main thread.
2016-07-05 21:04:27 +03:00
Thiago Marcos P. Santos
b3b86f9be4 [android] Fix hang when calling Timer::start() twice
Calling start() from the callback was making the timer
effectively stop.
2016-07-05 21:04:27 +03:00
Thiago Marcos P. Santos
e579199ac1 [android] Fix a bug when canceling tasks
If the next task in the queue gets canceled, we need to
adjust the iterator to the next task, otherwise a canceled
task gets executed.
2016-07-05 21:04:27 +03:00
Thiago Marcos P. Santos
70d4ebb347 [android] Fix default RunLoop not stopping
stop() for default RunLoop is only used by unit tests and we need
to wake the ALooper to get past run().
2016-07-05 21:04:27 +03:00
Tobrun
2bf4e20052 [android] #5104 - make nativePixelForLatLng faster (74ms to 57ms)
[android] #5104 - make nativeLatLngForPix faster (52ms - 45ms).

[andriod] #5104 - make nativeSetLatLng faster (117ms to 105ms)

[android] #5104 - make nativeFlyTo faster (106ms to 97ms)

[android] #5104 - make nativeEaseTo faster (103 to 94ms)

[android] #5104 - make nativeJumpTo faster (94 to 86ms)

[android] #5104 - make nativeProjectedMetersForLatLng faster (32 to 30ms)

[android] #5104 - make nativeLatLngForProjectedMeters faster (32 to 30ms)
2016-07-05 15:43:19 +02:00
Tobrun
a40953dd71 [android] - Remove StyleInitializer class, obsolete with introduction MapboxAccountManager 2016-07-05 13:34:22 +02:00
Tobrun
6b0c16a148 [android] #5564 - fixes latitude lint range setup for getMetersPerPixelAtLatitude 2016-07-05 10:49:47 +02:00
Tobrun
87209bd04f [android] - add javadoc to mapboxmapoptions 2016-07-05 10:07:08 +02:00
Tobrun
ced4ad63f7 [android] - fixes deprecation javadoc of accessToken 2016-07-05 09:09:31 +02:00
Minh Nguyễn
8947b0af27 [ios, macos, node] “Mapbox GL Style Specification” → “Mapbox Style Specification” (#5553) 2016-07-04 17:37:11 -07:00
Minh Nguyễn
8446a9bef2 [test] Added sample filter to scheme
Added a sample filter argument to the test scheme, disabled, so folks like me have an easier time remembering what it’s called.
2016-07-04 00:20:13 -07:00
Minh Nguyễn
b2197236b6 ios-v3.3.0-beta.3 2016-07-03 17:10:10 -07:00
Minh Nguyễn
2bcc8749e3 [ios] Split release notes into sections by topic 2016-07-03 16:20:39 -07:00
Minh Nguyễn
288b71b671 [ios] Simplified MBXAnnotationView
Eliminated the center view in favor of applying a background color and border to the annotation view’s layer.
2016-07-02 21:00:48 -07:00
Minh Nguyễn
bb2f627b12 [ios] Made annotation view position animatable
We don’t normally want an annotation view to animate its position, because that makes the view appear to lag behind the map. But when the annotation view moves due to the underlying annotation model object moving, the developer may want exactly that effect.

This change continues to disable the default implicit bounds (and now position) animation. It also groups the view updates in -updateAnnotationViews in a transaction that disables animation actions, to improve perceived performance with a large number of annotations. However, when the annotation model object changes, we move the annotation view outside of that transaction to allow the developer to opt into animation.

If the developer moreover wants the annotation view to animate even due to the viewport changing, they can override -setCenter: to use a UIView animation block.

Fixes #5230.
2016-07-02 21:00:41 -07:00
Minh Nguyễn
bb4606b53d [ios] Fixed KVO for annotation view center
Always reposition the annotation view using the standard -setCenter: setter, fixing KVO compliance for the center key path and making the view behave more like a normal view. -setCenter: updates the transform by side effect, and it always starts from the identity transform to avoid surprises. To apply a custom transform on an annotation view, make sure to apply it in -mapView:didFinishLoadingFrame:fullyRendered: based on the existing transform.
2016-07-02 21:00:36 -07:00
Minh Nguyễn
649b068270 [ios] Avoid resetting pitch along with center offset
Fixed a bug causing an annotation view to be scaled based on a pitch of 0° when setting the view’s center offset.
2016-07-02 21:00:36 -07:00
Minh Nguyễn
0d7d2449b1 [ios] Fixed auto-shrinking annotation views
Fixes #5547.
2016-07-02 20:20:05 -07:00
Minh Nguyễn
f2fdc23ec7 [ios] Removed MGLAnnotationView.flat
Removed MGLAnnotationView’s option to lie flat against a tilted map to work around #5090.
2016-07-02 18:41:11 -07:00
Minh Nguyễn
1f026c6246 [ios] Removed custom getter
isScaledWithViewingDistance is unnecessary.
2016-07-02 13:55:36 -07:00
Minh Nguyễn
50dd60aaf6 [ios, macos] Rewrote MGLMapViewDelegate, MGLAnnotationView docs
Reorganized MGLMapViewDelegate and MGLAnnotationView symbols into sections by task. Wrapped documentation comments at column 80 for readability.

Added documentation for -mapViewWillStartRenderingFrame: and -mapViewDidFinishRenderingFrame:fullyRendered:, which are supported and behave as expected (except for the part that has been left undocumented). Synchronized iOS and macOS documentation for MGLMapViewDelegate. Added cross-references between annotation image and annotation view delegate methods and among the various callout delegate methods.

Added missing MGLAnnotationViewDragState documentation and also added the symbol to jazzy’s table of contents. Rewrote MGLAnnotationView documentation.
2016-07-02 13:54:41 -07:00
Jason Wray
388fdd2ff7 [ios, macos] Update changelogs for new Jazzy theme 2016-07-01 14:51:52 -04:00
Jason Wray
c75caa650b [ios] Update and bundle docs screenshot
- Don't use an absolute URL for the screenshot image, include the file instead.
- Add Sketch document for screenshot.
2016-07-01 14:45:45 -04:00
Jason Wray
2e0ab45f42 [ios] Place MGLCoordinateInCoordinateBounds in jazzy's Geometry section
Added in https://github.com/mapbox/mapbox-gl-native/pull/5053 but wasn't categorized for jazzy.
2016-07-01 14:44:51 -04:00
Jason Wray
bacf8eee70 [ios, macos] Add Mapbox Jazzy theme
- Based on Jazzy's "full width" theme.
- Add ellipsis to overlong items in navigation menu.
- Set minimum width for navigation menu.
- Use Open Sans font face.
- Inline GitHub header icon as SVG.
- Center images by default.
- Add GitHub SVG icon to 'show on github' link.
- Wrap overlong method names on class pages.
2016-07-01 14:44:51 -04:00
Konstantin Käfer
eb7cfea7ea [android] upgrade to NDK r12b 2016-07-01 18:26:55 +02:00
Konstantin Käfer
77e7846756 [core] code style cleanups
- puts function definitions in a namespace ... {} rather than using namespace ...;
- remove trailing whitespace
- add trailing newline
- protect SQL statements from being formatted by clang-format
2016-07-01 12:38:33 +02:00
Cameron
a440598e2b [android] updated the testapp icon 2016-06-30 15:03:21 -05:00
Bruno de Oliveira Abinader
ad081e698a [core] Added CharArrayBuffer
Implements a custom std::streambuf to avoid creating temporary
std::string objects and thus optimizing image decode.

Suggested by @artemp in
https://github.com/mapbox/mapbox-gl-native/pull/5417#issuecomment-227700063.
2016-06-30 17:56:23 +03:00
John Firebaugh
03f30f5207 Merge remote-tracking branch 'origin/release-android-v4.1.0' 2016-06-29 17:07:15 -07:00
Minh Nguyễn
5389f04da5 Adjustable map deceleration rate (#5504)
* [ios] Adds the ability to customize map deceleration speed

* [ios] Made pinch, rotation deceleration adjustable too

Drift zooming and drift rotation also respect the deceleration rate. A side effect of this change is that drift zooming will come to a stop ever-so-slightly sooner now.

* [ios] Documented deceleration rates

Added documentation for deceleration rate constants. Also updated the changelog.
2016-06-29 15:48:02 -07:00
Jesse Bounds
f7b646cac5 [ios, macos] Use common instead of default mode for run loop source (#5503)
The map events instigated by certain actions
(i.e. updates from a UIScrollView) are not processed by the run loop
with `kCFRunLoopDefaultMode`until the thread is idle. This changes
the mode to `kCFRunLoopCommonModes` to avoid this issue.
2016-06-29 11:14:34 -07:00
Jesse Bounds
2933ef1c09 [ios] Always use symbol name for annotation update (#5509)
This removes the guard that used to be in place from the time when
UIView backed annotations did not have invisible image placeholders.
Since images are now present for both sprite and UIView backed
annotations, the guard is no longer necessary and removing it allows
for the correct symbol name to be passed to the map object and this
gets rid of `[INFO] {Worker}[Sprite]: Can't find sprite named
'default_marker'` log message.
2016-06-29 11:14:10 -07:00
Brad Leege
dfbee38f53 [android] #5510 - Setting version to 4.2.0-SNAPSHOT 2016-06-29 12:23:51 -05:00
Brad Leege
a8cd7ecdfb [android] #5510 - Updating CHANGELOG for Android 4.1.0 Release 2016-06-29 12:20:25 -05:00
Jason Wray
1a6b513703 [ios] Fix conflict between view dragging gesture and quick zoom (#5506)
This stops the quick zoom gesture (double-tap and hold) from also triggering a drag, when performed on a draggable annotation view.
2016-06-29 12:48:53 -04:00
Brad Leege
ee4cb08e4f [android] #5510 - Fixing POM Name 2016-06-29 10:50:55 -05:00
Brad Leege
799dc9bd93 [android] #5510 - Setting properties to 4.1.0 for Release 2016-06-29 10:39:07 -05:00
Fredrik Karlsson
bf079a285f [ios] prevent a race condition by not fulfilling the expectation until the view has been added (#5507) 2016-06-29 13:57:49 +02:00
Jesse Bounds
16b859ff5f [ios] Always set map view reference when annotation view is created. (#5496)
This fixes two issues with annotation views that were exposed when
dragging them:

1) The annotation view's mapView property was not set until it was
moved (in `updateAnnotations:`) so it did not always call its delegate
back about the map view delegate dragging methods. This adds a call to
set the property when an annotation view is created so the delegate
methods are always called.

2) Since the mapView is now always set, a call to the map view's
callout view for selected annotation was added to the annotation
view drag handler. This forces the callout to close and eliminates
an issue where the callout would remain visible as an annotation
was dragged away which had the visual effect of a detached
callout.

To make 2 possible, the map views selected callout view was exposed
in the private header.
2016-06-28 12:07:12 -07:00
Minh Nguyễn
c96b7dae68 [ios] Specify ultra light weight literally (#5497)
Fixed a crash on iOS 8.1 and below due to specifying the compass legend’s font weight using a font weight constant that was introduced in iOS 8.2.

Fixes #5486.
2016-06-28 10:03:55 -07:00
Brad Leege
e2499207a7 [android] #4700 - Removing Deprecated annotation on MapboxMap.OnMyLocationChangeListener 2016-06-28 11:56:19 -05:00