From 9dcea027f16c4ce5852da3dfc8aca284c582bd7d Mon Sep 17 00:00:00 2001
From: sola.lu <sola.lu.greentest.com.cn>
Date: 周五, 06 6月 2025 18:19:18 +0800
Subject: [PATCH] 1.注释掉custom margin,解决程序放大后,遮盖窗口底部内容的问题。

---
 src/core/qwindowkit_windows.h |   65 +++++++++++++++-----------------
 1 files changed, 31 insertions(+), 34 deletions(-)

diff --git a/src/core/qwindowkit_windows.h b/src/core/qwindowkit_windows.h
index 8c5c7c0..aad3775 100644
--- a/src/core/qwindowkit_windows.h
+++ b/src/core/qwindowkit_windows.h
@@ -5,6 +5,14 @@
 #ifndef QWINDOWKIT_WINDOWS_H
 #define QWINDOWKIT_WINDOWS_H
 
+#ifndef _USER32_
+#  define _USER32_
+#endif
+
+#ifndef _DWMAPI_
+#  define _DWMAPI_
+#endif
+
 #include <QtCore/qt_windows.h>
 #include <QtCore/qglobal.h>
 
@@ -62,22 +70,22 @@
         inline bool IsWindows1122H2OrGreater_Real() {
             RTL_OSVERSIONINFOW rovi = GetRealOSVersion();
             return (rovi.dwMajorVersion > 10) ||
-                   (rovi.dwMajorVersion == 10 && (rovi.dwMinorVersion > 0 ||
-                    rovi.dwBuildNumber >= 22621));
+                   (rovi.dwMajorVersion == 10 &&
+                    (rovi.dwMinorVersion > 0 || rovi.dwBuildNumber >= 22621));
         }
 
         inline bool IsWindows11OrGreater_Real() {
             RTL_OSVERSIONINFOW rovi = GetRealOSVersion();
             return (rovi.dwMajorVersion > 10) ||
-                   (rovi.dwMajorVersion == 10 && (rovi.dwMinorVersion > 0 ||
-                    rovi.dwBuildNumber >= 22000));
+                   (rovi.dwMajorVersion == 10 &&
+                    (rovi.dwMinorVersion > 0 || rovi.dwBuildNumber >= 22000));
         }
 
         inline bool IsWindows1020H1OrGreater_Real() {
             RTL_OSVERSIONINFOW rovi = GetRealOSVersion();
             return (rovi.dwMajorVersion > 10) ||
-                   (rovi.dwMajorVersion == 10 && (rovi.dwMinorVersion > 0 ||
-                    rovi.dwBuildNumber >= 19041));
+                   (rovi.dwMajorVersion == 10 &&
+                    (rovi.dwMinorVersion > 0 || rovi.dwBuildNumber >= 19041));
         }
 
         inline bool IsWindows102004OrGreater_Real() {
@@ -87,8 +95,8 @@
         inline bool IsWindows101903OrGreater_Real() {
             RTL_OSVERSIONINFOW rovi = GetRealOSVersion();
             return (rovi.dwMajorVersion > 10) ||
-                   (rovi.dwMajorVersion == 10 && (rovi.dwMinorVersion > 0 ||
-                    rovi.dwBuildNumber >= 18362));
+                   (rovi.dwMajorVersion == 10 &&
+                    (rovi.dwMinorVersion > 0 || rovi.dwBuildNumber >= 18362));
         }
 
         inline bool IsWindows1019H1OrGreater_Real() {
@@ -98,8 +106,8 @@
         inline bool IsWindows101809OrGreater_Real() {
             RTL_OSVERSIONINFOW rovi = GetRealOSVersion();
             return (rovi.dwMajorVersion > 10) ||
-                   (rovi.dwMajorVersion == 10 && (rovi.dwMinorVersion > 0 ||
-                    rovi.dwBuildNumber >= 17763));
+                   (rovi.dwMajorVersion == 10 &&
+                    (rovi.dwMinorVersion > 0 || rovi.dwBuildNumber >= 17763));
         }
 
         inline bool IsWindows10RS5OrGreater_Real() {
@@ -145,10 +153,7 @@
 
         void close();
         QString stringValue(QStringView subKey) const;
-        QPair<DWORD, bool> dwordValue(QStringView subKey) const;
-
-        template<typename T>
-        std::optional<T> value(QStringView subKey) const;
+        std::pair<DWORD, bool> dwordValue(QStringView subKey) const;
 
     private:
         HKEY m_key;
@@ -159,34 +164,26 @@
     inline bool WindowsRegistryKey::isValid() const {
         return m_key != nullptr;
     }
-
-    template<>
-    inline std::optional<DWORD> WindowsRegistryKey::value(QStringView subKey) const {
-        const auto dv = dwordValue(subKey);
-        if (!dv.second) {
-            return {};
-        }
-        return dv.first;
-    }
 #elif QT_VERSION < QT_VERSION_CHECK(6, 8, 1)
+    using WindowsRegistryKey = QWinRegistryKey;
+#else
     class WindowsRegistryKey : public QWinRegistryKey {
     public:
-        WindowsRegistryKey(HKEY parentHandle, QStringView subKey, REGSAM permissions = KEY_READ, REGSAM access = 0);
+        WindowsRegistryKey(HKEY parentHandle, QStringView subKey, REGSAM permissions = KEY_READ,
+                           REGSAM access = 0)
+            : QWinRegistryKey(parentHandle, subKey, permissions, access) {
+        }
 
-        template<typename T>
-        std::optional<T> value(QStringView subKey) const;
+        inline std::pair<DWORD, bool> dwordValue(QStringView subKey) const;
     };
 
-    template<>
-    inline std::optional<DWORD> WindowsRegistryKey::value(QStringView subKey) const {
-        const auto dv = dwordValue(subKey);
-        if (!dv.second) {
-            return {};
+    inline std::pair<DWORD, bool> WindowsRegistryKey::dwordValue(QStringView subKey) const {
+        const auto val = value<DWORD>(subKey);
+        if (!val) {
+            return {0, false};
         }
-        return dv.first;
+        return {val.value(), true};
     }
-#else
-    using WindowsRegistryKey = QWinRegistryKey;
 #endif
 
     //

--
Gitblit v1.9.1