Sine Striker
2024-01-03 7990ac78e1938536650456bf987a4c986a4e6f1b
src/core/contexts/win32windowcontext.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 "win32windowcontext_p.h"
#include <optional>
@@ -680,7 +684,7 @@
    }
    QVariant Win32WindowContext::windowAttribute(const QString &key) const {
        if (key == QStringLiteral("title-bar-rect")) {
        if (key == QStringLiteral("window-rect")) {
            if (!m_windowHandle)
                return {};
@@ -696,10 +700,6 @@
            } else {
                ::AdjustWindowRectEx(&frame, style, FALSE, exStyle);
            }
            frame.left = std::abs(frame.left);
            frame.top = std::abs(frame.top);
            frame.right = std::abs(frame.right);
            frame.bottom = std::abs(frame.bottom);
            return QVariant::fromValue(rect2qrect(frame));
        }
@@ -735,13 +735,13 @@
            static auto margins = QVariant::fromValue(QMargins(1, 1, 1, 1));
            // If we remove the system border, the window will lose its shadow. If dwm is enabled,
            // then you need to set at least 1px margins, otherwise the following operation will
            // then we need to set at least 1px margins, otherwise the following operation will
            // fail with no effect.
            setWindowAttribute(QStringLiteral("extra-margins"), margins);
        }
        // We should disable WS_SYSMENU, otherwise the system button icons will be visible if mica
        // is enabled and the title bar is transparent
        // is enabled and the title bar is transparent.
        {
            auto style = ::GetWindowLongPtrW(hWnd, GWL_STYLE);
            if (isSystemBorderEnabled()) {