Sine Striker
2023-12-06 8e6cc97cc705bbc4a88a7803a3f48640e373e469
Fix title bar draggable mistake
3个文件已修改
11 ■■■■ 已修改文件
examples/shared/widgetframe/windowbar_p.h 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/core/contexts/abstractwindowcontext.cpp 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/core/contexts/win32windowcontext.cpp 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
examples/shared/widgetframe/windowbar_p.h
@@ -9,7 +9,6 @@
    class WindowBarPrivate {
        Q_DECLARE_PUBLIC(WindowBar)
        Q_DISABLE_COPY(WindowBarPrivate)
    public:
        WindowBarPrivate();
        virtual ~WindowBarPrivate();
@@ -44,6 +43,9 @@
        inline void insertDefaultSpace(int index) {
            layout->insertSpacerItem(index, new QSpacerItem(0, 0));
        }
    private:
        Q_DISABLE_COPY_MOVE(WindowBarPrivate)
    };
}
src/core/contexts/abstractwindowcontext.cpp
@@ -115,6 +115,10 @@
            return false;
        }
        if (!m_delegate->mapGeometryToScene(m_titleBar).contains(pos)) {
            return false;
        }
        for (int i = CoreWindowAgent::WindowIcon; i <= CoreWindowAgent::Close; ++i) {
            auto currentButton = m_systemButtons[i];
            if (currentButton && m_delegate->isVisible(currentButton) &&
@@ -134,7 +138,6 @@
        if (!m_hitTestVisibleRects.isEmpty() && hitTestShape().contains(pos)) {
            return false;
        }
        return true;
    }
src/core/contexts/win32windowcontext.cpp
@@ -5,10 +5,10 @@
#include <QtCore/QHash>
#include <QtCore/QAbstractNativeEventFilter>
#include <QtCore/QCoreApplication>
#include <QtCore/QOperatingSystemVersion>
#include <QtCore/QScopeGuard>
#include <QtCore/QTimer>
#include <QtGui/QGuiApplication>
#include <QtCore/private/qsystemlibrary_p.h>
#include <QtGui/private/qhighdpiscaling_p.h>