SUMMARY When using QML in KWin/Plasma, every frame triggers a full-window repaint, even when only a small region of the UI changes. This results in unnecessary GPU/CPU workload. I would like to ask whether KWin/Plasma has plans to support QML partial redraw / region-based damage tracking, similar to what Qt Quick can theoretically provide. STEPS TO REPRODUCE Create a QML window with a small animated element (e.g. a blinking rectangle). Run the QML scene under KWin/Plasma Wayland. Observe with tools such as WAYLAND_DEBUG=1, KWin’s paint debug tools, or GPU profiling. OBSERVED RESULT KWin repaints the entire surface every frame, even though only a very small region changes in the QML scene. This leads to increased GPU usage and unnecessary composition cost. EXPECTED RESULT Ideally, QML could provide partial-damage rectangles to the compositor, and KWin would only repaint the regions that actually changed. This behavior would greatly benefit performance on low-power devices and animations that affect only small portions of the UI. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Any recent Plasma Wayland build KDE Plasma Version: (your version) KDE Frameworks Version: (your version) Qt Version: (your Qt version) ADDITIONAL INFORMATION I am a developer working on QML scene optimization. I found that Qt Quick Scene Graph is capable of tracking changed dirty regions internally, but currently KWin treats QML surfaces as fully damaged for each frame. I would like to ask: Is there an existing plan or ongoing work for supporting partial damage for QML-based windows? If not, would such a feature be considered for future Plasma releases?
Absolutely if we get swapBufferWithDamages from Qt we'll make use of it. >I am a developer working on QML scene optimization. I found that Qt Quick Scene Graph is capable of tracking changed dirty regions internally, but currently KWin treats QML surfaces as fully damaged for each frame. Cool, we've interacted on gerrit before. CC me on any reviews.