-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
6.8.4, 6.9.1
A minimal reproducer that is adapted from "diagram scene" example is attached. Build and run, then scroll around, one will see "tearing":
If the screen is scaled, e.g. by 125% or 150%.
That is due to
view->setCacheMode(QGraphicsView::CacheBackground);
Without caching, the problem is gone.
Plus, "setDevicePixelRatio" does not help here. Tearing still happens no matter if QPixmap knows the correct pixel ratio or not.
What original reporter suspects:
The fundamental issue is that the cached background is a pixmap and it can only be shifted full pixels, where as the backgrond drawing happens to subpixel accuracy to the same backbuffer.