Molly Lloyd
d197fc7d8d
[core] simplify dependency layout process and refactor data structures
2018-08-31 13:08:47 -07:00
John Firebaugh
f7dcd5d741
[core] Simplify GeometryTileWorker
...
* The worker no longer needs to maintain symbol layer order.
* No need for separate symbolLayoutsNeedPreparation state. That dates back to when we had "two phase" symbol layout. Now we can just check symbolLayouts.empty(). (Similarly for pattern layouts.)
* No need to loop over symbol layouts twice in performSymbolLayout. Same reason as above.
* Simplify iconAtlas initialization. It initialized via every possible branch, so just do it up front.
2018-08-31 13:08:47 -07:00
Molly Lloyd
7b3edb6109
[core] remove redundant Uniform::Type alias
2018-08-31 13:08:47 -07:00
Molly Lloyd
4a5dc37245
[core] Implement CrossFadedDataDrivenProperty to add support for feature expressions in *-pattern properties
2018-08-31 13:08:47 -07:00
Konstantin Käfer
ec62e32153
[core] move PaintProperty::Attribute to TypeList and pass to Binder constructors
2018-08-31 13:08:47 -07:00
Konstantin Käfer
5e9bbfdd44
[core] introduce TypeListConcat and TypeList::ExpandInto
2018-08-31 13:08:47 -07:00
Konstantin Käfer
748e6bde5f
[core] allow passing multiple AttributeTypes to a PaintPropertyBinder
2018-08-31 13:08:47 -07:00
Konstantin Käfer
f97ba60da4
[core] rename gl::Attribute to gl::Attribute to remove overloaded naming
2018-08-31 13:08:47 -07:00
Konstantin Käfer
abc5043339
[core] simplify attribute/location types
2018-08-31 13:08:47 -07:00
Julian Rex
361d83af54
[core] Added pragma to remove warning ("unknown warning group '-Wtautological-constant-compare', ignored") on iOS build ( #12753 )
2018-08-28 12:15:02 -04:00
Asheem Mamoowala
fcab3a81cd
Add unit tests and fixtures for OfflineDatabase::mergeDatabase
2018-08-28 07:14:54 -07:00
Konstantin Käfer
30272924a9
[node] capture invalid input data as ParseError objects
...
This allows us to distinguish them from other types of errors
2018-08-27 14:07:40 -07:00
Mikhail Pozdnyakov
fb5afd34b9
[core] Add line-gradient property
...
Porting of https://github.com/mapbox/mapbox-gl-js/pull/6303
See the link above for the description of the feature and
its limitations).
Based on patch from @lbud (Lauren Budorick).
2018-08-23 19:01:40 +03:00
Justyna Janczyszyn
c83012f66a
fixed validation message for bounds
2018-08-22 17:26:48 +02:00
Chris Loer
33cd094d85
[core] fix icon-size for small data-driven values
...
port of mapbox/mapbox-gl-js#7125
2018-08-21 22:02:51 -07:00
Chris Loer
b0fcca5879
[core, node] Re-implement "avoid edges" behavior for MapMode::Tile
...
- Fixes issue #12461 .
- Only implement "avoid edges" in MapMode::Tile since it's no longer relevant in Static or Continuous mode.
- New: Force "avoid edges" to "true" for line labels, since in tile mode they'll always clip poorly at tile boundaries.
- Remove unused "withinPlus0/inside" logic.
2018-08-20 10:50:05 -07:00
Konstantin Käfer
1b4398f7aa
[core] downgrade event severity for erroneous DDS rendering to Warning
2018-08-20 18:05:33 +02:00
Konstantin Käfer
112bbc7ab2
[core] make style/conversion.hpp implementation private
2018-08-19 13:09:16 +02:00
John Firebaugh
8ca419fb2e
[core] Evict unused font stacks from GlyphManager
2018-08-17 09:38:39 -07:00
Chris Loer
20f880ebec
[core] Fix querying for annotations near tile boundaries at high zoom.
...
Fixes issue #12472 .
This commit doesn't address the underlying issues that come from symbolAnnotationTree using a slightly lower precision coordinate system than the annotations themselves.
Instead, it just puts a small padding around each tile when it queries for tile data, so that symbols right at the tile boundary will be included in both tiles.
The rendering/querying code will take care of only displaying one instance.
The padding is in global coordinates, so at higher zoom the padding will be larger in tile units -- this is consistent with precision loss also being greater at higher zoom.
2018-08-14 12:35:50 -07:00
Vladimir Kondrashov
9ecb0997ef
[core] Fix out of range exception for string compare
2018-08-14 11:16:10 -07:00
Chris Loer
41d5768f58
[core] Don't default-show text/icons that depend on the placement of a paired icon/text
...
Fixes issue #12483 .
2018-08-13 14:31:30 -07:00
John Firebaugh
d886d3e4c0
[core] Factor out setVisibility conversion
2018-08-13 12:39:44 -07:00
John Firebaugh
58202eaf80
[core] Optimize generated set{Paint,Layout}Property code
2018-08-13 12:39:44 -07:00
John Firebaugh
b2f60a4bf2
[core] Eliminate setProperty & co.
2018-08-13 12:39:44 -07:00
Sudarsana Babu Nagineni
fc0745a699
[core] Fix build when building Qt Location plugin for Android
...
- log2 is not available on Android before API 18.
- Android doesn't have 'round' on the std:: namespace when using g++.
Co-authored-by: Thiago Marcos P. Santos <thiago@mapbox.com >
2018-08-10 11:19:24 +03:00
Bruno de Oliveira Abinader
20d21cb7bc
Revert "[core] Replace Boost.Spirit with std::regex in CacheControl::parse()"
...
This reverts commit 990b3b11b9 .
2018-08-08 19:03:55 +03:00
Chris Loer
4291688b86
[core] Use correct Log::record overload. ( #12571 )
2018-08-08 10:53:01 -04:00
Bruno de Oliveira Abinader
990b3b11b9
[core] Replace Boost.Spirit with std::regex in CacheControl::parse()
2018-08-08 14:14:34 +03:00
Bruno de Oliveira Abinader
83bd4c2135
[core] Replace remaining dynamic_cast with static_cast
2018-08-08 14:14:34 +03:00
Mikhail Pozdnyakov
15a2623147
[core] Add lineMetrics to GeoJSONOptions
...
This patch also bumps geojson-vt-cpp version to 6.6.0,
which enables the `lineMetrics` option.
2018-08-08 12:53:32 +03:00
Mikhail Pozdnyakov
0ec4a84c31
Rename EvaluationContext::heatmapDensity to colorRampParameter
...
More generic name as the same class member is to be used by the
linear gradient properties.
2018-08-07 18:31:59 +03:00
Ivo van Dongen
946db666b9
[core] support windows compilation with msvc2017 and clang 6
2018-08-07 10:13:19 +03:00
Asheem Mamoowala
a5fea5febf
Fix TileJSON conversion to allow single point bounds
2018-08-02 12:16:37 -07:00
Molly Lloyd
1a840281b5
[core] don't prefetch tiles for geojson sources ( #12529 )
2018-08-02 11:43:34 -07:00
Anand Thakker
d25e1a1e7f
Relax typing for comparison operators ( #12537 )
...
* Relax typing for comparison operators
Ports https://github.com/mapbox/mapbox-gl-js/pull/6961
* Review comments
* Lint fixes
2018-08-02 13:48:47 -04:00
John Firebaugh
9bdd765a02
[core] Merge DataDrivenPropertyValue into PropertyValue ( #12513 )
2018-07-31 14:21:47 -07:00
Konstantin Käfer
c77aa79f51
[core] update parse_date from cURL 7.61.0
2018-07-31 20:57:09 +02:00
John Firebaugh
9a1bb1ad14
[core] Tweak conversions to reduce binary size
...
* return {} → return nullopt
* error = { "..." } → error.message = "..."
2018-07-30 17:17:38 -07:00
John Firebaugh
bf7785618a
[core] Simplify CompoundExpression implementation
2018-07-30 14:08:27 -07:00
John Firebaugh
85742b908d
[core] Avoid unnecessary template instantiations
2018-07-30 14:08:27 -07:00
Sudarsana Babu Nagineni
91ace9d465
Remove use of noncopyable in Context
2018-07-30 12:38:24 +03:00
Sudarsana Babu Nagineni
15a1c7b71f
Fix compilation errors with libc++ on QNX 7
...
This patch fixes the compilation errors on QNX 7:
1) QNX 7 compiler (i.e qcc based GCC 5.4.0 with libc++ from LLVM) has a
limited c++11 feature support and causing the compilation
errors with the inheriting constructors. This fixes the issues by
providing the required constructors explicitly.
2) Resolves an ambiguous overload error with optional<T>
2018-07-30 12:38:24 +03:00
John Firebaugh
10e4ea0f28
[core] Compress all shader source as a single corpus
2018-07-25 11:39:05 -07:00
John Firebaugh
888a516f1f
[core] Compress shader source code
2018-07-25 11:39:05 -07:00
John Firebaugh
f6659c729f
[core] Use hand-rolled RTTI
2018-07-24 11:08:40 -07:00
John Firebaugh
2bbc792060
[core] Check all bucket dynamic_casts
...
A mismatch can occur when a layer changes from one type to another.
2018-07-24 11:08:40 -07:00
Bruno de Oliveira Abinader
cb714d57c5
[core] Replace expressions RTTI with enums + static cast
2018-07-24 10:06:18 +03:00
Bruno de Oliveira Abinader
1683da3225
[core] coveredByChildren is false if at least one child is uncovered
2018-07-24 09:18:19 +03:00
Chris Loer
f9b36f9f5b
[core] Add symbol-placement: line-center
...
- Remove unused/vestigial 'maxCameraDistance'
- Create a single collision circle for line labels that are less than half the width of a collision circle
2018-07-23 13:33:27 -07:00