Commit Graph

483 Commits

Author SHA1 Message Date
Bruno de Oliveira Abinader
586b22c0df [core] Remove map coordinate setters/getters 2019-03-04 14:45:32 +02:00
Bruno de Oliveira Abinader
ba7427b4ac [core] Transform{State}: s/angle/bearing/ 2019-03-04 14:45:32 +02:00
Bruno de Oliveira Abinader
73ac3c784f [core] Remove map bearing setters/getters 2019-03-04 14:45:32 +02:00
Bruno de Oliveira Abinader
21a39306da [core] Remove map pitch setters/getters 2019-03-04 14:45:32 +02:00
Bruno de Oliveira Abinader
f5f10ec119 [core] Remove map zoom setters/getters 2019-03-04 14:45:32 +02:00
Mikhail Pozdnyakov
810999fadf [core] Simplify util::peer
Remove custom vtable, base implementation on `std::unique_ptr`.
2019-02-28 17:45:21 +02:00
Ivo van Dongen
96fef8172b [android] re-create renderer on surface update after app backgrounding (in case egl context is preserved, but surface is not) 2019-02-23 09:42:50 +02:00
Ivo van Dongen
3802f7e922 [android] hook into surface holder to cleanup renderer on the right thread before the surface is destroyed 2019-02-14 13:58:03 +02:00
Thiago Marcos P. Santos
470b01847d [android,linux,darwin,qt] Load OpenGL for the platform
These loaders will provide pointers to the platform implementation
of OpenGL. On Android, Linux and Darwin, we simply link with the
OpenGL implementation that is expected to exist on the platform.

Qt has its own GL loader, so we just connect the dots.
2019-02-12 19:42:08 +02:00
Ivo van Dongen
1fadf56368 [android] change lock scope in run_loop to avoid deadlocks. simplify as
well
2019-02-12 17:56:35 +02:00
tobrun
7ad9f3450d [android] - remove faulty conversion, explict casting for cluster API 2019-02-07 15:41:54 +01:00
Łukasz Paczos
8ad13cd577 [android] expose symbol placement transition duration option 2019-02-04 14:52:14 +01:00
Mikhail Pozdnyakov
8fedfbf160 [android, darwin] Fix core-only layer creation
In the layer manager implementations `addLayerTypeCoreOnly()`
should be called with core-only modules.
2019-01-25 15:38:07 +02:00
Łukasz Paczos
9604953d90 [android] rename required TransitionOptions field 2019-01-21 18:02:18 +01:00
Michael Muesch
24468956fc Ability to disable any layer using pre-processing flags. 2019-01-17 18:56:58 +02:00
Michael Muesch
1cdf619f03 Added MBGL_ before each of the flags 2019-01-17 14:02:12 +02:00
Michael Muesch
2a17d368ff [Android] Allow offline and snapshotter to be disabled. 2019-01-17 14:02:12 +02:00
tobrun
9ba0737e6a [android] - expose query feature extensions 2019-01-15 17:15:23 +01:00
tobrun
e6e07a6809 [android] - optimise interface definition 2019-01-15 13:33:28 +01:00
Alexander Shalamov
2da9d483ac [android] Implement google benchmark runner for Android platform 2019-01-11 09:49:36 +02:00
Alexander Shalamov
df63be71ce [android] Implement android test runner for core unit tests 2019-01-10 18:49:44 +02:00
Chris Loer
a889ff6523 [android] Add "localIdeographs" option to OfflineRegionDefinition. 2018-12-21 15:13:48 -08:00
Mikhail Pozdnyakov
a408b2f5d5 [mac, ios] Enable core-only layers
`LayerManagerDarwin` can add layer types that are enabled only for JSON style.
It allows to exclude the SDK wrappers for these layers from the project and decrease binary size.
2018-12-18 18:57:16 +02:00
Konstantin Käfer
1d8235f5b8 [build] rework platform/default directory and add -files.txt for vendored libs 2018-12-14 11:03:03 +01:00
Tobrun
aedbdc21d0 [androd] - add weak references checks to all jni callbacks 2018-12-13 19:08:12 +01:00
Tobrun
e94a7fc405 [android] - validate if weakreference is still valid 2018-12-13 19:08:12 +01:00
Osana Babayan
6aea5b561a [android] LatLng bounds cannot be wrapped (#13419) 2018-12-12 15:06:12 +01:00
Chris Loer
662a495561 [docs] EnterIdle -> BecomeIdle 2018-12-11 11:46:16 -08:00
Chris Loer
70c2d5a4ca [core, darwin, android] Add onDidEnterIdle to MapObserver.
didEnterIdle fires whenever render completes and no repaint is scheduled.
2018-12-11 11:46:16 -08:00
Mikhail Pozdnyakov
13e117b501 [android] Enable core-only layers
`LayerManagerAndroid` can add layer types that are enabled only for JSON style.
It allows to save binary size - JNI glue code for these layer types won't be
added to the binaries.
2018-12-11 20:11:23 +02:00
Tobrun
75914acb6b [android] - add more tests, refactor map padding 2018-12-11 18:08:16 +01:00
Mikhail Pozdnyakov
ebd87a5442 [core, android, darwin] Move layer factories to separate files 2018-12-10 18:20:32 +02:00
Osana Babayan
ea775ae932 nativeRemoveSource() and nativeRemoveLayer() methods should return a boolean (#13428) 2018-12-07 13:10:28 -05:00
Mikhail Pozdnyakov
92352de87d [core] layermanager folder
Move `LayerManager` and `LayerFactory` abstract classes to a dedicated folder.
2018-11-30 19:09:17 +02:00
Bruno de Oliveira Abinader
e64c28613a [core] Support fill-extrusion-vertical-gradient 2018-11-29 14:23:55 +02:00
Mikhail Pozdnyakov
ad03e42b28 [core] LayerManager can disable annotations
At the moment, the annotations implementation in the `mapbox-gl-native`
core is creating concrete layer instances apart from `LayerManager/LayerFactory`
code path.

So, annotations must be disabled if the `LayerManager` implementation does
not provide line, fill or symbol layers (those, used by the annotations).

Note: in future, annotations implementation will be moved from the core to the
platform SDK level(see https://github.com/mapbox/mapbox-plugins-android/tree/master/plugin-annotation)
and `LayerManager` won't need to disable it.
2018-11-28 17:18:38 +02:00
Mikhail Pozdnyakov
361982fef8 [core][Android][Darwin] LayerManager creates RenderLayer instances
`LayerManager` is now responsible for `RenderLayer` instances creation,
so that there is a single entry point for creating of objects, which
correspond to a certain layer type.

The `LayerType type` field is dropped from `Layer::Impl`.
2018-11-27 18:10:21 +02:00
Chris Loer
0bba794e98 [android] Expose "local ideograph font family" in MapSnapshotter::Options
Use local glyph generation in test app's MapSnapshotterActivity.
2018-11-24 09:57:32 -08:00
Łukasz Paczos
9ac444a08d [android] removing plain text getter for "text-field" 2018-11-20 12:22:16 +01:00
Huyen Chau Nguyen
9a606caf0b [core] define number of concurrent downloads in online file source variable 2018-11-15 12:19:48 -08:00
Mikhail Pozdnyakov
33818233cf [core][android] Introduce mbgl::style::LayerTypeInfo
The `LayerTypeInfo` contains static meta data about certain layer type.

Each layer module should have a single immutable `LayerTypeInfo` instance
for the represented layer type. Both `LayerImpl` and `LayerFactory` from the
module always refer to the same `LayerTypeInfo` instance, so address of this
instance can be used as a layer module Id during the process life time.
2018-11-15 18:32:31 +02:00
Bruno de Oliveira Abinader
bf8b24fa8d [build] Update to geometry v1.0.0 2018-11-13 17:28:26 +02:00
Mikhail Pozdnyakov
5a70f2b150 noexcept specifier for layer factory methods 2018-11-07 16:34:20 +02:00
Mikhail Pozdnyakov
1ba1ead3ea [android] Remove UnknownLayer 2018-11-07 16:34:20 +02:00
Mikhail Pozdnyakov
6f34e69b2e [android] layers.cpp/hpp -> layer_manager.cpp/hpp 2018-11-07 16:34:20 +02:00
Mikhail Pozdnyakov
80ec05cf47 [core][android] Implement LayerManager for Android
The newly introduced `LayerManagerAndroid` is now responsible
for creating both style layer objects and their java peers on Android.
2018-11-07 16:34:20 +02:00
Mikhail Pozdnyakov
56808731b6 Remove style::Layer::is()/as() 2018-10-31 11:22:46 +02:00
Mikhail Pozdnyakov
7a9461a8d4 Consolidate style::Layer properties API
The `style::Layer` class now exposes all the properties contained at `style::LayerImpl`.
This allowed to drop `style::Layer::accept()` method usage, avoid the repeated generated code
and thus save some binary size.

This patch is a part of the layers modularization effort.
2018-10-25 22:42:43 +03:00
Łukasz Paczos
12b4969454 [android] "format" expression support 2018-10-24 13:35:36 +02:00
Konstantin Käfer
7692be5d15 [core] refactor util::toString to use RapidJSON's stringification 2018-10-23 12:23:40 +02:00