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