[android] #5104 - make nativeLatLngForPix faster (52ms - 45ms).
[andriod] #5104 - make nativeSetLatLng faster (117ms to 105ms)
[android] #5104 - make nativeFlyTo faster (106ms to 97ms)
[android] #5104 - make nativeEaseTo faster (103 to 94ms)
[android] #5104 - make nativeJumpTo faster (94 to 86ms)
[android] #5104 - make nativeProjectedMetersForLatLng faster (32 to 30ms)
[android] #5104 - make nativeLatLngForProjectedMeters faster (32 to 30ms)
* correct all EXPECT_EQ(actual, expected) to EXPECT_EQ(expected, actual)
* fix getMapboxURLPathname() of URL with querystring
* add test for normalizeSourceURL of non-mapbox protocal
* Update mapbox.cpp
- Use glBindAttribLocation for GLSL attributes.
- Create a separate shader for each shader that supports overdraw.
Needed because each uniform location must be known for every program.
- Create a separate VAO for each shader inside buckets.
Needed because we can only bind a VAO to a specific shader.
Fixes#5435.
- puts function definitions in a namespace ... {} rather than using namespace ...;
- remove trailing whitespace
- add trailing newline
- protect SQL statements from being formatted by clang-format
32 bit integers should be enough for zoom scale logic. In shape
annotation logic, 'maxAmountOfTileFeatures' requires 64 bits because we
are multiplying the zoom scale with the extent, which might give a
number higher than std::numeric_limits<uint32_t>::max().
The current implementation of view backed annotations mostly relies
on the existing annotation model manager and the associated underlying
boost query implementations for annotation management. However, since
the representation of the model is a view, an image was not installed
for view backed annotations. Because the underlying annotation
management implementation is not entire comfortable working without
an image, it would report
`[INFO] {Worker}[Sprite]: Can't find sprite named 'default_marker'`
when annotation models without an image were encountered.
This updates the annotation adding logic in to create (or reuse) and
install a small, invisible image for each view backed annotation.
* Layer source ID is immutable; must be provided to the constructor
* Layer source layer is mutable
* Layers with GeoJSON sources do not have a source layer
While here, make Layer::copy impl-private.