view src/sys/win32/dark_theme.cpp @ 72:893ad99b174d

dep/anitomy: add CXX_STANDARD to CMakeLists.txt this fixes bugs when building on macOS, because Apple clang defaults to C++98(?) HG Enter commit message. Lines beginning with 'HG:' are removed.
author Paper <mrpapersonic@gmail.com>
date Tue, 03 Oct 2023 04:58:38 -0400
parents 6481c5aed3e1
children
line wrap: on
line source

#include "sys/win32/dark_theme.h"
#include <QOperatingSystemVersion>
#include <QSettings>

namespace win32 {

bool DarkThemeAvailable() {
	// dark mode supported Windows 10 1809 10.0.17763 onward
	// https://stackoverflow.com/questions/53501268/win10-dark-theme-how-to-use-in-winapi
	const auto& ver = QOperatingSystemVersion::current();
	return (ver.majorVersion() > 10) ? true : (ver.majorVersion() == 10 && ver.microVersion() >= 17763);
}

bool IsInDarkTheme() {
	QSettings settings("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize",
	                   QSettings::NativeFormat);
	return settings.value("AppsUseLightTheme", 1).toInt() == 0;
}

} // namespace win32