Summary: | Graphical Corruption Around Certain Widgets with fractional scale factor | ||
---|---|---|---|
Product: | [Frameworks and Libraries] frameworks-qqc2-desktop-style | Reporter: | Freddie Witherden <freddie> |
Component: | general | Assignee: | kdelibs bugs <kdelibs-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ahiemstra, bugs.kde.org, bugseforuns, chermnykh2001, CoelacanthusHex, dennis.oflaherty, freddie, kde, kde, michel, miranda, nate, noahadvs, notmart, postix |
Priority: | HI | ||
Version: | 5.101.0 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
See Also: |
https://bugs.kde.org/show_bug.cgi?id=414266 https://bugs.kde.org/show_bug.cgi?id=475886 |
||
Latest Commit: | https://invent.kde.org/frameworks/qqc2-desktop-style/-/commit/1d8731f0d746820bd65b4494246668e81b58063d | Version Fixed In: | 6.0 |
Attachments: |
Example screenshot.
Text rendering problems in systemsettings Issues in Info Center |
Description
Freddie Witherden
2023-01-09 21:53:17 UTC
Created attachment 155160 [details]
Example screenshot.
What scale factor and GPU are you using? (In reply to Nate Graham from comment #2) > What scale factor and GPU are you using? Under "Display Configuration" the Global scale is at 150%. My GPU is an Intel A770M with Mesa 22.3.2. However, I have also observed this on a system with an AMD GPU. Thanks, I thought so. Looks like another issue like Bug 414266, which was fixed in Qt 5.15.3. Or maybe the same issue returned. :( *** Bug 475834 has been marked as a duplicate of this bug. *** *** Bug 475887 has been marked as a duplicate of this bug. *** *** Bug 477101 has been marked as a duplicate of this bug. *** *** Bug 477102 has been marked as a duplicate of this bug. *** *** Bug 477488 has been marked as a duplicate of this bug. *** Hello, Is there any chance that this issue will be fixed before the KDE 6 release? *** Bug 477807 has been marked as a duplicate of this bug. *** I don't think so. This issue occurs without changing DPR. Doesn't DPR change automatically with the scale factor, though? Info Center that seems to be one of the most affected apps doesn't seem to be using `QQuickTextEdit`. (In reply to Nate Graham from comment #15) > Doesn't DPR change automatically with the scale factor, though? Yes, but IIUC this issue is about the graphical glitches that occur without runtime DPR changes, right? It is a different bug. I managed to reproduce a minimal case. It's exhibits when we're not aligned. ``` import QtQuick import QtQuick.Controls Rectangle { width: 300 height: 300 TextField { y: 0.333345345 text: "hello world" } } ``` At 1x or 2x it looks fine, at 1.5x for some reason it exhibits artifacts. Not all fractions look bad, just some. A possibly relevant merge request was started @ https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/354 Git commit 1d8731f0d746820bd65b4494246668e81b58063d by Marco Martin. Committed on 09/01/2024 at 14:24. Pushed by mart into branch 'master'. make sure the node is always at an integer position with fractional scaling sometimes nodes are positioned not only in non integer logical pixels, but end up being positioned also at non integer device pixels, making textures badly rendered M +6 -1 plugin/kquickstyleitem.cpp https://invent.kde.org/frameworks/qqc2-desktop-style/-/commit/1d8731f0d746820bd65b4494246668e81b58063d Created attachment 164778 [details]
Text rendering problems in systemsettings
The change fixed all the artifacts around controls (thanks!), but some texts still show rendering problems.
Git commit 69eba3a87868c01e919f90cf5e4d4c5069f4ac64 by Arjen Hiemstra. Committed on 12/01/2024 at 15:26. Pushed by ahiemstra into branch 'master'. styleitem: Base render node size on image When using fractional scaling, we may end up with an image that is slightly different in size from the bounds of our item, since the image will always be in integer size but the item size can be fractional. This causes it to be rendered at a slightly different size from the texture size, which triggers interpolation and leads to glitches in the rendered result. To avoid all that, rather than using our item's bounds for the node size, use the image size converted back to logical pixels as the node size. This may actually end up with us using a fractional node size, but ensures that when rendered we use the exact image dimensions. M +8 -5 plugin/kquickstyleitem.cpp https://invent.kde.org/frameworks/qqc2-desktop-style/-/commit/69eba3a87868c01e919f90cf5e4d4c5069f4ac64 @Arjen, there was a bug bounty opened for this one: https://discuss.kde.org/t/bug-fix-fractional-scaling-on-wayland/6594 I'm still having rendering issues in Info Center. Please see the attached screenshot Created attachment 165708 [details]
Issues in Info Center
I see that as well, but it's a separate issue from the one described here. Can you submit a new bug report for it? Thanks! |