Port PowerDevil settings to KConfigXT, KCMs to QML
Three reasons I'm aware of:
- Using QML in all System Settings modules is good for consistency, e.g. we can use Kirigami FormLayouts.
- The profiles KCM in particular has atrocious UI and could benefit from a facelift. QML is easier to tweak going forward, but I'm also thinking that the KCM action lists could help in that respect, which afaik we only get for QML KCMs.
- Going QML will require a switch of settings to KConfigXT, which can rid us of the unsavoury first-run profile generation that PowerDevil is currently employing. KConfigXT provides better handling of default values in addition to QML-accessible properties. MR !71 (closed) attempted this switch but turned out to be too large to get merged.
MR !66 (closed) was looking at porting the profiles KCM, but being based on !71 (closed), also didn't make it into master. Those are from late 2021.
I'm trying to complete the port of PowerDevil to KConfigXT and of KCMs to QML. To make it go more smoothly this time, @nicolasfella advised to submit smaller patches that can more feasibly be reviewed and merged, so we don't end up with constant rebasing efforts. I will be extracting, rebasing and (hopefully) improving on the original MRs !71 (closed) and !66 (closed), plus perhaps tackle the global config and activities KCMs as well.
This issue will keep track of the various MRs in this series (reviewers wanted!):
- !200 (merged)
- !201 (merged)
- !202 (merged)
- !203 (merged)
- !204 (merged)
frameworks/knotifyconfig!25 (closed)- !214 (merged)
- !229 (merged)
-
!233 (closed)!244 (merged) - !234 (merged)
- !245 (merged)
- !249 (merged)
- !250 (merged)
- !251 (merged)
- !256 (merged)
- !259 (merged)
- !267 (merged)
Clean-up MRs after porting:
Edited by Jakob Petsovits