Created attachment 146858 [details] no wallpaper.png SUMMARY When using `PLASMA_USE_QT_SCALING=1`, plasmashell doesn't show the wallpaper on the primary screen, and the positions of notification items are wrong. Display: 1. Laptop display (disabled) 2. External display (enabled, primary) STEPS TO REPRODUCE 1. Add `PLASMA_USE_QT_SCALING=1` to /etc/environment 2. Reboot 3. Login to an X11 session OBSERVED RESULT No wallpaper, notification items are positioned in the center of the screen. EXPECTED RESULT Normal behavior after restarting plasmashell SOFTWARE/OS VERSIONS Information for package plasma5-desktop: ---------------------------------------- Repository : unstable-kde-frameworks Name : plasma5-desktop Version : 5.24.80git.20220216T115625~fb84414bd-ku.24.1 Arch : x86_64 Vendor : obs://build.opensuse.org/KDE:Unstable Installed Size : 8.6 MiB Installed : Yes Status : up-to-date Source package : plasma5-desktop-5.24.80git.20220216T115625~fb84414bd-ku.24.1.src Summary : The KDE Plasma Workspace Components ADDITIONAL INFORMATION X11
1. Are you using any scaling? 2. What are the screens' resolutions?
(In reply to Nate Graham from comment #1) > 1. Are you using any scaling? > 2. What are the screens' resolutions? 1. Yes. without PLASMA_USE_QT_SCALING=1, using any scaling will not affect the primary screen detection. 2. 1920x1080
The cause is clear now. It has nothing to do with PLASMA_USE_QT_SCALING=1. When having 2 screens and the one on the left is disabled, on login the "disabled" screen will be enabled and then disabled, but QScreen doesn't emit geometryChanged because there is no change in screen geometry (sometimes). However the signal is required to position the desktop view correctly.
The x is set by another program, likely kwin. My previous assumption is wrong.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1491
If the width of the DesktopView is equal to the width of the screen , then the DesktopView is not likely to be moved. However when using `PLASMA_USE_QT_SCALING=1`, the condition is false.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1777
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1781
Upstream fix: https://codereview.qt-project.org/c/qt/qtbase/+/413380
Git commit cea5cba30890fab992dab2be6ea69521aef0eac0 by Fushan Wen. Committed on 22/06/2022 at 16:02. Pushed by fusionfuture into branch 'Plasma/5.24'. shell: refresh geometries of all `DesktopView` and `PanelView` when receiving `logicalDotsPerInchChanged` Workaround for https://codereview.qt-project.org/c/qt/qtbase/+/413380 FIXED-IN: 5.24.6 M +8 -0 shell/desktopview.cpp M +8 -0 shell/panelview.cpp https://invent.kde.org/plasma/plasma-workspace/commit/cea5cba30890fab992dab2be6ea69521aef0eac0
Currently only 5.24.6 is fixed because LTS tends to ship with an older Qt version. 5.25 and master branch don't have the fix as the Qt fix is still under review.
Unless the proper Qt fix will break the change you just pushed, I think it's worth it to have in 5.25 and master too.
The Qt fix won't break the workaround. Let's wait for another week to see if upstream is willing to accept the fix.
Git commit 41fb821545aac4df273fb45d0e4de9ab49143d9c by Fushan Wen. Committed on 27/06/2022 at 05:04. Pushed by fusionfuture into branch 'Plasma/5.25'. shell: refresh geometries of all `DesktopView` and `PanelView` when receiving `logicalDotsPerInchChanged` Workaround for https://codereview.qt-project.org/c/qt/qtbase/+/413380 Related: bug 438114 FIXED-IN: 5.24.6 (cherry picked from cea5cba30890fab992dab2be6ea69521aef0eac0) M +8 -0 shell/desktopview.cpp M +8 -0 shell/panelview.cpp https://invent.kde.org/plasma/plasma-workspace/commit/41fb821545aac4df273fb45d0e4de9ab49143d9c
Upstream commit merged https://code.qt.io/cgit/qt/qtbase.git/commit/?id=7b2ae3faab15913e006ece25d785e6a8453dd27a
Very cool. Can we backport that in our KDE Qt patch collection?
https://invent.kde.org/qt/qt/qtbase/-/commit/75c0053006d05c930749652dfb0120c5a78689de
*** Bug 430515 has been marked as a duplicate of this bug. ***
*** Bug 440362 has been marked as a duplicate of this bug. ***
*** Bug 456453 has been marked as a duplicate of this bug. ***