summaryrefslogtreecommitdiff
path: root/cmake
Commit message (Collapse)AuthorAgeFilesLines
* [core] Add expression filter support (#11251)Lucas Wojciechowski2018-03-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * WIP * WIP * WIP * Remove Filter::operator()(const Feature&) * WIP * WIP * WIP * WIP * Hook up expression filter evaluator * Replace `shared_ptr` with &reference * Fill in implementation of `void operator()(const ExpressionFilter&)` * Fix failing tests * Switch back to a shared_ptr per chat with @anandthakker * Fix benchmark compilation * Shot in the dark to fix CI * Shot in the dark to fix CI (part 2) * Shot in the dark to fix CI (part 3) * In src/mbgl/style/conversion/filter.cpp, add a port of isExpressionFilter and use it to decide in Converter<Filter>::operator() whether to parse the incoming JSON as an ExpressionFilter or one of the legacy filter types * Remove bool Filter::operator()(const GeometryTileFeature&) const * Ensure the map zoom is passed into filtering operations wherever applicable * Add expression filter tests * Addressed PR feedback * Implement `NSPredicate *operator()(mbgl::style::ExpressionFilter filter)` * Fix formatting& nit
* Relax type checking for "length"John Firebaugh2018-03-011-0/+2
|
* Replace embedded telem implementation with mapbox-mobile-events library (#10698)Jesse Bounds2018-02-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ios] Introduce mobile events dependency This adds the mobile events dependency including the events library's namespaced header file so that the related compiled symbols are prefixed to make them specific to the maps SDK. A pre-compiled header file is added so that the namespaced header file is added in all places where it is needed (most importantly every events library file). * [ios] Use new events library for telemetry events This makes the following significant changes: Refactors the MGLMapboxEvents singleton to delegate internally to an instance of MMEEventsManager that it keeps for itself. The MGLMapboxEvents public API is refactored to reflect this. Note: MGLMapboxEvents continues to handle checking for opt out Uses that new events API in MGLMapboxEvents to send all telem events (and turnstile) All embedded certs are removed since the new telem library uses public key info pinning Legacy telemetry utility classes for location and networking are removed since those are implemented in the telem library * [ios] Update submodules initialized by cmake We no longer bring in SMCalloutView as a submodule so it is removed. We now vendor the telemetry events library as a submodule so it is added. * Update mapbox-mobile-events * Update mobile events lib * Set events options with MGL user defaults values For options that historically could be set with user defaults in the Maps SDK, collect them and set the appropriate property values in the new events library. Also, check the existence of two new optional configuration values MGLTelemetryAccessToken and MGLTelemetryBaseURL so that the events endpoint and access token can be configured and the access token can easily be set dynamically and apart from the access token for the maps API. MGLTelemetryBaseURL replaces the legacy MGLTelemetryTestServerURL. This is ok because this value was never intended to be used by client applications. The new name better reflects the fact that the URL can be changed to any backend stack, not just a test server. Because it is possible for the configuration values to be read from user defaults before the events manager is fully set up, this also adds a local cache for the baseURL and accessToken values so that they can be stored and applied once it is time to setup the the events manager. * Update mapbox-mobile-events mapbox-mobile-events was forced pushed to include https://github.com/mapbox/mapbox-events-ios/pull/28 * Rename MGLMapboxEvents singleton access method Manager is not in the name of the class. Just call it an instance. * Update mapbox-mobile-events * Add comments about config value loading * Guard against creating events for IB * Refactor user defaults update handler This updates the handling logic for user defaults to break apart config changes that require a check for pausing or resuming the events lib’s telemetry collection from config changes that can happen with no update to the pause/resume state. It also ports the optimization from https://github.com/mapbox/mapbox-gl-native/pull/10803 so that the call to pause and resume is not performed unless the user defaults store has new values that have not yet been applied to the events library. * Update mapbox-mobile-events * Rename events submodule folder * Fix incorrect events library refs * Update mapbox-mobile-events * Update user user agent id value This value aligns with our schme of {source-sdk-platform} and will be used by the events library in the user agent and vendorid. * Update mapbox-mobile-events Pin to v3.0.0 (d522b18) * Improve code comments * [ios] Fixed a broken file reference to MGLTelemetryConfig.
* [core, ios, macos, android, node] Heatmap layer (#11046)Vladimir Agafonkin2018-02-151-0/+20
| | | | | Co-Authored-By: Konstantin Käfer <mail@kkaefer.com> Co-Authored-By: Anand Thakker <anandthakker@users.noreply.github.com> Co-Authored-By: Minh Nguyễn <1ec5@users.noreply.github.com>
* [core] Make RendererObserver a public interfaceThiago Marcos P. Santos2018-02-091-1/+1
| | | | Needed by backends implementing asyncronous rendering
* [build] convert CMake file list generation code to JavaScriptKonstantin Käfer2018-01-244-43/+51
| | | | Bash sorting is weird...
* [core] add raster-dem source type and hillshade layer type (#10642)Molly Lloyd2018-01-232-0/+32
|
* [core] Improve typing for !=, == expressionsJohn Firebaugh2018-01-091-0/+2
|
* [core] Use separate shaders for background and clippingLauren Budorick2018-01-091-0/+10
|
* [windows][build] Make nodejs/npm optionalThiago Marcos P. Santos2018-01-081-58/+60
|
* Support TileJSON bounds property (#10701)Asheem Mamoowala2018-01-052-1/+4
| | | | | | | | * [core] Parse TileJSON bounds property * [core] Add TileRange and LatLngBounds::contains(CanonicalTileID) Move LatLngBounds::contains impl to cpp file * [core] Skip tile creation outside of tileset bounds * [core] Fix TileRange for wrapped bounds and use for CustomTileLoader instead of LatLngBounds comparisons for tiles.
* [glfw] Use args in GLFW exampleBruno de Oliveira Abinader2017-12-181-0/+1
|
* [build] Replace boost_libprogram_options with argsBruno de Oliveira Abinader2017-12-182-2/+2
|
* [build] Add new warnings suggested by Xcode 9Jason Wray2017-12-151-3/+6
| | | | Also removes duplicate unknown pragmas warning.
* [core, macos, ios] Unit tests for LocalGlyphRasterizerChris Loer2017-12-111-0/+1
| | | | | | Core test uses stubbed "glyph.pbf" without Chinese glyphs Darwin test relies on locally available "PingFang" font. Android test relies on locally available "Droid" font. 'expected.png' is NOT correct b/c I haven't figured out how to run unit tests on Android yet.
* [core] Enable local glyph generation using TinySDF.Chris Loer2017-12-112-1/+2
| | | | | | | - Platform-specific LocalGlyphRasterizer is responsible for deciding which glyphs to rasterize locally and for implementing the rasterization. - Default platform implementation doesn't locally generate any glyphs -> no behavior change - Unit test uses StubLocalGlyphRasterizer, which returns a single fixed bitmap for all CJK glyphs - Rename glyph_loader.test to glyph_manager.test
* [core] C++ port of TinySDFChris Loer2017-12-111-0/+2
|
* [build] standardize on -fvisibility=hidden for all targetsKonstantin Käfer2017-11-2910-49/+0
| | | | | | | Enables -fvisibility=hidden for iOS and Linux, and adds a workaround for GCC 6.3-7.1 Adds a GCC 6 build Enables diagnostics for C files Fixes a shadow warning in parsedate.c
* [core, ios, macos] Implement unique_any and remove linb::anyAsheem Mamoowala2017-11-225-4/+2
|
* [core] Custom Geometry SourcesAsheem Mamoowala2017-11-222-0/+13
|
* [core] Add unit test for CrossTileSymbolIndexAnsis Brammanis2017-11-171-1/+2
|
* [core] Update unit tests for viewport collision.Chris Loer2017-11-171-1/+1
| | | | Add 'GridIndex' unit test.
* [core] Remove dead codeChris Loer2017-11-171-5/+0
| | | | | | - CollisionTile - FrameHistory - PlacementConfig
* [core] Update shaders/tests from GL JS.Chris Loer2017-11-171-0/+2
|
* [core] Add global CollisionIndex to replace CollisionTile.Chris Loer2017-11-171-0/+2
| | | | | | | - Switches from tile to viewport coordinates - Represents line labels with circle geometries - Projects line labels at collision detection time to improve accuracy - Adapts tile-based symbol queries to viewport coordinates
* [core] Add Placement class.Chris Loer2017-11-171-0/+2
| | | | Responsible for running global collision detection/symbol placement algorithm and updating symbol opacity buffers accordingly.
* [core] Add CrossTileSymbolIndex.Chris Loer2017-11-171-0/+2
| | | | This class is responsible for tracking which symbols are "the same" between tiles at different zoom levels, so that symbol opacities (fade animations) can be copied smoothly between tiles.
* Implement Expressions (#9439)Anand Thakker2017-11-084-0/+69
| | | Ports https://github.com/mapbox/mapbox-gl-js/pull/4777 (and its several follow-ups)
* [test] Added GLContextMode.Shared utestBruno de Oliveira Abinader2017-11-011-0/+1
|
* [core] Move GLContextMode to its own Renderer headerBruno de Oliveira Abinader2017-11-011-0/+1
|
* Replace compile-time polymorphism with runtime polymorphism in the ↵John Firebaugh2017-10-234-3/+14
| | | | conversion system
* [core] make forcing cache/network only more explicitKonstantin Käfer2017-10-121-0/+1
| | | | | | Previously, we used the existence of a `prior*` field in the Resource object as an indication for whether we should consult the cache or not. However, this is prone to error, since a failed cache lookup won't set any prior fields. Therefore, we manually set `priorExpires` to 0. This in turn triggered another bug where generated wrong expiration timestamps when the server response we got was expired (or expired between sending and receiving). This commit changes the flags so that we can now explicitly request CacheOnly/NetworkOnly (or All) loading methods, rather than the implicit Optional/Required naming scheme.
* [core] Split GeoJSONTileData and related classes into a separate headerAsheem Mamoowala2017-09-281-0/+1
|
* [build] split out DefaultFileSource and dependents to a separate targetKonstantin Käfer2017-09-284-3/+68
| | | | We don't want to link it into the node bindings, so keep it in a separate target
* [core] Move *TileID hashing to separate implJesse Crocker2017-09-261-1/+2
|
* [core] remove map update enumIvo van Dongen2017-08-311-1/+0
|
* [core] make thread.hpp publicIvo van Dongen2017-08-301-1/+1
|
* Add {Source,CompositeCamera}Function benchmarks (#9838)Anand Thakker2017-08-291-0/+6
|
* [core] Inline RenderItem and RenderDataJohn Firebaugh2017-08-241-1/+0
|
* [core] Merge RenderStyle into Renderer::ImplJohn Firebaugh2017-08-241-3/+0
|
* [test] Re-added API.ZoomHistoryBruno de Oliveira Abinader2017-08-221-0/+1
|
* Initialize Xcode project build settings (#9777)Anand Thakker2017-08-167-0/+38
|
* [test] Added API.RecycleMapUpdateImages testBruno de Oliveira Abinader2017-08-141-0/+1
|
* [core] current schedulerIvo van Dongen2017-08-091-0/+1
| | | | - Adds a way to set the current scheduler on the thread to be used whenever a mailbox is created that needs to reply on this thread
* [all] Merge View into RendererBackendJohn Firebaugh2017-07-261-1/+0
|
* [node, tests] Consolidate headless rendering logic in HeadlessFrontendJohn Firebaugh2017-07-265-10/+0
|
* [core] Remove API tests that are covered by node testsJohn Firebaugh2017-07-261-2/+0
|
* [core] add algorithm for computing masks for raster tilesKonstantin Käfer2017-07-244-0/+5
|
* [core] Refactor Painter awayJohn Firebaugh2017-07-191-2/+3
|
* [core] Extract renderTileDebug; inline renderClippingMaskJohn Firebaugh2017-07-191-4/+0
|