File indexing completed on 2024-04-28 16:55:19
0001 /* 0002 SPDX-FileCopyrightText: 2020 David Redondo <kde@david-redondo.de> 0003 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0004 */ 0005 0006 #include "sddmsettingsbase.h" 0007 0008 #include "config.h" 0009 0010 #include <QDebug> 0011 #include <QDir> 0012 0013 #include <algorithm> 0014 0015 SddmSettingsBase::SddmSettingsBase(KSharedConfigPtr config, QObject *parent) 0016 : KConfigSkeleton(config, parent) 0017 { 0018 auto defaultFiles = QDir(QStringLiteral(SDDM_SYSTEM_CONFIG_DIR)).entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::LocaleAware); 0019 std::transform(defaultFiles.begin(), defaultFiles.end(), defaultFiles.begin(), [](const QString &filename) -> QString { 0020 return QStringLiteral(SDDM_SYSTEM_CONFIG_DIR "/") + filename; 0021 }); 0022 // If no filename is set, KConfig will not parse any file 0023 if (!defaultFiles.isEmpty()) { 0024 m_defaultConfig = KSharedConfig::openConfig(defaultFiles.takeLast(), KConfig::CascadeConfig); 0025 } else { 0026 m_defaultConfig = KSharedConfig::openConfig(QString(), KConfig::CascadeConfig); 0027 } 0028 m_defaultConfig->addConfigSources(defaultFiles); 0029 } 0030 0031 QString SddmSettingsBase::defaultCurrent() const 0032 { 0033 return m_defaultConfig->group("Theme").readEntry("Current"); 0034 } 0035 0036 unsigned int SddmSettingsBase::defaultMinimumUid() const 0037 { 0038 return m_defaultConfig->group("Users").readEntry("MinimumUid", 1000); 0039 } 0040 0041 unsigned int SddmSettingsBase::defaultMaximumUid() const 0042 { 0043 return m_defaultConfig->group("Users").readEntry("MaximumUid", 60000); 0044 } 0045 0046 QString SddmSettingsBase::defaultUser() const 0047 { 0048 return m_defaultConfig->group("AutoLogin").readEntry("User"); 0049 } 0050 0051 QString SddmSettingsBase::defaultSession() const 0052 { 0053 return m_defaultConfig->group("AutoLogin").readEntry("Session"); 0054 } 0055 0056 bool SddmSettingsBase::defaultRelogin() const 0057 { 0058 return m_defaultConfig->group("AutoLogin").readEntry("Relogin", false); 0059 } 0060 0061 QString SddmSettingsBase::defaultHaltCommand() const 0062 { 0063 return m_defaultConfig->group("General").readEntry("HaltCommand"); 0064 } 0065 0066 QString SddmSettingsBase::defaultRebootCommand() const 0067 { 0068 return m_defaultConfig->group("General").readEntry("RebootCommand"); 0069 }