From 46285db399f75154ad6c451e12f2cae2e59ace25 Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周日, 24 12月 2023 23:52:03 +0800 Subject: [PATCH] Use brilliant workaround to show Windows 10 top border --- src/core/contexts/win32windowcontext_p.h | 26 ++++++++++++++++++++++++-- 1 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/core/contexts/win32windowcontext_p.h b/src/core/contexts/win32windowcontext_p.h index 27b4e1f..3af0e13 100644 --- a/src/core/contexts/win32windowcontext_p.h +++ b/src/core/contexts/win32windowcontext_p.h @@ -1,13 +1,24 @@ #ifndef WIN32WINDOWCONTEXT_P_H #define WIN32WINDOWCONTEXT_P_H +// +// W A R N I N G !!! +// ----------------- +// +// This file is not part of the QWindowKit API. It is used purely as an +// implementation detail. This header file may change from version to +// version without notice, or may even be removed. +// + #include <QWKCore/qwindowkit_windows.h> #include <QWKCore/private/abstractwindowcontext_p.h> namespace QWK { - class QWK_CORE_EXPORT Win32WindowContext : public AbstractWindowContext { + class Win32WindowContext : public AbstractWindowContext { Q_OBJECT + Q_PROPERTY(bool needBorderPainter READ needBorderPainter FINAL) + Q_PROPERTY(int borderThickness READ borderThickness FINAL) public: Win32WindowContext(); ~Win32WindowContext() override; @@ -21,8 +32,19 @@ TitleBar, }; + QString key() const override; + void virtual_hook(int id, void *data) override; + + bool needBorderPainter() const; + int borderThickness() const; + + void resume(const QByteArray &eventType, void *message, + QT_NATIVE_EVENT_RESULT_TYPE *result) override; + protected: - bool setupHost() override; + void winIdChanged() override; + bool windowAttributeChanged(const QString &key, const QVariant &attribute, + const QVariant &oldAttribute) override; public: bool windowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam, LRESULT *result); -- Gitblit v1.9.1