Commit Graph

14431 Commits

Author SHA1 Message Date
Mikhail Pozdnyakov
2f97a2660a [core] RenderTile returns textures by const reference 2019-05-28 16:16:42 +03:00
Mikhail Pozdnyakov
43966f1611 [core] Placement::placeLayerBucket() -> placeBucket() 2019-05-28 16:16:42 +03:00
Mikhail Pozdnyakov
054645042a [core] Encapsulate symbol bucket placement code in Placement::placeLayerBucket() 2019-05-28 16:16:42 +03:00
Mikhail Pozdnyakov
a03f7b166b [core] RenderTile does not expose Tile
RenderTile and Tile will be split when ochestration movces to a separate thread.

This PR improves encapsulation of Tiles management: now performed within TilePyramid.
2019-05-28 16:16:42 +03:00
Aleksandar Stojiljkovic
e5431d0181 Asymmetric viewport changelog entry
Check edge insets difference, in addition to isEqualToMapCamera in all the places in MGLMapView before map.easeTo/map.flyTo.
2019-05-28 14:38:01 +03:00
Aleksandar Stojiljkovic
9809c9f8f5 [core] Offset viewport center when edge insets are specified
The change is implemented in TransformState::getProjMatrix, the rest of the code is making sure that existing API contracts stay and there are tests verifyingrendering and render query processing only items within screen and given tolerance around screen edges.

MapView: don't bake edge insets into relalculated camera center. Keep edge insets as property of camera in TransformState (similar to pitch, zoom, bearing) independent from specified camera center. Interpolate edge insets in animation.

iOS Demo app: "Turn On/Off Content Insets" pitch the camera and navigate to convenient location in Denver, where streets are parallel to cardinal directions, to illustrate viewport center offset when edge insets are set.

Tests:
ViewFrustumCulling: although Annotations are deprecated, queryRenderedFeatures related tests in Annotations would need to get ported and decided to add the edge insets related query tests next to them. Verify frustum culling (render+queryRenderedFeatures) With different camera and edge insets setups. TODO: port Annotations tests.

Transform.Padding: Verify that coordinates take proper place on screen after applying edge insets.

LocalGlyphRasterizer: verify text rendering when applying padding.

Related to #11882: both use projection matrix elements [8] and [9].

Alternative approach to this was to increase and offset map origin so that the screen would be a sub-rectangle in larger map viewport. This approach has a drawback of unecessary processing the items that are outside screen area.

Fixes #12107, #12728, navigation-sdks/issues/120
2019-05-28 14:38:01 +03:00
tobrun
ddb6f749ec [android] - update maven publishing script to enable aar packaging vs pom packaging, update gradle tools and wrapper 2019-05-28 10:12:36 +02:00
tobrun
1e974804ad [android] - add javadoc URI supported protocols 2019-05-27 19:21:18 +02:00
tobrun
2be07041fd [android] - use URI instead of URL to enable asset loading 2019-05-27 19:21:18 +02:00
Jason Wray
9229556dd9 [ios, build] Specify Mapbox development team for project iOS apps 2019-05-24 13:28:11 -07:00
Aleksandar Stojiljkovic
788d54b2b4 FillBucket::triangles could be empty: skip creating buffer and draw. (#14761) 2019-05-24 17:46:57 +03:00
Łukasz Paczos
1bef3b7d1d [android] resume file source and wait for result to complete resources cache path change 2019-05-24 15:03:55 +02:00
Łukasz Paczos
46ef2d86d2 [core] invoke optional resource path change completion listener 2019-05-24 15:03:55 +02:00
Alexander Shalamov
749044f1b0 [core] Add unit test for zero width space line breaking 2019-05-24 05:59:07 -07:00
Alexander Shalamov
0333f3fe44 [core] Prefer breaking lines at zero width space (ZWSP) 2019-05-24 05:59:07 -07:00
Łukasz Paczos
5e00a2a764 [core] limit thread's scope to release the Object before detaching the thread 2019-05-24 13:52:50 +02:00
Łukasz Paczos
bc74a8ee0b [android] break location camera tracking when a developer invoked animation starts 2019-05-24 10:11:18 +02:00
Mikhail Pozdnyakov
aa3a7cf02f [core] SymbolBucket updates complete at placement stage
`RenderSymbolLayer` does not have to update dynamic vertices of its buckets, this logic is moved to placement (which is already updates opacity vertices).

* fixes clustering of labels when text variable placement enabled - as assignes `usesVariablePlacement` per bucket
* simplifies the code in `RenderSymbolLayer` (the `RenderSymbolLayer::upload()`	is now omitted).
* symbol buckets are not modified after orchestration finishes
2019-05-24 10:54:06 +03:00
Łukasz Paczos
d8e9acd0f5 [android] deprecate MapboxMapOptions empty constructor 2019-05-23 17:17:17 +02:00
Thiago Marcos P. Santos
d60df973a6 [tests] Removed passing tests from the ignore list 2019-05-23 18:05:54 +03:00
Thiago Marcos P. Santos
68991cbef2 [build] Bump Mapbox GL JS submodule
master @ cf577993c04a2590185322a0a4e2eaec04ba1b41
2019-05-23 18:05:54 +03:00
Minh Nguyễn
179144a834 macos-v0.14.0 2019-05-22 17:30:21 -07:00
Nadia Barbosa
a4380fd08c [ios] Add missing tick to Podspec specification (#14729)
* [ios] Add missing tick to Podspec specification

* [ios] Remove unnecessary parenthesis from link in changelog
2019-05-22 15:00:31 -07:00
tobrun
cb8b40c88e [android] - update changelog for nectar final release 2019-05-22 16:40:20 +02:00
Łukasz Paczos
37d9dfae69 [core] round color string's alpha to 2 decimal places 2019-05-22 16:32:04 +02:00
Łukasz Paczos
b21f9f3e35 [android] return color string values in the [0-255] range 2019-05-22 16:32:04 +02:00
Ka-Ping Yee
4224b89a9c [android] document that elevation(0) turns off the location shadow 2019-05-22 16:13:09 +02:00
Łukasz Paczos
470b99e795 [android] attach/detach core thread pool's threads to JVM 2019-05-22 15:52:55 +02:00
Łukasz Paczos
7d6255c860 [core] option to perform platform specific operations when creating/destroying core threads 2019-05-22 15:52:55 +02:00
Mikhail Pozdnyakov
e79080771b [core] RenderLayer::render(PaintParameters, RenderSource*) -> render(PaintParameters) 2019-05-22 16:41:10 +03:00
Mikhail Pozdnyakov
25093370e2 [core] RenderLayer::setRenderTiles(RenderTiles) -> prepare(LayerPrepareParameters)
RenderLayer::prepare() is responsible for the complete initialization of a render
layer, so that it can render.
2019-05-22 16:41:10 +03:00
Mikhail Pozdnyakov
84d3b5f899 [core] Prepare render sources before render layers are initialized 2019-05-22 16:41:10 +03:00
Nadia Barbosa
e2ed9833c4 [ios] Podspec & changelog updates for v5.0.0 (#14717)
* [ios] Podspec bumps for v5.0.0

* [ios] Update changelog for 5.0.0
2019-05-21 17:42:33 -07:00
Alexander Shalamov
00790dd022 [android] Add unit test for onRemoveUnusedStyleImages API 2019-05-21 06:49:17 -07:00
Alexander Shalamov
80dd90bd66 [android] Add bindings for onRemoveUnusedStyleImages API 2019-05-21 06:49:17 -07:00
Alexander Shalamov
dcf1a4efb3 [core] Update ImageManager's unit test for onRemoveUnusedStyleImages API 2019-05-21 06:49:17 -07:00
Alexander Shalamov
100eb61fa4 [core] Forward ImageManagerObserver::onRemoveUnusedStyleImages to MapObserver interface 2019-05-21 06:49:17 -07:00
Alexander Shalamov
d24524440c [core] Add onRemoveUnusedStyleImages observer API 2019-05-21 06:49:17 -07:00
Alexander Shalamov
0344ce36c4 [core] Define max cache size for ImageManager 2019-05-21 06:49:17 -07:00
Thiago Marcos P. Santos
c2f974f2a5 [core] Remove binary shader support
The implementation is buggy and not worth maintaining anymore
because performance benefits are not substantial or sometimes
worse. Also, removing it saves about 150 ~ 180 KB in binary size.

Below timings are averages of minimum 5 runs.

```
Device          Init launch     Average relaunch
s10             1129.8 ms       700 ms
s10 - binary    1346.75 ms      694 ms
Pixel           1692 ms         723 ms
Pixel - binary  1883 ms         1039 ms
Kazam           17948 ms        1339 ms
Kazam - binary  19157 ms        1564 ms
Wiko            2060 ms         1278 ms
Wiko - binary   3876 ms         1136 ms
```

Fixes #14294
2019-05-21 15:05:37 +03:00
Ander Conselvan de Oliveira
f210bbbb6c [core] Don't use optional unique_ptr in function coversion code
Since unique_ptr is already nullable there is no need to wrap it in an
optional<>.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
e30ff619c6 [core] Forward args in style::expression::dsl::compound() 2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
d502b72449 [core] Pass legacy/categorical/*-default expression tests
Handle categorical function default value properly in conversion to
expreexpression so related tests pass.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
1e620d3bd8 [core] Fix legacy/{interval,exponential}/*-default expression tests
Consider the function default value in interval and exponential
functions conversion.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
f2f2e64fc8 [core] Expose dsl::compound() internally
This will be used in a follow up patch by the function to expression
conversion code.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
343df18954 [core] Fix some of the legacy interval function expression tests
The tests for conversion of legacy interval functions to expressions
expects that the first stop in the "step" expression be omitted.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
33cfd080c2 [core] Fix most identity function with default legacy expression tests
Add handling of default value to the conversion of legacy identity
functions. The color and enum tests still don't pass though.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
11055f9a88 [core] Fix indentation of src/mbgl/style/conversion/function.cpp
One line in that file was indented with tabs instead of spaces.
2019-05-21 12:14:22 +03:00
Ander Conselvan de Oliveira
80edc3b821 [node] Convert legacy functions to expressions in NodeExpression::Parse
In order to test the conversion from function to expressions using the
legacy tests in the expression test suite, parse function objects into
expressions in NodeExpression::Parse.

v2: Coding style fixes.
2019-05-21 12:14:22 +03:00
Jason Wray
29140f5b11 [ios] Enable SKU tokens for all requests
Removes conditional code that relied on a plist flag. Other small cleanups.
2019-05-20 22:49:50 -07:00