diff options
author | Chris Loer <chris.loer@gmail.com> | 2018-09-06 14:58:37 -0700 |
---|---|---|
committer | Chris Loer <chris.loer@mapbox.com> | 2018-09-12 14:10:46 -0700 |
commit | d735d89835fb3076e09594fce2a141fe1495e33f (patch) | |
tree | 36fb80484b3952fb730fd34a77439d303d002cdc /src/mbgl/map | |
parent | 079ba0209ed383c15123902f0810e658c2b0abf4 (diff) | |
download | qtlocation-mapboxgl-d735d89835fb3076e09594fce2a141fe1495e33f.tar.gz |
[core] Port "collision group" plumbing to gl-native.
[node] Hook up map-wide "crossSourceCollisions" option, defaulting to true.
[test] Pass "crossSourceCollisions" test option through test harness; enable cross-source-collisions tests on native.
Diffstat (limited to 'src/mbgl/map')
-rw-r--r-- | src/mbgl/map/map.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/mbgl/map/map.cpp b/src/mbgl/map/map.cpp index ddac5c5c8f..9d886cb74c 100644 --- a/src/mbgl/map/map.cpp +++ b/src/mbgl/map/map.cpp @@ -44,7 +44,8 @@ public: Scheduler&, MapMode, ConstrainMode, - ViewportMode); + ViewportMode, + bool); ~Impl(); @@ -73,6 +74,7 @@ public: const MapMode mode; const float pixelRatio; + const bool crossSourceCollisions; MapDebugOptions debugOptions { MapDebugOptions::NoDebug }; @@ -96,7 +98,8 @@ Map::Map(RendererFrontend& rendererFrontend, Scheduler& scheduler, MapMode mapMode, ConstrainMode constrainMode, - ViewportMode viewportMode) + ViewportMode viewportMode, + bool crossSourceCollisions) : impl(std::make_unique<Impl>(*this, rendererFrontend, mapObserver, @@ -105,7 +108,8 @@ Map::Map(RendererFrontend& rendererFrontend, scheduler, mapMode, constrainMode, - viewportMode)) { + viewportMode, + crossSourceCollisions)) { impl->transform.resize(size); } @@ -117,7 +121,8 @@ Map::Impl::Impl(Map& map_, Scheduler& scheduler_, MapMode mode_, ConstrainMode constrainMode_, - ViewportMode viewportMode_) + ViewportMode viewportMode_, + bool crossSourceCollisions_) : map(map_), observer(mapObserver), rendererFrontend(frontend), @@ -128,6 +133,7 @@ Map::Impl::Impl(Map& map_, viewportMode_), mode(mode_), pixelRatio(pixelRatio_), + crossSourceCollisions(crossSourceCollisions_), style(std::make_unique<Style>(scheduler, fileSource, pixelRatio)), annotationManager(*style) { @@ -783,7 +789,8 @@ void Map::Impl::onUpdate() { style->impl->getLayerImpls(), annotationManager, prefetchZoomDelta, - bool(stillImageRequest) + bool(stillImageRequest), + crossSourceCollisions }; rendererFrontend.update(std::make_shared<UpdateParameters>(std::move(params))); |