This isn't actually a very good fix. The issue in the "maptopixel" simplification
is still there, it is just less obvious, while sacrificing a bit of QgsGeometry correctness
(like the fact that linear ring should have >= 4 points)
Along the way I have added some comments that may help others decode why the code does things it does.
Previously any update of a scalebar would reset it's height to
the minimum height allowed. Now, if the user has set a height
greater than this minimum than that height is kept. (fix#10466)
QPainter::drawLine(x1,y1,x2,y2) takes int values, so coordinates
were being rounded to the nearest mm. Consequently scale was way
off. Also fixes horizontal line for tick styles being drawn
incorrectly with multiple overlapping segments. (fix#10685)
- This is noted in the tool tip, but was not set. Always Cache was the
default, which caused the cache to never be updated on upstream changes.
Caveat: this does not fix projects with existing WCS layers.
[BUGFIX] #11484 QGIS server: embedded layers are not published (GetCapabilities, GetMap, etc)
In QgsServerProjectParser::createLayerFromElement, we need to generate a
QgsServerProjectParser of the parent project to return the mapLayer for
embedded layers. To do it, I use QgsCacheConfig to get the
QgsServerProjectParser for the parent project.
Funded by 3Liz.
Issue #1072 QGIS server: embedded groups do not render in GetMap requests if
leave layers are requested has been fixed 40d91457f6f069886c5ba1c28db1efb2ff4ccac7
But another fix about embedded layers lacks. A fixme annotation is in the
QgsServerProjectParser::createLayerFromElement. This one is about return the
layer if it is embedded.
In QgsServerProjectParser::createLayerFromElement, we need to generate a
QgsServerProjectParser of the parent project to return the mapLayer for
embedded layers. To do it, I use QgsCacheConfig to get the
QgsServerProjectParser for the parent project.
Funded by 3Liz.
The problem was that rule-based renderer allowed cloned rules to have the same unique rule key.
That in turn created the confusion with checkboxes in legend. Now rules always have new rule key
when cloned. The only exception is when the whole renderer is cloned - in such case we preserve
their rule keys, so that other components (legend / visibility presets) can still keep using
the original rule keys.
Projects where this problem appears need to be fixed - the easiest way is to select all rules,
copy&paste them and remove the previous rules.