From 9568362bfe9bdbd6a67ab4bbf9fd9504d3868529 Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Tue, 2 Nov 2021 16:30:17 +0800 Subject: QOperatingSystemVersion: Add support for Win10 sub-versions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Windows 10 has many sub-versions such as 1809/1903/1909/etc, currently Qt6 can only detect if the application is running on Win10 or not, which I think is not accurate enough. Different Win10 version may introduce different features and bugs, the developers will have to know the exact version. Only give a general Win10 as an answer is not ideal. I think Qt should add variables for these sub-versions. Change-Id: I772d25a528ee2f8a4afba314d701142a06c718f9 Reviewed-by: Oliver Wolff Reviewed-by: MÃ¥rten Nordheim --- src/corelib/global/qoperatingsystemversion.cpp | 56 ++++++++++++++++++++++++++ src/corelib/global/qoperatingsystemversion.h | 7 ++++ 2 files changed, 63 insertions(+) (limited to 'src/corelib/global') diff --git a/src/corelib/global/qoperatingsystemversion.cpp b/src/corelib/global/qoperatingsystemversion.cpp index 61f64306e2..b722801bb1 100644 --- a/src/corelib/global/qoperatingsystemversion.cpp +++ b/src/corelib/global/qoperatingsystemversion.cpp @@ -407,6 +407,62 @@ const QOperatingSystemVersion QOperatingSystemVersion::Windows8_1 = const QOperatingSystemVersion QOperatingSystemVersion::Windows10 = QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10); +/*! + \variable QOperatingSystemVersion::Windows10_1809 + \brief a version corresponding to Windows 10 1809 (version 10.0.17763). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_1809 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 17763); + +/*! + \variable QOperatingSystemVersion::Windows10_1903 + \brief a version corresponding to Windows 10 1903 (version 10.0.18362). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_1903 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 18362); + +/*! + \variable QOperatingSystemVersion::Windows10_1909 + \brief a version corresponding to Windows 10 1909 (version 10.0.18363). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_1909 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 18363); + +/*! + \variable QOperatingSystemVersion::Windows10_2004 + \brief a version corresponding to Windows 10 2004 (version 10.0.19041). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_2004 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 19041); + +/*! + \variable QOperatingSystemVersion::Windows10_20H2 + \brief a version corresponding to Windows 10 20H2 (version 10.0.19042). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_20H2 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 19042); + +/*! + \variable QOperatingSystemVersion::Windows10_21H1 + \brief a version corresponding to Windows 10 21H1 (version 10.0.19043). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_21H1 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 19043); + +/*! + \variable QOperatingSystemVersion::Windows10_21H2 + \brief a version corresponding to Windows 10 21H2 (version 10.0.19044). + \since 6.3 + */ +const QOperatingSystemVersion QOperatingSystemVersion::Windows10_21H2 = + QOperatingSystemVersion(QOperatingSystemVersion::Windows, 10, 0, 19044); + /*! \variable QOperatingSystemVersion::OSXMavericks \brief a version corresponding to OS X Mavericks (version 10.9). diff --git a/src/corelib/global/qoperatingsystemversion.h b/src/corelib/global/qoperatingsystemversion.h index c884e0e3e8..c60017feb7 100644 --- a/src/corelib/global/qoperatingsystemversion.h +++ b/src/corelib/global/qoperatingsystemversion.h @@ -64,6 +64,13 @@ public: static const QOperatingSystemVersion Windows8; static const QOperatingSystemVersion Windows8_1; static const QOperatingSystemVersion Windows10; + static const QOperatingSystemVersion Windows10_1809; // RS5 + static const QOperatingSystemVersion Windows10_1903; // 19H1 + static const QOperatingSystemVersion Windows10_1909; // 19H2 + static const QOperatingSystemVersion Windows10_2004; // 20H1 + static const QOperatingSystemVersion Windows10_20H2; // 20H2 + static const QOperatingSystemVersion Windows10_21H1; // 21H1 + static const QOperatingSystemVersion Windows10_21H2; // 21H2 static const QOperatingSystemVersion OSXMavericks; static const QOperatingSystemVersion OSXYosemite; -- cgit v1.2.3