Created attachment 144305 [details] X11 desktop at 100%, 200% and with variable set SUMMARY On X11 desktops, when the environment variable `PLASMA_USE_QT_SCALING=1` is set, the Pager widget only shows the first quarter of the desktop (in the case of 200% scaling). When the variable is not present, the pager works correctly when Plasma's global scale set to 100% and 200%. Wayland is not affected and works as expected, even with the variable set. Perhaps there needs to be a condition to divide the global scale (e.g. 200% = 2) when X11 is in use and the environment variable is present? STEPS TO REPRODUCE A HiDPI display is useful, but not required. 1. Set the global scale to 200%. 2. echo "PLASMA_USE_QT_SCALING=1" >> .bash_profile 3. Log out and back in 4. Observe the Pager widget on the panel and open some windows in the top-left and bottom-right regions. OBSERVED RESULT On X11 desktops, the window outlines on the widget are not accurately shown when PLASMA_USE_QT_SCALING is set. EXPECTED RESULT The pager shows the correct position/size of windows for a virtual desktop. SOFTWARE/OS VERSIONS OS: Arch Linux KDE Plasma Version: 5.23.4 KDE Frameworks Version: 5.88.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION See attachments for screenshots.
Can confirm.
The thing this is a blocker for (Bug 356446) is closed now, and doing this was never supported anyway. Unfortunately I think we have to close this. Folks who want a decent hidpi experience will have to use Wayland and look forward to upcoming changes to improve the experience for XWayland apps in particular. Sorry everyone. :(
*** Bug 448967 has been marked as a duplicate of this bug. ***
Can reproduce
PLASMA_USE_QT_SCALING=1 is still not supported, so these kinds of issues when using it on X11 can be expected. If you'd like to re-open and fix this, we should re-open the parent bug and all the other blockers too, and implement your proposed UI to let the user choose what kind of scaling they want in the KScreen KCM on X11. Would you like to start on that?
(In reply to Nate Graham from comment #5) > PLASMA_USE_QT_SCALING=1 is still not supported, so these kinds of issues > when using it on X11 can be expected. > > If you'd like to re-open and fix this, we should re-open the parent bug and > all the other blockers too, and implement your proposed UI to let the user > choose what kind of scaling they want in the KScreen KCM on X11. > > Would you like to start on that? The bug seems to be fixable within my knowledge level and I am working on this. I can't say other blockers can be fixed but at least I will take this bug. Marked it as LATER now.
https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/848
Git commit 16d44ae2cb5e680f03a7414afe94f92d49fdcb37 by Nate Graham, on behalf of Fushan Wen. Committed on 21/02/2022 at 18:13. Pushed by ngraham into branch 'master'. applet/pager: Divide window size by devicePixelRatio on X11 when it's >1 KWindowInfoPrivateX11::frameGeometry() returns the true geometry of a window, so dividing the window size by devicePixelRatio is needed to get the correct size when it's greater than 1. FIXED-IN: 5.24.2 M +18 -12 applets/pager/plugin/windowmodel.cpp https://invent.kde.org/plasma/plasma-desktop/commit/16d44ae2cb5e680f03a7414afe94f92d49fdcb37
Git commit 78b1d26134647d890ee55e1ad7607cbd77e538be by Nate Graham, on behalf of Fushan Wen. Committed on 21/02/2022 at 18:16. Pushed by ngraham into branch 'Plasma/5.24'. applet/pager: Divide window size by devicePixelRatio on X11 when it's >1 KWindowInfoPrivateX11::frameGeometry() returns the true geometry of a window, so dividing the window size by devicePixelRatio is needed to get the correct size when it's greater than 1. FIXED-IN: 5.24.2 (cherry picked from commit 16d44ae2cb5e680f03a7414afe94f92d49fdcb37) M +18 -12 applets/pager/plugin/windowmodel.cpp https://invent.kde.org/plasma/plasma-desktop/commit/78b1d26134647d890ee55e1ad7607cbd77e538be