diff --git a/src/advancedconfig.h b/src/advancedconfig.h --- a/src/advancedconfig.h +++ b/src/advancedconfig.h @@ -37,7 +37,7 @@ explicit AdvancedConfig(const KSharedConfigPtr &config, QWidget *parent = nullptr); ~AdvancedConfig(); - QVariantMap save(); + void save(QVariantMap &args); Q_SIGNALS: void changed(bool changed=true); diff --git a/src/advancedconfig.cpp b/src/advancedconfig.cpp --- a/src/advancedconfig.cpp +++ b/src/advancedconfig.cpp @@ -103,10 +103,8 @@ configUi->rebootCommand->setUrl(QUrl::fromLocalFile(mConfig->group("General").readEntry("RebootCommand"))); } -QVariantMap AdvancedConfig::save() +void AdvancedConfig::save(QVariantMap &args) { - QVariantMap args; - args[QStringLiteral("kde_settings.conf/Autologin/User")] = ( configUi->autoLogin->isChecked() ) ? configUi->userList->currentText() : QString(); args[QStringLiteral("kde_settings.conf/Autologin/Session")] = ( configUi->autoLogin->isChecked() ) ? configUi->sessionList->currentData() : QString(); @@ -122,8 +120,6 @@ args[QStringLiteral("kde_settings.conf/General/HaltCommand")] = configUi->haltCommand->url().toLocalFile(); args[QStringLiteral("kde_settings.conf/General/RebootCommand")] = configUi->rebootCommand->url().toLocalFile(); - - return args; } void AdvancedConfig::slotUidRangeChanged() diff --git a/src/sddmkcm.cpp b/src/sddmkcm.cpp --- a/src/sddmkcm.cpp +++ b/src/sddmkcm.cpp @@ -82,8 +82,8 @@ } qDebug() << "Ovr:" << args[QStringLiteral("theme.conf.user")].toString(); - args.unite(mThemeConfig->save()); - args.unite(mAdvancedConfig->save()); + mThemeConfig->save(args); + mAdvancedConfig->save(args); KAuth::Action saveAction = authAction(); diff --git a/src/themeconfig.h b/src/themeconfig.h --- a/src/themeconfig.h +++ b/src/themeconfig.h @@ -34,7 +34,7 @@ explicit ThemeConfig(const KSharedConfigPtr &config, QWidget *parent = nullptr); ~ThemeConfig(); - QVariantMap save(); + void save(QVariantMap &args); QString themeConfigPath() const; Q_SIGNALS: diff --git a/src/themeconfig.cpp b/src/themeconfig.cpp --- a/src/themeconfig.cpp +++ b/src/themeconfig.cpp @@ -70,15 +70,13 @@ delete configUi; } -QVariantMap ThemeConfig::save() +void ThemeConfig::save(QVariantMap &args) { QModelIndex index = configUi->themesListView->currentIndex(); if (!index.isValid()) { - return QVariantMap(); + return; } - QVariantMap args; - args[QStringLiteral("kde_settings.conf/Theme/Current")] = index.data(ThemesModel::IdRole); if (!mThemeConfigPath.isEmpty()) { @@ -89,7 +87,6 @@ args[QStringLiteral("theme.conf.user/General/type")] = QStringLiteral("color"); } } - return args; } QString ThemeConfig::themeConfigPath() const