Commit Graph

16897 Commits

Author SHA1 Message Date
Konstantin Käfer
3600dd8a1a [core] fix rendering of dashed lines with round caps
In https://github.com/mapbox/mapbox-gl-native/pull/15862, we introduced individual textures for line dash patterns to eliminate atlas overflows. Unfortunately, this broke dashed lines that had round caps (dashed lines with straight caps still rendered correctly). Line pattern textures for round caps were now using 256×15 pixel textures.

The OpenGL ES 2.0 spec, section 3.8.2 states:

    Calling a sampler from a fragment shader will return `(R,G,B,A) = (0,0,0,1)` if any of the following conditions are true:
    […]
    - A two-dimensional sampler is called, the corresponding texture image is a non-power-of-two image […], and either the texture wrap mode is not `CLAMP_TO_EDGE`, or the minification filter is neither `NEAREST` nor `LINEAR`.
    […]

This means that texture lookups won't work for NPOT textures unless they use `GL_CLAMP_TO_EDGE`. We're using `GL_CLAMP_TO_EDGE` for the vertical direction, but GL_REPEAT for the horizontal direction, which means that we need a power-of-two texture for our line dash patterns to work on OpenGL ES 2.0 conforming implementations. Fortunately, this just means changing the height from 15 to 16, and from 30 to 32, so we don't waste many pixels.
2019-11-22 16:36:17 +01:00
Alexander Shalamov
17a5441768 [test-runner] Add render test runner options for injecting probes
This allows injection of memory, gfx and network probes before and
after operations defined in render test are run.
2019-11-22 15:29:25 +02:00
Tobrun
72c28e4495 [gl-native] update gl-native to latest 2019-11-22 13:29:44 +02:00
zmiao
a02ed76d5b [render-test] Adding mvt-fixture to app asset content (#15955) 2019-11-21 17:22:40 +02:00
Thiago Marcos P. Santos
b3fc469b09 [tests] Disable some metrics recording on Firebase
We are not using them, attempt to make the tests run faster.
2019-11-21 15:31:59 +02:00
Thiago Marcos P. Santos
d6eeea1909 [build] Build Android release when running render tests 2019-11-21 15:31:59 +02:00
Juha Alanen
a1243ac1ea [ios, macos] Changelog entry for network request priority change (#15950) 2019-11-21 14:39:47 +02:00
Juha Alanen
bb44ad232b [android] Changelog entry for network request priority change (#15950) 2019-11-21 14:39:47 +02:00
Juha Alanen
d777ba54bd [test] Add test for priority of online requests for expired resources 2019-11-21 14:39:47 +02:00
Juha Alanen
bdd7e53078 [core] Set the priority of online requests for existing resource to low 2019-11-21 14:39:47 +02:00
Juha Alanen
69d980cdc1 [core] Add new method to DefaultFileSource
Add setMaximumConcurrentRequests() method for setting it on the
OnlineFileSource.
2019-11-21 14:39:47 +02:00
Juha Alanen
451e6d40fa [core] Notify requests about network reachability only when coming back online 2019-11-21 14:39:47 +02:00
Julian Rex
21af0ff487 [ios] Refactor host checks (#15948) 2019-11-20 12:44:39 -05:00
Łukasz Paczos
004071ac33 changelog for v8.5.1 2019-11-20 17:45:14 +01:00
zmiao
03b7fe3326 [render-test] Config CircleCi to run RenderTestApp on Firebase with Pixel4 (#15951)
This reverts commit d2413d4ffffd087b352b6e4edd6e6322a311bc07.
2019-11-20 17:56:19 +02:00
Thiago Marcos P. Santos
656bc9c8bb [build] Run Valgrind instead of Memory Sanitizer
Memory Sanitizer requires all the dependencies, including
libstdc++ to be compiled with Memory Sanitizer, otherwise
we will get tons of false positives.
2019-11-20 13:56:48 +02:00
zmiao
1b58e87f15 [render-test] Wrap test data inside RenderTestRunner App + Add a new test app (#15887)
* [render-test] Wrap test resources inside app

* [render-test] Add test app

* fix test app failure

* [render-test]add callback + add javaObjectWrapper
2019-11-19 20:45:30 +02:00
Mikhail Pozdnyakov
abdd32d11f [ios][android] Change log entries for #15941 2019-11-19 16:08:35 +02:00
Roman Kuznetsov
0ea086ecf8 [core] Remove default move operator for RenderTile 2019-11-19 16:06:18 +02:00
Mikhail Pozdnyakov
9f24115d13 [core] Identation and build fixes 2019-11-19 15:03:28 +02:00
Sergey Yershov
37b332899b [core] Fix incorrect resizing of TileCache 2019-11-19 15:03:28 +02:00
Mikhail Pozdnyakov
15e1d35488 [core] Add Style.SourceImplsOrder test 2019-11-19 14:39:52 +02:00
Mikhail Pozdnyakov
986465e015 [core] Introduce style::CollectionWithPersistentOrder
So that we do not unnecessarily remove and re-add
sources and images if their order has been modified
in the updated style.
2019-11-19 14:39:52 +02:00
Thiago Marcos P. Santos
b3fdd2c762 [build] Check if mapbox-gl-js is pinned to master 2019-11-19 13:42:16 +02:00
Langston Smith
3cc7e29dd1 [build] Added automated API javadoc generation scripting (#53) 2019-11-18 11:28:20 -08:00
Tobrun
8b20a92880 [libaryloader] synchronise access to the library loader load method (#58) 2019-11-18 07:22:50 +01:00
Thiago Marcos P. Santos
f73467786d [build] Enable more warnings on the next build
Make compilation more pedantic.
2019-11-15 23:38:47 +02:00
Dan Swick
6cebb51747 add check for darwin systems to support local javadoc generation (#55) 2019-11-15 11:00:15 -08:00
Tobrun
2064871502 [build] use https for git submodules (#57) 2019-11-15 10:56:30 -08:00
m-stephen
763fd5879c [ios] Fix ornaments' view constraints bug in bold-text mode (#57)
* [ios] fix bold text reset view's bounds issue

* [ios]add change log
2019-11-15 10:37:25 +08:00
Tobrun
652c69bc26 [docs] - update changelog for alpha.1 for release-tequila (#54) 2019-11-14 19:04:53 +01:00
Igor Tarasov
d582495b02 Update dependencies and changelog for version 8.5.0. (#49) 2019-11-13 16:25:43 +01:00
Igor Tarasov
fb9b566a32 Update mapbox-gl-native and changelog. (#34)
* Update changelog for v8.5.0-beta.1
2019-11-13 16:25:43 +01:00
Łukasz Paczos
97722e7555 add collection and style smooth reload example 2019-11-13 15:54:21 +01:00
Łukasz Paczos
c396113785 skip jni layers generation 2019-11-13 15:54:21 +01:00
Łukasz Paczos
dfdbaf5493 bump gl-native submodule and bring platform changes 2019-11-13 15:54:21 +01:00
Ander Conselvan de Oliveira
4c1d03c257 [core] Fix MapSnapshotter build failure on Windows
MSVC implementation of std::promise is buggy and only works with types
that can be default-constructed. To avoid a compilation failure in the
instantiation of ask() inside MapSnapshotter::getRegion(), which creates
a std::promise<LanLngBounds>, make LatLngBounds' default constructor
public.
2019-11-13 13:31:01 +02:00
Mikhail Pozdnyakov
089ff8e2b3 No firebase skip for commits touching paths other than darwin-specific 2019-11-13 10:57:07 +02:00
Mikhail Pozdnyakov
f12567ef8c [android] Add change log entry 2019-11-12 17:24:50 +02:00
Mikhail Pozdnyakov
ed5ed8f083 [android] Add OfflineRegion.deleteAndSkipPackDatabase 2019-11-12 17:24:50 +02:00
Mikhail Pozdnyakov
8451633c17 [android] Consolidate exception handling code in OfflineManager 2019-11-12 17:24:50 +02:00
Mikhail Pozdnyakov
2edbe916ab [android] Add OfflineManager.packDatabase() API 2019-11-12 17:24:50 +02:00
Mikhail Pozdnyakov
f567a79dd8 [core] Extend DefaultFileSource API
Add `packDatabase()` method and `bool pack` argument to the `deleteOfflineRegion()` method.
2019-11-12 17:24:50 +02:00
Mikhail Pozdnyakov
615e095ed6 [core] OfflineDatabase pack API
- introduce `OfflineDatabase::pack()` standing for incremental vacuum
- make pack optional at offline region deletion
- update `OfflineDatabase.DeleteRegion` test accordingly to the items above
2019-11-12 17:24:50 +02:00
Dane Springmeyer
c1b2e8c9a0 fix -Wfor-loop-analysis and -Wreorder warnings (#15901) 2019-11-12 06:48:37 -08:00
Dane Springmeyer
49456e3fc1 remove duplicate formatNumber (#15908) 2019-11-12 06:47:43 -08:00
Alexander Shalamov
85c93e7e83 [android] Update unit tests that use resolvedImage type 2019-11-12 16:41:56 +02:00
Mikhail Pozdnyakov
ee38730eed [core] Add Source.GeoJSONSourceTilesRemainAfterDataReset unit test 2019-11-12 15:12:31 +02:00
Mikhail Pozdnyakov
2246cf7cc7 [ios][android] Add change log entries 2019-11-12 15:12:31 +02:00
Mikhail Pozdnyakov
49bcf69a3b [core] Avoid GeoJSON source flickering on style transitions
Before this change, all GeoJSON source cleared tile pyramid
at the style transition and it caused flickering.

Now, in Continuous mode, we keep the existing tiles until the
new GeoJSON data is not yet available, thus providing smart
style transitions without flickering.

In other modes (Static, Tile) clear the tile pyramid in order
to avoid render tests being flaky.
2019-11-12 15:12:31 +02:00