[Wayland/KDE] KWin rendering is blurred for some window sizes
Categories
(Core :: Widget: Gtk, defect, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox-esr140 | --- | unaffected |
| firefox145 | --- | unaffected |
| firefox146 | --- | unaffected |
| firefox147 | --- | fixed |
| firefox148 | --- | fixed |
People
(Reporter: stransky, Assigned: stransky)
References
(Blocks 2 open bugs, Regression)
Details
(Keywords: regression)
Attachments
(3 files)
|
297.12 KB,
image/png
|
Details | |
|
327.91 KB,
image/png
|
Details | |
|
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
|
Details | Review |
After Bug 2000769 implementation KWin (KDE) renders blurred output for some window sizes. Looks like 'stable' rounding is not implemented correctly there.
| Assignee | ||
Updated•6 months ago
|
| Assignee | ||
Updated•6 months ago
|
Comment 1•6 months ago
|
||
Set release status flags based on info from the regressing bug 2000769
Comment 2•6 months ago
|
||
Testing on latest Nightly and KDE git master Wayland 150% global scale, I also indeed see blurring in the middle of the window (similar to Bug 1990378, which is also still occurring) at certain window sizes.
Attaching two screenshots to demonstrate (where KDE's meta+ctrl+scroll zoom to show pixel grid feature helped greatly)
I think this seems like Bug 2000769 patch regressing things back to how they were before the Bug 1849092#c71 fix (which made things look great until now)?
Comment 3•6 months ago
|
||
Comment 4•6 months ago
|
||
Comment 5•6 months ago
|
||
And afaict the state at sharp window sizes after Bug 2000769, is identical pixel-wise to how it was at all sizes before Bug 2000769
Comment 6•6 months ago
|
||
(Note I have not confirmed myself that it was specifically 2000769 that regressed this, but I can do mozregression too if it'd help)
| Assignee | ||
Comment 7•6 months ago
|
||
Hello Tem, yes, Bug 2000769 may regress it. Firefox switched to stable rounding (https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/143#note_1343171) which is supposed to map subsurfaces almost correctly. The thing is that subsurface size is calculated from both position and size as:
size = round((subsurface_size + subsurface_pos) * scale) - round(subsurface_pos * scale)
so the position actually also affects subsurface size. Do you think KWin can be updated for it?
Thanks.
| Assignee | ||
Comment 8•6 months ago
|
||
I expected KWin uses that already but I'm wrong apparently.
Comment 9•6 months ago
|
||
Set release status flags based on info from the regressing bug 2000769
Comment 10•6 months ago
|
||
Hi thanks for all these efforts!
Paraphrasing some stuff from kwin matrix over to here to keep track:
The main blocker for full Wayland wp-fractional-scale-v2 (https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/149) is lack of client impl, and FF would be a great one.
The kwin impl (https://invent.kde.org/plasma/kwin/-/merge_requests/3170) is large and frequently needs daunting rebases, but otherwise in theory is ready to test I think. As for when it can be merged, Vlad said Plasma 6.6 already has many changes and could maybe squeeze it in, but maybe more manageable for 6.7 or later. KDE version/extension of the protocol might be a good option for this.
Do you think KWin can be updated for it? I expected KWin uses that already but I'm wrong apparently
Yeah, I was blindly hoping any of several recent tweaks in git master would help, but seems not. So as for a small self-contained change in the short term just for this stable rounding method, I'm not sure myself, Vlad or Xaver might know better :)
Comment 11•6 months ago
|
||
Do I understand right that the state before Bug 2000769 was {KDE sharp, GNOME blurry} and after that it's now {KDE blurry, GNOME sharp} with no extra patches to GNOME?
Comment 12•6 months ago
|
||
(In reply to Tem PQD [:tempqd] from comment #11)
Do I understand right that the state before Bug 2000769 was {KDE sharp, GNOME blurry} and after that it's now {KDE blurry, GNOME sharp} with no extra patches to GNOME?
I can confirm the GNOME part of that.
| Assignee | ||
Comment 13•6 months ago
|
||
(In reply to Tem PQD [:tempqd] from comment #11)
Do I understand right that the state before Bug 2000769 was {KDE sharp, GNOME blurry} and after that it's now {KDE blurry, GNOME sharp} with no extra patches to GNOME?
Yes, exactly. KWin specific fallback to old rounding is Bug 2005160.
| Assignee | ||
Comment 15•6 months ago
|
||
Hm, unfortunately simple revert of Bug 2000769 doesn't fix that for KDE. I suspect the solution lies somewhere in the bunch of fractional rounding patches which landed in 147.0.
| Assignee | ||
Comment 16•6 months ago
|
||
Updated•6 months ago
|
Updated•6 months ago
|
Comment 17•6 months ago
|
||
Comment 18•6 months ago
|
||
Comment 19•6 months ago
|
||
Backed out for causing build bustage on WaylandSurface.cpp
Comment 21•6 months ago
|
||
Comment 22•6 months ago
|
||
| bugherder | ||
| Assignee | ||
Comment 23•6 months ago
|
||
Comment on attachment 9532328 [details]
Bug 2004350 [KDE] Don't use stable subsurface rounding on KDE r?emilio
Beta/Release Uplift Approval Request
- User impact if declined/Reason for urgency: Blurred rendering on KDE/Wayland and fractionally scaled displays.
- Is this code covered by automated tests?: No
- Has the fix been verified in Nightly?: No
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): Reverted to old behavior for KDE only.
- String changes made/needed:
- Is Android affected?: No
Comment 24•6 months ago
|
||
| bugherder | ||
Comment 25•6 months ago
|
||
Comment on attachment 9532328 [details]
Bug 2004350 [KDE] Don't use stable subsurface rounding on KDE r?emilio
Approved for 147.0b5.
Updated•6 months ago
|
Comment 26•6 months ago
|
||
| uplift | ||
Description
•