Skip to content

presentationwidget: Invalidate pixmaps on dpr change

Kai Uwe Broulik requested to merge work/kbroulik/dpr-change-presentation into master

Since the last rendered pixmap is usually reused, its device pixel ratio can end up different from the devicePixelRatioF() of the widget which is used for most size calculations which leads to an area that might be unpainted causing visual artifacts.

BUG: 479141


@aacid @sune @nicolasfella @davidedmundson

The transition animations are still quite borked for me but I can reproduce that even under XWayland and get some glitches with integer scaling, too. Seems to be because it paints transparent (if I change the fill color to black in init transition it goes away) and then I get to see through the window into an area the compositor doesn’t repaint. Looks like I might also have to look into window formats since it sets WA_OpaquePaintEvent but right now QtWayland is always RGBA. Doesn’t explain XWayland, though.

Edited by Kai Uwe Broulik

Merge request reports