Details
-
Bug
-
Resolution: Fixed
-
Not Evaluated
-
6.8.0
-
None
-
Windows 10 and Qt 6.8 via PySide
-
18f280eed (dev), 385385dc4 (6.9), 4f267e4fe (6.8)
Description
Running the attached code will render three squares (red, green, blue). After one second the red square is removed from the Shape (the process is a little convoluted, the code must pop all of the items, and then append the non-first items back again). And after another second the green square is removed, and after that the blue square.
After the red square is removed (you can see that is it removed by the output of the print), the software and geometry renderers will instead render a red square and a green square, hiding the blue square (nothing changes in the curve renderer due to QTBUG-133230). The root cause is that items added to the Shape are not marked as dirty, and so the only thing the renderer receives is that the count has changed, so the last item is removed from the cached data.
Attachments
For Gerrit Dashboard: QTBUG-133231 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
620534,5 | QuickShapes: Handle removals of ShapePaths correctly | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
621821,2 | QuickShapes: Handle removals of ShapePaths correctly | 6.9 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
621906,2 | QuickShapes: Handle removals of ShapePaths correctly | 6.8 | qt/qtdeclarative | Status: MERGED | +2 | 0 |