From 564f33e8b29a6f73050f4da3f843b942aaf0d739 Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周三, 08 5月 2024 19:36:16 +0800 Subject: [PATCH] Improve event filter handling --- src/core/contexts/qtwindowcontext_p.h | 26 ++++++++++++++++++++++---- 1 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/core/contexts/qtwindowcontext_p.h b/src/core/contexts/qtwindowcontext_p.h index 6046633..1625ea1 100644 --- a/src/core/contexts/qtwindowcontext_p.h +++ b/src/core/contexts/qtwindowcontext_p.h @@ -1,19 +1,37 @@ +// Copyright (C) 2023-2024 Stdware Collections (https://www.github.com/stdware) +// Copyright (C) 2021-2023 wangwenx190 (Yuhang Zhao) +// SPDX-License-Identifier: Apache-2.0 + #ifndef QTWINDOWCONTEXT_P_H #define QTWINDOWCONTEXT_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/private/abstractwindowcontext_p.h> namespace QWK { - class QWK_CORE_EXPORT QtWindowContext : public AbstractWindowContext { + class QtWindowContext : public AbstractWindowContext { Q_OBJECT public: QtWindowContext(); - ~QtWindowContext(); + ~QtWindowContext() override; + + QString key() const override; + void virtual_hook(int id, void *data) override; protected: - bool setupHost() override; - bool hostEventFilter(QEvent *event) override; + void winIdChanged(WId winId, WId oldWinId) override; + + protected: + std::unique_ptr<SharedEventFilter> qtWindowEventFilter; }; } -- Gitblit v1.9.1