Bug 446569 - Plasma global default look-and-feel code forces reset to vendor default
Summary: Plasma global default look-and-feel code forces reset to vendor default
Status: CONFIRMED
Alias: None
Product: systemsettings
Classification: Applications
Component: kcm_lookandfeel (show other bugs)
Version: 5.23.3
Platform: Fedora RPMs Linux
: NOR major
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-12-06 18:45 UTC by Neal Gompa
Modified: 2022-04-25 08:24 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Neal Gompa 2021-12-06 18:45:44 UTC
SUMMARY
During a debugging session on bug 431219 with Nate in the Fedora KDE SIG meeting, we discovered that the logic for handling the default look-and-feel is set up so that the theme is reset every time it is detected to be something else on login.

See: https://invent.kde.org/search?search=DEFAULT_LOOKANDFEEL&group_id=1568&project_id=2703&scope=&search_code=true&snippets=false&repository_ref=Plasma%2F5.23&nav_source=navbar

Nate mentioned that the code was incompletely refactored in Plasma 5.22/5.23 which possibly led to this issue.

This was caused by us following the older guidance on how to set defaults, this apparently changed but we didn't notice because our patch did not break. We need new guidance on this and then it probably makes sense to finish gutting the old code.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora Linux 35 (KDE Plasma)
(available in About System)
KDE Plasma Version: 5.23.2
KDE Frameworks Version: 5.88
Qt Version: 5.15.2

ADDITIONAL INFORMATION
More info at:
* https://pagure.io/fedora-kde/SIG/issue/155
* https://bugzilla.redhat.com/show_bug.cgi?id=2026789
Comment 1 Nate Graham 2021-12-06 19:57:00 UTC
https://invent.kde.org/plasma/plasma-workspace/-/blob/Plasma/5.23/shell/packageplugins/lookandfeel/lookandfeel.cpp#L13

That looks suspicious to me. It should be getting its default setting from the kconfigxt config file, not a hardcoded macro in the code.

Méven or Ben, would you be able to take a look?
Comment 2 David Redondo 2022-04-22 17:43:37 UTC
That's just inside the packageplugin for the default things which I believe handles fallbacks if a package doesnt provide a path. Imo  we can close this
Comment 3 Nate Graham 2022-04-22 18:46:27 UTC
So it's the same thing as Bug 450065?
Comment 4 David Redondo 2022-04-25 08:24:49 UTC
No but breeze being the fallback package should not necessitate a problem as far as I understand