Summary: | Restarting plasmashell while "Show Desktop" is active will make all windows transparent | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Fushan Wen <qydwhotmail> |
Component: | compositing | Assignee: | Arjen Hiemstra <ahiemstra> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | kde, kde, nate, xaver.hugl |
Priority: | VHI | ||
Version: | master | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=449264 | ||
Latest Commit: | https://invent.kde.org/plasma/plasma-desktop/commit/ac804ff159561b19aed20798f69a58cddf073a3d | Version Fixed In: | 5.26 |
Description
Fushan Wen
2022-02-01 07:41:54 UTC
I can reproduce the issue. The symptoms are identical to another issue I've been seeing where manipulating desktop files while in "Show Desktop" mode sometimes makes all windows become transparent. I strongly suspect they are the same issue, and this just happens to be a 100% reproducible way to trigger it. Lowered from VHI to LO because the show desktop mode is only a temporary state and many users won't hit this problem in real world. I guess "Show Desktop" mode is not reset if plasmashell somehow fails to update the status. It can also be a bug in plasmashell. Real users will *absolutely* hit this in the real world, and we already have a few other bug reports about it scattered around. As I said, killing plasmashell is simply a 100% reproducible way to hit the issue, but I regularly hit it with normal actions such as: 1. Show desktop 2. Delete file on desktop Only reproducible on Wayland Now reproducible on X11 >, but I regularly hit it with normal actions such as:
That's quite a different bug.
The original bug is kwin not stopping if that process leaves without turning off (solvable with a QDBusServiceWatcher?)
This other bug is kwin not handling the desktop having a dialog child window whilst in show desktop mode. We probably wouldn't want showDesktop to immediately end when this prompts opens
HighlightWindow could have a similiar issue, plasma calls it with a list of windows, empty to reset A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/2663 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1062 Git commit bb91c9485560cf13702383f972974409cb47cdfa by Arjen Hiemstra. Committed on 29/07/2022 at 09:52. Pushed by ahiemstra into branch 'master'. Expose Workspace::showingDesktop and a setter as D-Bus api This allows us to unify the X and Wayland codepaths that currently go through window-system specific IPC. It also allows us to easily track who called "setShowingDesktop" and cancel the effect when that client disappears. M +46 -0 src/dbusinterface.cpp M +11 -0 src/dbusinterface.h M +9 -0 src/org.kde.KWin.xml https://invent.kde.org/plasma/kwin/commit/bb91c9485560cf13702383f972974409cb47cdfa Git commit ac804ff159561b19aed20798f69a58cddf073a3d by Arjen Hiemstra. Committed on 29/07/2022 at 10:52. Pushed by ahiemstra into branch 'master'. ShowDesktop: Use the new DBus API for showing the desktop This unifies the code paths (underneath KWindowSystem goes through two separate code paths) and generally makes the code a lot more direct instead of going through a bunch of layers. Additionally, it allows the KWin-side of things to check if the caller disappears and quit the "show desktop" mode if that happens. M +2 -0 applets/showdesktop/CMakeLists.txt A +14 -0 applets/showdesktop/plugin/org.kde.KWin.xml M +14 -4 applets/showdesktop/plugin/showdesktop.cpp M +5 -0 applets/showdesktop/plugin/showdesktop.h https://invent.kde.org/plasma/plasma-desktop/commit/ac804ff159561b19aed20798f69a58cddf073a3d |