From c70a286d01728bd2fa01103191c9da23ad3f8be2 Mon Sep 17 00:00:00 2001
From: Sine Striker <trueful@163.com>
Date: 周五, 23 2月 2024 22:03:56 +0800
Subject: [PATCH] Delay filtering the native events

---
 src/core/windowagentbase.cpp |   41 ++++++++++++++++++++++++++---------------
 1 files changed, 26 insertions(+), 15 deletions(-)

diff --git a/src/core/windowagentbase.cpp b/src/core/windowagentbase.cpp
index 60ade6a..69328d9 100644
--- a/src/core/windowagentbase.cpp
+++ b/src/core/windowagentbase.cpp
@@ -1,3 +1,7 @@
+// Copyright (C) 2023-2024 Stdware Collections (https://www.github.com/stdware)
+// Copyright (C) 2021-2023 wangwenx190 (Yuhang Zhao)
+// SPDX-License-Identifier: Apache-2.0
+
 #include "windowagentbase.h"
 #include "windowagentbase_p.h"
 
@@ -27,8 +31,8 @@
         \brief WindowAgentBase is the base class of the specifiy window agent for QtWidgets and
         QtQuick.
 
-        It processes some system events and the implements of frameless logic, and provides some
-        common methods for derived classes to call.
+        It processes some system events to remove the window's default title bar, and provides some
+        shared methods for derived classes to call.
     */
 
     WindowAgentBasePrivate::WindowContextFactoryMethod
@@ -78,25 +82,32 @@
     }
 
     /*!
-        Sets the platform-related attribute for the window.
-
-        Available attributes:
+        Sets the platform-related attribute for the window. Available attributes:
 
         On Windows,
-            \li \c acrylic-material: Specify a boolean value to enable or disable acrylic material,
-                    this attribute is only available on Windows 11.
-            \li \c mica: Specify a boolean value to enable or disable mica material,
-                    this attribute is only available on Windows 11.
-            \li \c mica-alt: Specify a boolean value to enable or disable mica-alt material,
-                    this attribute is only available on Windows 11.
+            \li \c dwm-blur: Specify a boolean value to enable or disable dwm blur effect, this
+                   attribute is available on Windows 10 or later.
             \li \c dark-mode: Specify a boolean value to enable or disable the dark mode, it is
-                    enabled by default on Windows 10 if the system borders config is enabled.
+                   enabled by default on Windows 10 if the system borders config is enabled. This
+                   attribute is available on Windows 10 or later.
+            \li \c acrylic-material: Specify a boolean value to enable or disable acrylic material,
+                   this attribute is only available on Windows 11.
+            \li \c mica: Specify a boolean value to enable or disable mica material,
+                   this attribute is only available on Windows 11.
+            \li \c mica-alt: Specify a boolean value to enable or disable mica-alt material,
+                   this attribute is only available on Windows 11.
             \li \c extra-margins: Specify a margin value to change the \c dwm extended area
-                    geometry, you shouldn't change this attribute because it may break the
-                    internal state.
+                   geometry, you shouldn't change this attribute because it may break the
+                   internal state.
 
         On macOS,
-            \li \c no-system-buttons: Specify a boolean value to set the system buttons' visibility.
+            \li \c no-system-buttons: Specify a boolean value to set the system buttons'
+                   visibility.
+            \li \c blur-effect: You can specify a string value, "dark" to enable dark mode, "light"
+                   to set enable mode, "none" to disable. You can also specify a boolean value,
+                   \c true to enable current theme mode, \c false to disable.
+            \li \c title-bar-height: Returns the system title bar height, the system button display
+                   area will be limited to this height. (Readonly)
     */
     bool WindowAgentBase::setWindowAttribute(const QString &key, const QVariant &attribute) {
         Q_D(WindowAgentBase);

--
Gitblit v1.9.1