kgreeter: add default color scheme option

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2022-04-01 23:10:53 +03:00
parent f5044d11dc
commit f6f54dbf2c
2 changed files with 8 additions and 1 deletions

View file

@ -63,6 +63,7 @@ KCMGreeter::KCMGreeter(QWidget* parent, const QVariantList& args)
stylesbox->addItems(QStyleFactory::keys());
connect(stylesbox, SIGNAL(currentIndexChanged(QString)), this, SLOT(slotStyleChanged(QString)));
colorsbox->addItem(i18n("Default"), QVariant(QString::fromLatin1("default")));
const QStringList kcolorschemes = KGlobal::dirs()->findAllResources("data", "color-schemes/*.colors", KStandardDirs::NoDuplicates);
foreach (const QString &kcolorscheme, kcolorschemes) {
const QString kcolorschemename = QSettings(kcolorscheme, QSettings::IniFormat).value("General/Name").toString();
@ -103,6 +104,7 @@ void KCMGreeter::load()
}
}
colorsbox->setCurrentIndex(0); // default
const QString kgreetercolor = kgreetersettings.value("greeter/colorscheme").toString();
if (!kgreetercolor.isEmpty()) {
for (int i = 0; i < colorsbox->count(); i++) {

View file

@ -30,9 +30,14 @@ ActionReply KGreeterHelper::save(const QVariantMap &parameters)
return KAuth::ActionReply::HelperErrorReply;
}
QString colorscheme = parameters.value("colorscheme").toString();
if (colorscheme == QLatin1String("default")) {
colorscheme = QString();
}
QSettings kgreetersettings(KDE_SYSCONFDIR "/lightdm/lightdm-kgreeter-greeter.conf", QSettings::IniFormat);
kgreetersettings.setValue("greeter/style", parameters.value("style"));
kgreetersettings.setValue("greeter/colorscheme", parameters.value("colorscheme"));
kgreetersettings.setValue("greeter/colorscheme", colorscheme);
kgreetersettings.setValue("greeter/background", parameters.value("background"));
kgreetersettings.setValue("greeter/rectangle", parameters.value("rectangle"));
if (kgreetersettings.status() != QSettings::NoError) {