diff --git a/kcms/componentchooser/componentchooserfilemanager.cpp b/kcms/componentchooser/componentchooserfilemanager.cpp --- a/kcms/componentchooser/componentchooserfilemanager.cpp +++ b/kcms/componentchooser/componentchooserfilemanager.cpp @@ -20,7 +20,6 @@ #include "componentchooserfilemanager.h" #include -#include #include #include #include @@ -48,14 +47,27 @@ void CfgFileManager::defaults() { load(nullptr); + + for (QRadioButton *radio : qAsConst(mDynamicRadioButtons)) { + // selects dolphin as default + if (radio->property("storageId") == QStringLiteral("org.kde.dolphin.desktop")) { + radio->setChecked(true); + } + } } bool CfgFileManager::isDefaults() const { if (!mDynamicRadioButtons.isEmpty()) { - return !mDynamicRadioButtons.first()->isChecked(); + for (const QRadioButton *radio : qAsConst(mDynamicRadioButtons)) { + if (radio->property("storageId") == QStringLiteral("org.kde.dolphin.desktop")) { + return radio->isChecked(); + } + } + // When dolphin is not present, we can't assume any default value + return true; } else { - return false; + return true; } }