From 3155a8173a7398de831fdb64787fe3f7c32af93c Mon Sep 17 00:00:00 2001 From: Michail Vourlakos Date: Thu, 8 Nov 2018 15:04:59 +0200 Subject: [PATCH] update colorscheme values based on plasmaTheme --- app/plasmathemeextended.cpp | 4 ++-- app/schemecolors.cpp | 23 +++++++++++++++-------- app/schemecolors.h | 4 +++- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/app/plasmathemeextended.cpp b/app/plasmathemeextended.cpp index a21cf9507..a6e76b339 100644 --- a/app/plasmathemeextended.cpp +++ b/app/plasmathemeextended.cpp @@ -129,7 +129,7 @@ void PlasmaThemeExtended::setNormalSchemeFile(const QString &file) m_normalScheme->deleteLater(); } - m_normalScheme = new SchemeColors(this, m_normalSchemePath); + m_normalScheme = new SchemeColors(this, m_normalSchemePath, true); connect(m_normalScheme, &SchemeColors::colorsChanged, this, &PlasmaThemeExtended::loadThemeLightness); qDebug() << "plasma theme normal colors ::: " << m_normalSchemePath; @@ -154,7 +154,7 @@ void PlasmaThemeExtended::updateReversedScheme() m_reversedScheme->deleteLater(); } - m_reversedScheme = new SchemeColors(this, m_reversedSchemePath); + m_reversedScheme = new SchemeColors(this, m_reversedSchemePath, true); qDebug() << "plasma theme reversed colors ::: " << m_reversedSchemePath; } diff --git a/app/schemecolors.cpp b/app/schemecolors.cpp index 2d46bfdef..80afb3980 100644 --- a/app/schemecolors.cpp +++ b/app/schemecolors.cpp @@ -30,8 +30,9 @@ namespace Latte { -SchemeColors::SchemeColors(QObject *parent, QString scheme) : - QObject(parent) +SchemeColors::SchemeColors(QObject *parent, QString scheme, bool plasmaTheme) : + QObject(parent), + m_basedOnPlasmaTheme(plasmaTheme) { QString pSchemeFile = possibleSchemeFile(scheme); @@ -184,15 +185,21 @@ void SchemeColors::updateScheme() KSharedConfigPtr filePtr = KSharedConfig::openConfig(m_schemeFile); KConfigGroup wmGroup = KConfigGroup(filePtr, "WM"); KConfigGroup selGroup = KConfigGroup(filePtr, "Colors:Selection"); - //KConfigGroup viewGroup = KConfigGroup(filePtr, "Colors:View"); + KConfigGroup viewGroup = KConfigGroup(filePtr, "Colors:View"); //KConfigGroup windowGroup = KConfigGroup(filePtr, "Colors:Window"); KConfigGroup buttonGroup = KConfigGroup(filePtr, "Colors:Button"); - m_activeBackgroundColor = wmGroup.readEntry("activeBackground", QColor()); - m_activeTextColor = wmGroup.readEntry("activeForeground", QColor()); - - m_inactiveBackgroundColor = wmGroup.readEntry("inactiveBackground", QColor()); - m_inactiveTextColor = wmGroup.readEntry("inactiveForeground", QColor()); + if (!m_basedOnPlasmaTheme) { + m_activeBackgroundColor = wmGroup.readEntry("activeBackground", QColor()); + m_activeTextColor = wmGroup.readEntry("activeForeground", QColor()); + m_inactiveBackgroundColor = wmGroup.readEntry("inactiveBackground", QColor()); + m_inactiveTextColor = wmGroup.readEntry("inactiveForeground", QColor()); + } else { + m_activeBackgroundColor = viewGroup.readEntry("BackgroundNormal", QColor()); + m_activeTextColor = viewGroup.readEntry("ForegroundNormal", QColor()); + m_inactiveBackgroundColor = viewGroup.readEntry("BackgroundAlternate", QColor()); + m_inactiveTextColor = viewGroup.readEntry("ForegroundInactive", QColor()); + } m_highlightColor = selGroup.readEntry("BackgroundNormal", QColor()); m_highlightedTextColor = selGroup.readEntry("ForegroundNormal", QColor()); diff --git a/app/schemecolors.h b/app/schemecolors.h index cf3f243fe..ab73a7c8b 100644 --- a/app/schemecolors.h +++ b/app/schemecolors.h @@ -48,7 +48,7 @@ class SchemeColors: public QObject Q_PROPERTY(QColor buttonFocusColor READ buttonFocusColor NOTIFY colorsChanged) public: - SchemeColors(QObject *parent, QString scheme); + SchemeColors(QObject *parent, QString scheme, bool plasmaTheme = false); ~SchemeColors() override; QString schemeName() const; @@ -81,6 +81,8 @@ private slots: void updateScheme(); private: + bool m_basedOnPlasmaTheme{false}; + QString m_schemeName; QString m_schemeFile;