From d5bb0936bf8b16dc4a8b505192077576dbe96149 Mon Sep 17 00:00:00 2001 From: Joseph Donofry Date: Sat, 10 Aug 2019 13:14:37 -0400 Subject: Use 'system' theme as default if QT_QPA_PLATFORMTHEME is set On first launch, before the user has configured any settings, check the value of the QT_QPA_PLATFORMTHEME environment var. If it is set, use the system theme as the default instead of the light theme. This fixes #72. --- src/UserSettingsPage.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/UserSettingsPage.h') diff --git a/src/UserSettingsPage.h b/src/UserSettingsPage.h index ffff1e20..dce12315 100644 --- a/src/UserSettingsPage.h +++ b/src/UserSettingsPage.h @@ -85,7 +85,7 @@ public: save(); } - QString theme() const { return !theme_.isEmpty() ? theme_ : "light"; } + QString theme() const { return !theme_.isEmpty() ? theme_ : defaultTheme_; } bool isTrayEnabled() const { return isTrayEnabled_; } bool isStartInTrayEnabled() const { return isStartInTrayEnabled_; } bool isGroupViewEnabled() const { return isGroupViewEnabled_; } @@ -100,6 +100,11 @@ signals: void groupViewStateChanged(bool state); private: + // Default to system theme if QT_QPA_PLATFORMTHEME var is set. + QString defaultTheme_ = + QProcessEnvironment::systemEnvironment().value("QT_QPA_PLATFORMTHEME", "").isEmpty() + ? "light" + : "system"; QString theme_; bool isTrayEnabled_; bool isStartInTrayEnabled_; -- cgit 1.5.1