Mercurial > minori
diff src/sys/win32/dark_theme.cpp @ 1:1ae666fdf9e2
*: initial commit
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Tue, 08 Aug 2023 19:49:15 -0400 |
parents | |
children | 23d0d9319a00 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/sys/win32/dark_theme.cpp Tue Aug 08 19:49:15 2023 -0400 @@ -0,0 +1,26 @@ +#include <QSettings> +#include <QOperatingSystemVersion> +#include "sys/win32/dark_theme.h" +bool win32::DarkThemeAvailable() +{ + // dark mode supported Windows 10 1809 10.0.17763 onward + // https://stackoverflow.com/questions/53501268/win10-dark-theme-how-to-use-in-winapi + if ( QOperatingSystemVersion::current().majorVersion() == 10 ) + { + return QOperatingSystemVersion::current().microVersion() >= 17763; + } + else if ( QOperatingSystemVersion::current().majorVersion() > 10 ) + { + return true; + } + else + { + return false; + } +} + +bool win32::IsInDarkTheme() +{ + QSettings settings( "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize", QSettings::NativeFormat ); + return settings.value( "AppsUseLightTheme", 1 ).toInt() == 0; +}