Skip to content

Make highlights work for modified profiles KCM settings

Using SettingStateBinding from kcmutils adds highlights to the components within the QML page.

In order to also make the (non-)defaultIndicator in the sidebar list view show up, System Settings needs to be able to construct a single KCModuleData object through the KCM's plugin factory. We need to register both the KQuickManagedConfigModule and the KCModuleData when declaring the plugin, so instead of K_PLUGIN_CLASS_WITH_JSON we now use K_PLUGIN_FACTORY_WITH_JSON.

ProfilesConfigKCM.{h,cpp} requires some refactoring to use a single KCModuleData object instead of a collection of three different ones. Instead of the ProfilesConfigKCM class owning three data objects, it now only constructs a single one which in turn will create and expose the KConfigXT-generated settings classes for all profiles.

BUG: 477848

Edited by Jakob Petsovits

Merge request reports