[frameworks/kwallet] src: Port to KConfigXT
Nicolas Fella <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git commit dc47c0410ca4a5dd060ba949c3c066afa5cca118 by Nicolas Fella.
Committed on 29/07/2026 at 08:07.
Pushed by nicolasfella into branch 'master'.
Port to KConfigXT
M +2 -0 src/CMakeLists.txt
M +3 -1 src/api/KWallet/CMakeLists.txt
M +4 -6 src/api/KWallet/kwallet.cpp
A +51 -0 src/kwalletsettings.kcfg
M +3 -0 src/runtime/ksecretd/CMakeLists.txt
M +3 -0 src/runtime/ksecretd/autotests/CMakeLists.txt
M +18 -18 src/runtime/ksecretd/ksecretd.cpp
M +6 -10 src/runtime/ksecretd/kwalletfreedesktopservice.cpp
M +1 -1 src/runtime/ksecretd/kwalletfreedesktopservice.h
M +0 -2 src/runtime/ksecretd/main.cpp
M +2 -1 src/runtime/kwalletbackend/CMakeLists.txt
M +8 -21 src/runtime/kwalletbackend/kwalletbackend.cc
M +3 -1 src/runtime/kwalletd/CMakeLists.txt
M +16 -20 src/runtime/kwalletd/kwalletd.cpp
M +4 -5 src/runtime/kwalletd/main.cpp
M +4 -5 src/runtime/kwalletd/secretserviceclient.cpp
https://invent.kde.org/frameworks/kwallet/-/commit/dc47c0410ca4a5dd060ba949c3c066afa5cca118
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 4ec4ca79..b1adc0fe 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -7,3 +7,5 @@ ecm_qt_install_logging_categories(
FILE kwallet.categories
DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
)
+
+install(FILES kwalletsettings.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR})
diff --git a/src/api/KWallet/CMakeLists.txt b/src/api/KWallet/CMakeLists.txt
index 4be74961..184c9ec0 100644
--- a/src/api/KWallet/CMakeLists.txt
+++ b/src/api/KWallet/CMakeLists.txt
@@ -73,7 +73,7 @@ target_link_libraries(KF6Wallet
Qt6::Gui
PRIVATE
Qt6::DBus
- KF6::ConfigCore # used to store the wallet to be used
+ KF6::ConfigGui # used to store the wallet to be used
)
if(MAC_USE_OSXKEYCHAIN)
@@ -96,6 +96,8 @@ ecm_generate_headers(KWallet_HEADERS
ecm_generate_qdoc(KF6Wallet kwallet.qdocconf)
+kconfig_target_kcfg_file(KF6Wallet FILE ${CMAKE_SOURCE_DIR}/src/kwalletsettings.kcfg CLASS_NAME KWalletSettings)
+
install(TARGETS KF6Wallet EXPORT KF6WalletTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES
${CMAKE_CURRENT_BINARY_DIR}/kwallet_export.h
diff --git a/src/api/KWallet/kwallet.cpp b/src/api/KWallet/kwallet.cpp
index 4b88d40a..2bfa628d 100644
--- a/src/api/KWallet/kwallet.cpp
+++ b/src/api/KWallet/kwallet.cpp
@@ -14,10 +14,8 @@
#include <QDBusConnection>
#include <QRegularExpression>
-#include <KConfigGroup>
-#include <KSharedConfig>
-
#include "kwallet_interface.h"
+#include "kwalletsettings.h"
typedef QMap<QString, QByteArray> StringByteArrayMap;
Q_DECLARE_METATYPE(StringByteArrayMap)
@@ -34,7 +32,6 @@ public:
org::kde::KWallet &getInterface();
org::kde::KWallet *m_wallet_deamon;
- KConfigGroup m_cgroup;
bool m_walletEnabled;
};
@@ -882,10 +879,11 @@ void Wallet::virtual_hook(int, void *)
KWalletDLauncher::KWalletDLauncher()
: m_wallet_deamon(nullptr)
- , m_cgroup(KSharedConfig::openConfig(QStringLiteral("kwalletrc"), KConfig::NoGlobals)->group(QStringLiteral("Wallet")))
, m_walletEnabled(false)
{
- m_walletEnabled = m_cgroup.readEntry("Enabled", true);
+ KWalletSettings settings;
+
+ m_walletEnabled = settings.kWalletDEnabled();
if (!m_walletEnabled) {
qCDebug(KWALLET_API_LOG) << "The wallet service was disabled by the user";
return;
diff --git a/src/kwalletsettings.kcfg b/src/kwalletsettings.kcfg
new file mode 100644
index 00000000..ebcb385e
--- /dev/null
+++ b/src/kwalletsettings.kcfg
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- SPDX-FileCopyrightText: 2026 Nicolas Fella <[email protected]> -->
+<!-- SPDX-License-Identifier: GPL-2.0-or-later -->
+<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
+ <kcfgfile name="kwalletrc"/>
+ <group name="Wallet">
+ <entry key="First Use" type="Bool">
+ <default>true</default>
+ </entry>
+ <entry key="Launch Manager" type="Bool">
+ <default>false</default>
+ </entry>
+ <entry key="Close When Idle" type="Bool">
+ <default>false</default>
+ </entry>
+ <entry key="Prompt on Open" type="Bool">
+ <default>false</default>
+ </entry>
+ <entry key="Leave Open" type="Bool">
+ <default>true</default>
+ </entry>
+ <entry name="KWalletDEnabled" key="Enabled" type="Bool">
+ <default>true</default>
+ </entry>
+ <entry key="Idle Timeout" type="Int">
+ <default>10</default>
+ </entry>
+ <entry key="Default Wallet" type="String">
+ <default>kdewallet</default>
+ </entry>
+ <entry key="Use One Wallet" type="Bool">
+ <default>true</default>
+ </entry>
+ <entry key="Local Wallet" type="String">
+ <default>localwallet</default>
+ </entry>
+ </group>
+ <group name="KSecretD">
+ <entry name="KSecretDEnabled" key="Enabled" type="Bool">
+ <default>true</default>
+ </entry>
+ </group>
+ <group name="Migration">
+ <entry key="MigrateTo3rdParty" type="Bool">
+ <default>false</default>
+ </entry>
+ <entry key="WalletsMigratedToSecretService" type="StringList">
+ <default></default>
+ </entry>
+ </group>
+</kcfg>
diff --git a/src/runtime/ksecretd/CMakeLists.txt b/src/runtime/ksecretd/CMakeLists.txt
index 1a9eb8f2..ea3321cf 100644
--- a/src/runtime/ksecretd/CMakeLists.txt
+++ b/src/runtime/ksecretd/CMakeLists.txt
@@ -79,6 +79,8 @@ ki18n_wrap_ui(ksecretd
kwalletwizardpagepassword.ui
)
+kconfig_target_kcfg_file(ksecretd FILE ${CMAKE_SOURCE_DIR}/src/kwalletsettings.kcfg CLASS_NAME KWalletSettings MUTATORS)
+
if (Gpgmepp_FOUND)
target_sources(ksecretd PRIVATE
knewwalletdialog.cpp
@@ -136,6 +138,7 @@ target_link_libraries(ksecretd
KF6::ColorScheme
KF6::CoreAddons
KF6::ConfigCore
+ KF6::ConfigGui
KF6::DBusAddons
KF6::WidgetsAddons
KF6::WindowSystem
diff --git a/src/runtime/ksecretd/autotests/CMakeLists.txt b/src/runtime/ksecretd/autotests/CMakeLists.txt
index 2499edc6..3871db58 100644
--- a/src/runtime/ksecretd/autotests/CMakeLists.txt
+++ b/src/runtime/ksecretd/autotests/CMakeLists.txt
@@ -72,5 +72,8 @@ ecm_add_test(
Qt6::Test
KF6::DBusAddons
KF6::ConfigCore
+ KF6::ConfigGui
${Qca_LIBRARY}
)
+
+kconfig_target_kcfg_file(fdo_secrets_test FILE ${CMAKE_SOURCE_DIR}/src/kwalletsettings.kcfg CLASS_NAME KWalletSettings MUTATORS)
diff --git a/src/runtime/ksecretd/ksecretd.cpp b/src/runtime/ksecretd/ksecretd.cpp
index 88753832..e8043aef 100644
--- a/src/runtime/ksecretd/ksecretd.cpp
+++ b/src/runtime/ksecretd/ksecretd.cpp
@@ -16,6 +16,7 @@
#include "kwalletfreedesktopservice.h"
#include "kwalletfreedesktopsession.h"
#include "kwalletportalsecrets.h"
+#include "kwalletsettings.h"
#include "kwalletwizard.h"
#ifdef HAVE_GPGMEPP
@@ -466,15 +467,15 @@ int KSecretD::doTransactionOpen(const QString &appid, const QString &wallet, boo
// if the user specifies a wallet name, the use it as the default
// wallet name
if (wallet != KWallet::Backend::localWallet()) {
- KConfig kwalletrc(QStringLiteral("kwalletrc"));
- KConfigGroup cfg(&kwalletrc, "Wallet");
- cfg.writeEntry("Default Wallet", wallet);
+ KWalletSettings settings;
+ settings.setDefaultWallet(wallet);
+ settings.save();
}
if (wallets().contains(KWallet::Backend::localWallet())) {
- KConfig kwalletrc(QStringLiteral("kwalletrc"));
- KConfigGroup cfg(&kwalletrc, "Wallet");
+ KWalletSettings settings;
_firstUse = false;
- cfg.writeEntry("First Use", false);
+ settings.setFirstUse(false);
+ settings.save();
}
// else {
// // First use wizard
@@ -1659,17 +1660,16 @@ void KSecretD::emitWalletListDirty()
void KSecretD::reconfigure()
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup walletGroup(&cfg, "Wallet");
- _firstUse = walletGroup.readEntry("First Use", true);
- _launchManager = walletGroup.readEntry("Launch Manager", false);
- _leaveOpen = walletGroup.readEntry("Leave Open", true);
+ KWalletSettings settings;
+ _firstUse = settings.firstUse();
+ _launchManager = settings.launchManager();
+ _leaveOpen = settings.leaveOpen();
bool idleSave = _closeIdle;
- _closeIdle = walletGroup.readEntry("Close When Idle", false);
- _openPrompt = walletGroup.readEntry("Prompt on Open", false);
+ _closeIdle = settings.closeWhenIdle();
+ _openPrompt = settings.promptonOpen();
int timeSave = _idleTime;
// in minutes!
- _idleTime = walletGroup.readEntry("Idle Timeout", 10) * 60 * 1000;
+ _idleTime = settings.idleTimeout() * 60 * 1000;
// Handle idle changes
if (_closeIdle) {
if (_idleTime != timeSave) { // Timer length changed
@@ -1691,6 +1691,7 @@ void KSecretD::reconfigure()
_closeTimers.clear();
}
+ KConfig cfg(QStringLiteral("kwalletrc"));
// Update the implicit allow stuff
_implicitAllowMap.clear();
const KConfigGroup autoAllowGroup(&cfg, "Auto Allow");
@@ -1719,13 +1720,12 @@ void KSecretD::reconfigure()
bool KSecretD::isEnabled()
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup walletGroup(&cfg, "Wallet");
- KConfigGroup ksecretdGroup(&cfg, "KSecretD");
+ KWalletSettings settings;
+
// For KSecredD to be enabled, it needs both global kwallet enabled and ksecretd enabled
// values, as it does not make sense without kwallet, but is possible kwallet without
// ksecretd
- return ksecretdGroup.readEntry("Enabled", true) && walletGroup.readEntry("Enabled", true);
+ return settings.kSecretDEnabled() && settings.kWalletDEnabled();
}
bool KSecretD::folderDoesNotExist(const QString &wallet, const QString &folder)
diff --git a/src/runtime/ksecretd/kwalletfreedesktopservice.cpp b/src/runtime/ksecretd/kwalletfreedesktopservice.cpp
index 6c667de4..fbed4b8e 100644
--- a/src/runtime/ksecretd/kwalletfreedesktopservice.cpp
+++ b/src/runtime/ksecretd/kwalletfreedesktopservice.cpp
@@ -13,6 +13,7 @@
#include "kwalletfreedesktopprompt.h"
#include "kwalletfreedesktopserviceadaptor.h"
#include "kwalletfreedesktopsession.h"
+#include "kwalletsettings.h"
#include <KConfigGroup>
#include <QWidget>
#include <string.h>
@@ -304,8 +305,7 @@ QDBusObjectPath KWalletFreedesktopService::ReadAlias(const QString &name)
m_kwalletrc.reparseConfiguration();
if (name == QStringLiteral("default")) {
- KConfigGroup cfg(&m_kwalletrc, "Wallet");
- walletName = defaultWalletName(cfg);
+ walletName = defaultWalletName();
} else {
KConfigGroup cfg(&m_kwalletrc, "org.freedesktop.secrets.aliases");
@@ -447,13 +447,10 @@ QString KWalletFreedesktopService::createSession(std::unique_ptr<KWalletFreedesk
return sessionPath;
}
-QString KWalletFreedesktopService::defaultWalletName(KConfigGroup &cfg)
+QString KWalletFreedesktopService::defaultWalletName()
{
- auto walletName = cfg.readEntry("Default Wallet", "kdewallet");
- if (walletName.isEmpty()) {
- walletName = QStringLiteral("kdewallet");
- }
- return walletName;
+ KWalletSettings settings;
+ return settings.defaultWallet();
}
QDBusObjectPath KWalletFreedesktopService::promptUnlockCollection(const QString &walletName, int handle)
@@ -732,8 +729,7 @@ QStringList KWalletFreedesktopService::readAliasesFor(const QString &walletName)
}
}
- KConfigGroup cfgWallet(&m_kwalletrc, "Wallet");
- if (defaultWalletName(cfgWallet) == walletName) {
+ if (defaultWalletName() == walletName) {
aliases.push_back(QStringLiteral("default"));
}
diff --git a/src/runtime/ksecretd/kwalletfreedesktopservice.h b/src/runtime/ksecretd/kwalletfreedesktopservice.h
index bd574305..5cf9f13a 100644
--- a/src/runtime/ksecretd/kwalletfreedesktopservice.h
+++ b/src/runtime/ksecretd/kwalletfreedesktopservice.h
@@ -174,7 +174,7 @@ private:
std::unique_ptr<KWalletFreedesktopSessionAlgorithm> createSessionAlgorithmPlain() const;
std::unique_ptr<KWalletFreedesktopSessionAlgorithm> createSessionAlgorithmDhAes(const QByteArray &clientKey) const;
QString createSession(std::unique_ptr<KWalletFreedesktopSessionAlgorithm> algorithm);
- QString defaultWalletName(KConfigGroup &cfg);
+ QString defaultWalletName();
private:
// must come first for the proper construction/destruction order
diff --git a/src/runtime/ksecretd/main.cpp b/src/runtime/ksecretd/main.cpp
index 3fa6f3ef..130b1c36 100644
--- a/src/runtime/ksecretd/main.cpp
+++ b/src/runtime/ksecretd/main.cpp
@@ -8,8 +8,6 @@
#include "ksecretd_debug.h"
#include <KAboutData>
-#include <KConfig>
-#include <KConfigGroup>
#include <KCrash>
#include <KDBusService>
#include <KLocalizedString>
diff --git a/src/runtime/kwalletbackend/CMakeLists.txt b/src/runtime/kwalletbackend/CMakeLists.txt
index 21673381..76733058 100644
--- a/src/runtime/kwalletbackend/CMakeLists.txt
+++ b/src/runtime/kwalletbackend/CMakeLists.txt
@@ -61,6 +61,7 @@ ecm_qt_declare_logging_category(KF6WalletBackend
EXPORT KWALLET
)
+kconfig_target_kcfg_file(KF6WalletBackend FILE ${CMAKE_SOURCE_DIR}/src/kwalletsettings.kcfg CLASS_NAME KWalletSettings)
generate_export_header(KF6WalletBackend
BASE_NAME kwalletbackend
@@ -71,7 +72,7 @@ target_link_libraries(KF6WalletBackend
KF6::WidgetsAddons
KF6::CoreAddons
KF6::Notifications
- KF6::ConfigCore
+ KF6::ConfigGui
KF6::I18n
${LIBGCRYPT_LIBRARIES}
)
diff --git a/src/runtime/kwalletbackend/kwalletbackend.cc b/src/runtime/kwalletbackend/kwalletbackend.cc
index c35af3d1..d29536ec 100644
--- a/src/runtime/kwalletbackend/kwalletbackend.cc
+++ b/src/runtime/kwalletbackend/kwalletbackend.cc
@@ -14,10 +14,8 @@
#ifdef HAVE_GPGMEPP
#include <gpgme++/key.h>
#endif
-#include <KConfigGroup>
#include <KLocalizedString>
#include <KNotification>
-#include <KSharedConfig>
#include <gcrypt.h>
#include <QDir>
@@ -31,6 +29,7 @@
#include "blowfish.h"
#include "sha1.h"
#include "cbc.h"
+#include "kwalletsettings.h"
#include <assert.h>
#include <cerrno>
@@ -66,31 +65,19 @@ QString Backend::decodeWalletName(const QString &encodedName) {
QString Backend::networkWallet()
{
- KConfigGroup cfg(KSharedConfig::openConfig(QStringLiteral("kwalletrc"))->group(QStringLiteral("Wallet")));
-
- QString tmp = cfg.readEntry("Default Wallet", "kdewallet");
- if (tmp.isEmpty()) {
- return QStringLiteral("kdewallet");
- }
- return tmp;
+ KWalletSettings settings;
+ return settings.defaultWallet();
}
QString Backend::localWallet()
{
- KConfigGroup cfg(KSharedConfig::openConfig(QStringLiteral("kwalletrc"))->group(QStringLiteral("Wallet")));
- if (!cfg.readEntry("Use One Wallet", true)) {
- QString tmp = cfg.readEntry("Local Wallet", "localwallet");
- if (tmp.isEmpty()) {
- return QStringLiteral("localwallet");
- }
- return tmp;
- }
+ KWalletSettings settings;
- QString tmp = cfg.readEntry("Default Wallet", "kdewallet");
- if (tmp.isEmpty()) {
- return QStringLiteral("kdewallet");
+ if (!settings.useOneWallet()) {
+ return settings.localWallet();
}
- return tmp;
+
+ return settings.defaultWallet();
}
gcry_error_t ensureGcryptInit()
diff --git a/src/runtime/kwalletd/CMakeLists.txt b/src/runtime/kwalletd/CMakeLists.txt
index 5d9bdcf6..e3b55f94 100644
--- a/src/runtime/kwalletd/CMakeLists.txt
+++ b/src/runtime/kwalletd/CMakeLists.txt
@@ -51,6 +51,8 @@ target_sources(kwalletd6 PRIVATE
${kwalletd6_SRCS}
)
+kconfig_target_kcfg_file(kwalletd6 FILE ${CMAKE_SOURCE_DIR}/src/kwalletsettings.kcfg CLASS_NAME KWalletSettings MUTATORS)
+
ecm_qt_declare_logging_category(kwalletd6
HEADER kwalletd_debug.h
IDENTIFIER KWALLETD_LOG
@@ -61,7 +63,7 @@ ecm_qt_declare_logging_category(kwalletd6
target_link_libraries(kwalletd6
KF6WalletBackend
- KF6::ConfigCore
+ KF6::ConfigGui
KF6::CoreAddons
KF6::WidgetsAddons
KF6::Crash
diff --git a/src/runtime/kwalletd/kwalletd.cpp b/src/runtime/kwalletd/kwalletd.cpp
index fc37abb4..4f7d1695 100644
--- a/src/runtime/kwalletd/kwalletd.cpp
+++ b/src/runtime/kwalletd/kwalletd.cpp
@@ -9,12 +9,11 @@
#include <QDBusConnection>
#include <QDebug>
-#include <KConfig>
-#include <KConfigGroup>
#include <KLocalizedString>
#include <KPasswordDialog>
#include "kwalletadaptor.h"
+#include "kwalletsettings.h"
#include "secretserviceclient.h"
#include "../kwalletbackend/kwalletbackend.h"
@@ -169,15 +168,14 @@ void KWalletD::migrateData()
if (!m_backend->isAvailable() || m_backend->useKSecretBackend()) {
return;
}
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup walletGroup(&cfg, QStringLiteral("Wallet"));
- KConfigGroup migrationGroup(&cfg, QStringLiteral("Migration"));
- if (!migrationGroup.readEntry(QStringLiteral("MigrateTo3rdParty"), false)) {
+ KWalletSettings settings;
+
+ if (!settings.migrateTo3rdParty()) {
return;
}
- QStringList walletsMigrated = migrationGroup.readEntry(QStringLiteral("WalletsMigratedToSecretService"), QStringList());
+ QStringList walletsMigrated = settings.walletsMigratedToSecretService();
// Get the list of all known kwallets
const QString path = KWallet::Backend::getSaveLocation();
@@ -198,7 +196,7 @@ void KWalletD::migrateData()
}
bool ok = false;
- const QString oldDefaultWallet = walletGroup.readEntry(QStringLiteral("Default Wallet"), QStringLiteral("kdewallet"));
+ const QString oldDefaultWallet = settings.defaultWallet();
for (const QString &sourceWallet : std::as_const(wallets)) {
QString destWallet = sourceWallet;
// Use the SecretService default collection as the new default wallet
@@ -213,8 +211,8 @@ void KWalletD::migrateData()
}
}
- migrationGroup.writeEntry(QStringLiteral("WalletsMigratedToSecretService"), walletsMigrated);
- cfg.sync();
+ settings.setWalletsMigratedToSecretService(walletsMigrated);
+ settings.save();
}
QString KWalletD::walletForHandle(int handle, const QString &appId)
@@ -996,16 +994,16 @@ bool KWalletD::disconnectApplication(const QString &wallet, const QString &appli
void KWalletD::reconfigure()
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup walletGroup(&cfg, QStringLiteral("Wallet"));
+ KWalletSettings settings;
+
const bool wasEnabled = m_enabled;
- m_enabled = walletGroup.readEntry("Enabled", true);
- m_launchManager = walletGroup.readEntry("Launch Manager", false);
+ m_enabled = settings.kWalletDEnabled();
+ m_launchManager = settings.launchManager();
const bool closeIdle = m_closeIdle;
- m_closeIdle = walletGroup.readEntry("Close When Idle", false);
+ m_closeIdle = settings.closeWhenIdle();
const int idleTime = m_idleTime;
// in minutes!
- m_idleTime = walletGroup.readEntry("Idle Timeout", 10) * 60 * 1000;
+ m_idleTime = settings.idleTimeout();
if (wasEnabled != m_enabled) {
if (isEnabled()) {
@@ -1096,11 +1094,9 @@ QString KWalletD::networkWallet()
QString KWalletD::localWallet()
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup ksecretdGroup(&cfg, QStringLiteral("KSecretD"));
- const bool ksecretdEnabled = ksecretdGroup.readEntry("Enabled", true);
+ KWalletSettings settings;
- if (ksecretdEnabled) {
+ if (settings.kSecretDEnabled()) {
return KWallet::Backend::localWallet();
} else {
bool ok;
diff --git a/src/runtime/kwalletd/main.cpp b/src/runtime/kwalletd/main.cpp
index 1d0a86bc..96037972 100644
--- a/src/runtime/kwalletd/main.cpp
+++ b/src/runtime/kwalletd/main.cpp
@@ -7,8 +7,6 @@
#include "kwalletd.h"
#include <KAboutData>
-#include <KConfig>
-#include <KConfigGroup>
#include <KCrash>
#include <KDBusService>
#include <KLocalizedString>
@@ -16,11 +14,12 @@
#include <QApplication>
#include <QCommandLineParser>
+#include "kwalletsettings.h"
+
static bool isWalletEnabled()
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup walletGroup(&cfg, QStringLiteral("Wallet"));
- return walletGroup.readEntry(QStringLiteral("Enabled"), true);
+ KWalletSettings settings;
+ return settings.kWalletDEnabled();
}
int main(int argc, char **argv)
diff --git a/src/runtime/kwalletd/secretserviceclient.cpp b/src/runtime/kwalletd/secretserviceclient.cpp
index 6340a156..d664b1b1 100644
--- a/src/runtime/kwalletd/secretserviceclient.cpp
+++ b/src/runtime/kwalletd/secretserviceclient.cpp
@@ -7,8 +7,6 @@
#include "secretserviceclient.h"
#include "kwalletd_debug.h"
-#include <KConfig>
-#include <KConfigGroup>
#include <KLocalizedString>
#include <QDBusConnection>
#include <QDBusInterface>
@@ -17,6 +15,8 @@
#include <QEventLoop>
#include <QTimer>
+#include "kwalletsettings.h"
+
// Copied from
// https://github.com/frankosterfeld/qtkeychain/blob/main/qtkeychain/libsecret.cpp
// This is intended to be a data format compatible with QtKeychain
@@ -104,9 +104,8 @@ static SecretServiceClient::Type stringToType(const QString &typeName)
SecretServiceClient::SecretServiceClient(QObject *parent)
: QObject(parent)
{
- KConfig cfg(QStringLiteral("kwalletrc"));
- KConfigGroup ksecretGroup(&cfg, QStringLiteral("KSecretD"));
- m_useKSecretBackend = ksecretGroup.readEntry("Enabled", true);
+ KWalletSettings settings;
+ m_useKSecretBackend = settings.kSecretDEnabled();
if (m_useKSecretBackend) {
// Tell libsecret where the secretservice api is