Summary: | Some desktop icons disappear on wake-up from sleep and only re-appear when plasmashell is restarted ("Creating a fake screen in order for Qt not to crash") | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | Pawel <bednarczyk.pawel> |
Component: | Desktop icons & Folder View widget | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | bednarczyk.pawel, bugs, dave, hein, kimna, nate, nicolas.baillard, notmart, omer, sunny.bed7466, valerio.galdo |
Priority: | HI | Keywords: | regression, wayland |
Version: | 5.27.4 | ||
Target Milestone: | 1.0 | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=465536 | ||
Latest Commit: | Version Fixed In: | 5.27.10 | |
Sentry Crash Report: | |||
Attachments: |
kscreen-console-bug
no manage desktops and panels |
Description
Pawel
2023-03-09 07:43:31 UTC
If you use the "Manage Desktops and Panels" window to re-arrange your desktops and then get back to your current setup, does the issue stop happening? hi Nate, where do I find this window? Not sure what you are referring to by "Manage Desktops and Panels" window. Thanks Sorry, forgot to add instructions. You can access it like so: Right-click on desktop > click on "Enter Edit Mode" > a toolbar pops down from the top of the screen > click on "Manage Desktops and Panels" Created attachment 157282 [details]
no manage desktops and panels
I don't think I have that control - see the video
Darn. That means you only have one containment which means the icons and containments didn't get re-arranged (which is good!) and we need to figure out why they're disappearing on that one screen. Any chance this is fixed in Plasma 5.27.3 for you? Pawel, can you reproduce the issue in Plasma 5.27.4 which was just released? It has an additional change relevant to this use case. Hi Nate, sure, will check and report back. might take a few days though. hi Nate, The problem still persists I am afraid. The journal log does seem more verbose, though: Apr 12 08:06:31 arch-Bednar bednar[110674]: [psd-suspend-sync] re-taking inhibit lock... Apr 12 08:06:32 arch-Bednar kwin_wayland[1646]: kwin_core: Parse error in tiles configuration for monitor "92e842d7-5928-5c43-884a-4912e7cc82ed" : "illegal value" Creating default setup Apr 12 08:06:32 arch-Bednar maliit-keyboard[1720]: maliit.connection.wayland: virtual void Maliit::Wayland::InputMethod::zwp_input_method_v1_deactivate(zwp_input_method_context_v1*) Apr 12 08:06:32 arch-Bednar maliit-keyboard[1720]: maliit.connection.wayland: virtual Maliit::Wayland::InputMethodContext::~InputMethodContext() Apr 12 08:06:32 arch-Bednar polkit-kde-authentication-agent-1[1830]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar DiscoverNotifier[2056]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar kdeconnectd[2034]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar xdg-desktop-portal-kde[1834]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar kwalletd5[1014]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar flameshot[2013]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar kactivitymanagerd[1778]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar yakuake[2036]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar kcalc[24111]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar plasma-discover[2664]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar maliit-keyboard[1720]: in clear preedit.. clearing word engine Apr 12 08:06:32 arch-Bednar telegram-desktop[2039]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar dolphin[29752]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar okular[45059]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar dolphin[24653]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar kcalc[28307]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar okular[38222]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar okular[60322]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar okular[60591]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Apr 12 08:06:32 arch-Bednar okular[28083]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash Darn. Thanks. If you restart plasmashell with `plasmashell --replace` in a terminal window, do the missing icons come back, by any chance? (In reply to Nate Graham from comment #10) > Darn. Thanks. If you restart plasmashell with `plasmashell --replace` in a > terminal window, do the missing icons come back, by any chance? yes, they do. Oh thank goodness. The whole "Creating a fake screen in order for Qt not to crash" thing in the logs seems suspicious since I recall that you;re only using a single-screen setup, right? yes that's correct. I only have one monitor hooked up (Display Port). *** Bug 467951 has been marked as a duplicate of this bug. *** I don't understand... If th bug was only for a user config, with a fresh installation the problem shouldn't be there, right? There isn't any evidence yet that this is caused by a local configuration issue; it could be a code issue. It needs investigation to determine the exact cause. Sorry, i know you work hard and thank you for taking the time to improve kde. I hope everything can be sorted out soon *** Bug 468615 has been marked as a duplicate of this bug. *** *** Bug 468665 has been marked as a duplicate of this bug. *** *** Bug 466729 has been marked as a duplicate of this bug. *** I noticed that if i use Wayland insted of x-org there isn't the bug, but the pc doesn't wake up after suspension. Sistema operativo: KDE neon 5.27 Versione di KDE Plasma: 5.27.5 Versione di KDE Frameworks: 5.106.0 Versione di Qt: 5.15.9 Versione del Kernel: 5.19.0-41-generic (64 bit) Piattaforma grafica: Wayland I don't know if it's my same problem, because in wayland my pc works fine I'm not sure if this is useful, as my problems are rather outlined in bug 468665 and bug 466729 (desktop icons rearranging, desktop icons not refreshing). But I did notice that these issues do not occur for me when I use my laptop on its own, but rather as soon as I connect it to an external monitor (via Thunderbolt). Sleeping and waking over and over doesn't matter, but once I connect to an external monitor, even if later disconnected, use `plasmashell --replace`. It also can occur if I change the display configuration (e.g., if I move from having both the laptop's screen and the external monitor on to just the external monitor, icons will rearrange & disappear). Operating System: Kubuntu 23.04 KDE Plasma Version: 5.27.4 KDE Frameworks Version: 5.104.0 Qt Version: 5.15.8 Kernel Version: 6.2.0-20-generic (64-bit) Graphics Platform: X11 Processors: 12 × 12th Gen Intel Core i5-1235U Graphics Processor: Mesa Intel Graphics System Version: ThinkPad T14 Gen 3 I have a similar issue. After the screen wakes up from sleep sometimes the desktop icons are shuffled and I get this error message in the logs kwin_x11[2350]: kwin_core: Parse error in tiles configuration for monitor "5b7a5ba4-43cc-5910-8e98-f358f9d54b43" : "illegal value" Creating default setup All the icons are still there but they have been moved in a seemingly random order. This happen after the monitor went to sleep and wakes up, not the PC. I only have one monitor plugged in Display Port. OS: Fedora Linux 37 (KDE Plasma) x86_64 Kernel: 6.3.12-100.fc37.x86_64 KDE Plasma Version: 5.27.4 KDE Frameworks Version: 5.105.0 Qt Version: 5.15.9 X11 This bug is marked as duplicate in dozen of reports, about one year. Why isn't it fixed ? Because it's not easily reproducible by developers, challenging to fix, and the people with the most knowledge of how to fix it don't use the feature. See also https://pointieststick.com/2023/07/16/where-bugfixes-and-new-features-come-from. But it's marked as HI priority which means it will get fixed eventually. Not certain, but I think this might be linked to https://bugs.kde.org/show_bug.cgi?id=469445. Even since I implemented the quick and dirty fix proposed by Federico Dossena (the sed script that clears the plasma-org.kde.plasma.desktop-appletsrc file) I didn't get this bug again. A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1800 Git commit 1c8a4d1e46b9a519ab6576d3b9829eb611c5c9a5 by Nate Graham, on behalf of Harald Sitter. Committed on 08/11/2023 at 21:27. Pushed by ngraham into branch 'master'. foldermodel: lift screen add/remove handling out of screenmapper screenmapper is the wrong place for it because we don't know the url inside the mapper. Instead handle events in the foldermodel and correctly delegate the add/remove actions to the mapper with both our screenId AND the activityId notably the previous code would incorrectly invoke addScreen with empty activityIds triggering fallback handling that resulted in incorrect m_screensPerPath management (there would be no screen associated with our url anymore after a screenAdded signal because our screen got associated with no url) and consequently firstAvailableScreen would return no screen for our url (remember: we are associated with no url) making FolderModel::filterAcceptsRow return false and filtering completely valid entries Related: bug 467951 possibly also is the root cause behind M +11 -1 containments/desktop/plugins/folder/foldermodel.cpp M +1 -8 containments/desktop/plugins/folder/screenmapper.cpp M +1 -1 containments/desktop/plugins/folder/screenmapper.h https://invent.kde.org/plasma/plasma-desktop/-/commit/1c8a4d1e46b9a519ab6576d3b9829eb611c5c9a5 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/1810 Git commit a6bc63103ed128ffe0fd843eb3c4416ede835fde by Nate Graham, on behalf of Harald Sitter. Committed on 08/11/2023 at 21:36. Pushed by ngraham into branch 'Plasma/5.27'. foldermodel: lift screen add/remove handling out of screenmapper screenmapper is the wrong place for it because we don't know the url inside the mapper. Instead handle events in the foldermodel and correctly delegate the add/remove actions to the mapper with both our screenId AND the activityId notably the previous code would incorrectly invoke addScreen with empty activityIds triggering fallback handling that resulted in incorrect m_screensPerPath management (there would be no screen associated with our url anymore after a screenAdded signal because our screen got associated with no url) and consequently firstAvailableScreen would return no screen for our url (remember: we are associated with no url) making FolderModel::filterAcceptsRow return false and filtering completely valid entries Related: bug 467951 possibly also is the root cause behind M +11 -1 containments/desktop/plugins/folder/foldermodel.cpp M +1 -8 containments/desktop/plugins/folder/screenmapper.cpp M +1 -1 containments/desktop/plugins/folder/screenmapper.h https://invent.kde.org/plasma/plasma-desktop/-/commit/a6bc63103ed128ffe0fd843eb3c4416ede835fde All who were affected, please test again with the upcoming Plasma 5.27.10 bugfix release, which includes those changes. Thanks a lot! |