summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* [core] Add pause and resume to database filesource implementationAlexander Shalamov2020-01-271-0/+2
|
* GeoJSONSource is re-using the existing schedulerMikhail Pozdnyakov2020-01-241-1/+4
| | | | Thus avoiding spawing new threads on `setGeoJSONData()` calls.
* [core] Use weak scheduler inside mailboxAlexander Shalamov2020-01-231-1/+3
| | | | | There is no guarantee that scheduler is alive when message is pushed to the mailbox.
* [core] Pass std::shared_ptr<UpdateParameters> to the render orchestratorMikhail Pozdnyakov2020-01-221-1/+1
| | | | So that it can retain ownership of the given parameters.
* [core] implement stretchable icons for icon-text-fitKonstantin Käfer2020-01-151-1/+1
|
* [core] Add stretches and content to style::ImageKonstantin Käfer2020-01-152-4/+48
|
* [core] Modularize FileSource codebase (#15768)Alexander Shalamov2020-01-139-226/+261
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [core] Introduce FileSourceManager and use it for default platform impl - Add `FileSourceManager` interface that provides access to `FileSource` instances and means of registering / unregistering `FileSource` factories - Split `DefaultFileSource` into smaller parts - Add `DatabaseFileSource` interface and it's default implementation - Remove inter-dependencies between concrete `FileSource` classes * [build] Add files to next build system * [core] Add generic property setters / getters * [core] Remove setOnlineStatus from OnlineFileSource interface * [core] Hide threading implementation details from DatabaseFileSource interface * [core] Make DB file source methods virtual * [core] Add documentation for DatabaseFileSource and rename one method * [core] Use simple callback instead of ActorRef * [core] Remove ActorRef from OnlineFileSource public header * [core] Add callback to FileSource::forward async API * [core] Pass OfflineRegionDefinition by value * [core] Update tests to use modular file sources * [core] Update unit tests * [core] Update unit tests after rebase * [core] Backport low prio fix for cached requests * [core] Backport pack database * [core] Return removed factory from unRegisterFileSourceFactory * [core] Rename shadowed args in onlinefilesource * [core] Remove simple std::function callback aliases * [core] Expose online file source property keys in public header file * [test-runner] Add proxy file source test runner * [cache] Update mbgl-cache utility to use new file source * [metrics] Rebaseline binary size metrics * [offline] Update offline utility * [core] Update changelog
* [android][core] Add `Map::latLngBoundsForCameraUnwrapped` and jni binding ↵Peng Liu2020-01-091-0/+1
| | | | | | | | | for `getVisibleCoordinateBounds`. (#16069) * [android] Add getVisibleCoordinateBounds method. * Fix Map::latLngBoundsForCamera, add Android binding for getVisibleRegionBounds. * Add unit tests for CameraToLatLngBoundsWithRotation and CameraToLatLngBoundsCrossDateLine. * Move API breaking changes to a new method name latLngBoundsForCameraUnwrapped.
* [core] Make it possible to reopen the database read-only for testingThiago Marcos P. Santos2020-01-081-0/+1
| | | | | | Needed for Android, because the database is in readonly filesystem and also because it is annoying to see files modified every time we run the tests.
* [test runner] Show all tiles independently in Tile modeMikhail Pozdnyakov2019-12-181-0/+15
|
* [core] Enable 'line-sort-key' and 'fill-sort-key' layout properties (#15839)Andrew Hay Kurtz2019-12-172-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Generate style code for 'line-sort-key' and 'symbol-sort-key' - Add new layout properties to FillLayer::Impl, FillBucket, and FillLayerFactory - Fix consistency of paint and layout properties type alias usage in FillBucket, LineBucket - Add optional feature sorting to fill and line Layout creation - Enable node render tests for fill-sort-key and line-sort-key - Fix FillBucket test construction - Prefer emplace_back to push_back for PatternFeature container - Fix buggy static_cast for PatternFeature indices - Maintain sort of features as they are created - Switch pattern layout features container to list from vector for better insert performance - Fix formatting expected by sanity check - Use subclass PatternLayoutSorted to work around lack of template functions - Fix to retain source order for features with equivalent sort keys during sorting - [core] Fix clang-format - [core] Address review comments - [core] Pass inserting strategy class at compile time - [core] Use sorted strategy only if sort key is defined in layout - [core] Update style generator - [core] Merge PatternLayout and PatternLayoutSorted classes - Use static methods for inserter strategies - Merge PatternLayout and PatternLayoutSorted classes
* [core] Add style::Layer(Impl) constructorMikhail Pozdnyakov2019-12-132-0/+2
|
* [core] Remove Map::cycleDebugOptionsBruno de Oliveira Abinader2019-12-041-1/+0
|
* [core] Merge style::Layer::set{Layout,Paint}PropertyMikhail Pozdnyakov2019-12-0312-25/+12
|
* [core] Add image sections to format expressionAlexander Shalamov2019-12-022-19/+24
|
* [core] Introduce Pass<> class and use it for SchedulerMikhail Pozdnyakov2019-12-021-2/+19
| | | | Thus we enforce client to retain the returned `Scheduler` objects.
* [core] Add OfflineDatabase.Pack unit testMikhail Pozdnyakov2019-12-021-3/+3
|
* [core] Introduce OfflineDatabase::runPackDatabaseAutomatically() APIMikhail Pozdnyakov2019-12-021-9/+21
| | | | | - added a unit test - Updated inline comments in default_file_source.hpp
* [core] Retain thread pool in GeoJSONSourceMikhail Pozdnyakov2019-11-291-1/+2
| | | | Otherwise, the construction of the `Immutable<Source::Impl>` in background thread might never yeld.
* [core] Calculate GeoJSON tile geometries in a background threadMikhail Pozdnyakov2019-11-291-5/+7
| | | | | Call `mapbox::geojsonvt::GeoJSONVT::getTile()` in a background thread, so that the rendering thread is not blocked.
* [core][android][darwin] Fix GeoJSONOptions handlingMikhail Pozdnyakov2019-11-291-2/+5
| | | | | | - share the `GeoJSONOptions` instances using `Immutable<GeoJSONOptions>` - avoid extra copying - fix wrapping of the `GeoJSONOptions` instances in supercluster map/reduce lambdas. Previously, local variables were wrapped by reference.
* [core] Introduce Scheduler::GetSequenced() APIMikhail Pozdnyakov2019-11-281-0/+13
| | | | | | The newly introduced `Scheduler::GetSequenced()` returns sequenced schedulers from the cache limited to 10 instances, preventing from spawning too many threads.
* [core] Add new method to DefaultFileSourceJuha Alanen2019-11-211-0/+1
| | | | | Add setMaximumConcurrentRequests() method for setting it on the OnlineFileSource.
* [core] Fix MapSnapshotter build failure on WindowsAnder Conselvan de Oliveira2019-11-131-7/+2
| | | | | | | | 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.
* [core] Extend DefaultFileSource APIMikhail Pozdnyakov2019-11-121-3/+17
| | | | Add `packDatabase()` method and `bool pack` argument to the `deleteOfflineRegion()` method.
* [core] Implement image expression (#15877)Alexander Shalamov2019-11-1117-55/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [core] Bump gl-js version * [core] Implement image expression * [core] Use new image expression * [core] Coerce image expression to / from string * [core] Serialize evaluated image * [core] Pass available images to layout * [core] Pass images to evaluation context * [core] Set available flag value based on image availability * [core] Allow image coercion to boolean to indicate image availability * [core] Coalesce image expression * [core] Add image expression to next build system * [core] Align serialization format and evaluated type with gl-js * [core] Add images to expression evaluation method * [core] Add support for Image expression to expression test runner * [core] Unskip image expression tests * [core] Update unit tests * [core] Use image expression in annotation manager * [core] Add string to ImageExpression conversion * [core] Add image expression to expression dsl * [core] Convert tokens for implicitly created Image literal * [core] Fix clang format * [core] Split generated style code lines that are over 120 characters * [core] Add unit test for image expression equality * [core] Add image property expression evaluation unit test * [core] Unskip image expression render test * [core] Skip 'in' expression tests * [core] Ignore fill-pattern/update-feature-state render test * [core] Rename Image::serialize to Image::toValue
* [core] Use expected.hpp from mapbox-baseMikhail Pozdnyakov2019-11-082-22/+16
|
* [core] Add batch conversion of latLngs to/from screenCoords (#15891)zmiao2019-11-071-0/+2
| | | | | | * [core] Add batch conversion of latLng vs screenCoord * [core] Take the simple approach
* [core] Add Scheduler::scheduleAndReplyValue() APIMikhail Pozdnyakov2019-11-051-0/+27
|
* [android] Convert GeoJSON features to tiles in backgroundMikhail Pozdnyakov2019-10-311-0/+1
| | | | | | | | | Composing tiles from the GeoJSON features is an expensive operation that might block UI thread on updating the `GeoJsonSource` with the new data. This change moves tile composing to the background thread and thus unblocks the UI thread.
* [core] Introduce and apply GeoJSONData::create() APIMikhail Pozdnyakov2019-10-311-0/+16
|
* [render-test] Add resource usage tracking to gfx contextMikko Pulkki2019-10-301-0/+22
|
* [core,android,darwin,qt] Add fields related to feature-stateJuha Alanen2019-10-281-1/+15
| | | | | Move the fields from geometry.hpp/feature.hpp as they are not part of the GeoJSON specification.
* [render-test] Implement fps benchmarking tests (#15803)Mikko Pulkki2019-10-221-0/+24
|
* [core] Introduce Scheduler::bindOnce() and use it in ImageManagerMikhail Pozdnyakov2019-10-101-0/+10
|
* [core] Introduce Scheduler::makeWeakPtr()Mikhail Pozdnyakov2019-10-092-0/+6
|
* [core] Decouple Scheduler interface from actor modelMikhail Pozdnyakov2019-10-043-12/+8
| | | | So that it is possible to schedule normal `std::function` and use `mapbox::base::WeakPtr`.
* [core] Enable move semantics for StylePropertyMikhail Pozdnyakov2019-09-271-3/+9
|
* [core] Return enum layer property values as stringAnder Conselvan de Oliveira2019-09-271-1/+1
| | | | | | | | | | The output of Layer::getProperty is a mapbox::base::Value which is equivalent to JSON. When setting the value of an enum property via JSON its value would be a string, so it would be natural to return a string too. Also, the numbers generated depend on the enum definition. They are not part of the style spec.
* [core] Introduce Light::getProperty()Mikhail Pozdnyakov2019-09-273-0/+11
|
* [core] ValueFactory for `expression::formatted`, other improvementsMikhail Pozdnyakov2019-09-274-21/+39
|
* [core] Layer::getPaintProperty() -> Layer::getProperty()Mikhail Pozdnyakov2019-09-2612-12/+12
|
* [core] Separate header for StylePropertyMikhail Pozdnyakov2019-09-262-9/+21
|
* [core] LayerProperty -> StylePropertyMikhail Pozdnyakov2019-09-2613-25/+25
|
* [core] Introduce Layer::getPaintProperty() generic getterMikhail Pozdnyakov2019-09-2613-8/+67
|
* [core] type aliases and conversion traits for mapbox::base::ValueMikhail Pozdnyakov2019-09-262-6/+58
|
* [core][android][darwin] Move number format to i18nAlexander Shalamov2019-09-262-3/+15
|
* [core][android][darwin] Move platform specific Collator impls from expressionAlexander Shalamov2019-09-262-4/+26
| | | | Platform specific Collator implementations should not be part of an expression APIs.
* [core] Fix performance-move-const-argThiago Marcos P. Santos2019-09-257-22/+14
|
* [build] Disable clang-format on generated codeThiago Marcos P. Santos2019-09-2512-0/+48
| | | | Nice to have, but would make maintain the templates a lot harder.