From 8241b09e802fccb37dfe5fb32f1e645d763d7dda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=A4rkl?= Date: Mon, 24 Dec 2018 16:12:08 +0100 Subject: [PATCH] Fix Logo Color for Dark Theme --- src/common/Configuration.cpp | 19 ++++++++++++++++++- src/common/Configuration.h | 2 ++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/common/Configuration.cpp b/src/common/Configuration.cpp index 976efd45..4da7b974 100644 --- a/src/common/Configuration.cpp +++ b/src/common/Configuration.cpp @@ -127,7 +127,15 @@ void Configuration::setLocale(const QLocale &l) bool Configuration::windowColorIsDark() { - auto windowColor = QPalette().color(QPalette::Window).toRgb(); + ColorFlags currentThemeColorFlags = getCurrentTheme()->flag; + if (currentThemeColorFlags == ColorFlags::LightFlag) { + return false; + } else if (currentThemeColorFlags == ColorFlags::DarkFlag) { + return true; + } + + const QPalette &palette = qApp->palette(); + auto windowColor = palette.color(QPalette::Window).toRgb(); return (windowColor.red() + windowColor.green() + windowColor.blue()) < 382; } @@ -276,6 +284,15 @@ void Configuration::setTheme(int theme) emit colorsUpdated(); } +const CutterQtTheme *Configuration::getCurrentTheme() +{ + int i = getTheme(); + if (i < 0 || i >= kCutterQtThemesList.size()) { + i = 0; + setTheme(i); + } + return &kCutterQtThemesList[i]; +} QString Configuration::getLogoFile() { diff --git a/src/common/Configuration.h b/src/common/Configuration.h index e748101b..22b9c478 100644 --- a/src/common/Configuration.h +++ b/src/common/Configuration.h @@ -65,6 +65,8 @@ public: return s.value("ColorPalette", 0).toInt(); } + const CutterQtTheme *getCurrentTheme(); + QString getDirProjects(); void setDirProjects(const QString &dir);