From: Claudio Cambra Date: Tue, 5 Nov 2024 08:02:14 +0000 (+0900) Subject: Add convenience method to check Windows 11 availability X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~12^2~5^2~40^2~9 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7c2102547d2264087cc2badc4ebfe3a474d4cafd;p=nextcloud-desktop.git Add convenience method to check Windows 11 availability Signed-off-by: Claudio Cambra --- diff --git a/src/libsync/theme.cpp b/src/libsync/theme.cpp index e699cf4d1..2f9944b92 100644 --- a/src/libsync/theme.cpp +++ b/src/libsync/theme.cpp @@ -33,6 +33,10 @@ #include #include +#ifdef Q_OS_WIN +#include +#endif + #include "nextcloudtheme.h" #ifdef THEME_INCLUDE @@ -62,6 +66,24 @@ bool shouldPreferSvg() return QByteArray(APPLICATION_ICON_SET).toUpper() == QByteArrayLiteral("SVG"); } +#ifdef Q_OS_WIN +bool IsWindows11OrGreater() { + OSVERSIONINFOEX osvi = {}; + osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); + osvi.dwMajorVersion = 10; + osvi.dwMinorVersion = 0; + osvi.dwBuildNumber = 22000; + + DWORDLONG const conditionMask = VerSetConditionMask( + VerSetConditionMask( + VerSetConditionMask(0, VER_MAJORVERSION, VER_GREATER_EQUAL), + VER_MINORVERSION, VER_GREATER_EQUAL), + VER_BUILDNUMBER, VER_GREATER_EQUAL); + + return VerifyVersionInfo(&osvi, VER_MAJORVERSION | VER_MINORVERSION | VER_BUILDNUMBER, conditionMask) != 0; +} +#endif + } namespace OCC {