Tested with a release binary and Swiss OSM roads in PostGIS at several zoom
levels (the higher, the less features), values in ms (average over at
least 100 queries):
Level | Before | After | % improvement
-------------------------------------------
7 | 37 | 36 | 2.7
6 | 41 | 38 | 7.32
5 | 48 | 46 | 4.17
4 | 70 | 64 | 8.57
3 | 114 | 109 | 4.39
Not much improvement (I'm quite dispointed, here), but not much change in
the code.
Before this commit it was somehow implied that OS X is not an
UNIX platform when in fact it is. Also, starting with macOS Sierra,
Apple has dropped the naming of OS X towards macOS.
Previously these methods would inconsistently handle the
edit buffer, eg uniqueValues would consider changed attributes
but not added features. Now uniqueValues, minimumValue and
maximumValue all consider both added features and changed
attribute values when performing their calculation.
The most noticable effect of this fix is that the unique
values widget now correctly shows values for features which
have been added but not yet committed to the provider.
Now clicking color buttons inside the layer style panel causes
the color picker dialog to be opened inside the style panel itself
rather than as a separate dialog
This should fix a few reported and unreported issues
with false positive timeout errors.
Fixes: #12243
(cherry-picked from ace9d2b0f661849106f0448189cb233710754f12)
The existing polygoncentroids algorithm has been deprecated
(and hidden from the toolbox), and a new, generic centroids
algorithm added which works with lines and multipoints
* Make closestSegment() behave as expected by QgsGeometry::closestSegmentWithContext
This fixes a bug that QgsPointLocator::nearestEdge() would return valid match even for point layers.
* Shortcut if using QgsPointLocator with a wrong layer type
Switching from QVariant to QVariantList solves the underlying Qt issue:
- comparison of QVariantList objects works fine
- comparison of QVariantList objects wrapped in QVariant does not work
The extra wrapping of QVariantList into another QVariant seems unnecessary anyway,
so we may as well save a tiny bit of memory and cpu