Always write the theme name to plasmarc, also if the default theme is chosen

Currently, the "name" key is deleted from plasmarc when you select the
default theme (breeze) in the desktop theme KCM.
This leads to unexpected behaviour: If you set e.g. oxygen as look&feel,
and then set breeze as desktop theme, Plasma actually uses Air (the
default desktop theme in the oxygen l&f) on next login instead of
breeze. In other words, it is impossible to configure breeze as desktop
theme when using a different look&feel as breeze.

This fixes the problem by removing the check whether the default theme
is selected and always writes the "name" config key to plasmarc.

REVIEW: 127698
This commit is contained in:
Wolfgang Bauer 2016-04-22 19:23:35 +02:00
parent 08312b2e34
commit d884119f5a

View File

@ -846,11 +846,7 @@ void ThemePrivate::setThemeName(const QString &tempThemeName, bool writeSettings
if (realTheme && isDefault && writeSettings) {
// we're the default theme, let's save our state
KConfigGroup &cg = config();
if (ThemePrivate::defaultTheme == themeName) {
cg.deleteEntry("name");
} else {
cg.writeEntry("name", themeName);
}
cg.writeEntry("name", themeName);
cg.sync();
}