From 499afac952920595e6c3d4f94806427f894c7674 Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周六, 02 12月 2023 19:05:24 +0800 Subject: [PATCH] optimize code --- src/core/corewindowagent.cpp | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/core/corewindowagent.cpp b/src/core/corewindowagent.cpp index b705937..c843273 100644 --- a/src/core/corewindowagent.cpp +++ b/src/core/corewindowagent.cpp @@ -11,28 +11,31 @@ namespace QWK { - CoreWindowAgentPrivate::CoreWindowAgentPrivate() : q_ptr(nullptr), eventHandler(nullptr) { + CoreWindowAgentPrivate::CoreWindowAgentPrivate() : eventHandler(nullptr) { } - CoreWindowAgentPrivate::~CoreWindowAgentPrivate() = default; + CoreWindowAgentPrivate::~CoreWindowAgentPrivate() { + delete eventHandler; + } void CoreWindowAgentPrivate::init() { } - bool CoreWindowAgentPrivate::setup(QWindow *window, const WindowItemDelegatePtr &delegate) { + bool CoreWindowAgentPrivate::setup(QWindow *window, WindowItemDelegate *delegate) { Q_ASSERT(window); if (!window) { return false; } + auto handler = #ifdef Q_OS_WINDOWS - std::make_shared<Win32WindowContext>(window, delegate) + new Win32WindowContext(window, delegate) #else - std::make_shared<QtWindowContext>(window, delegate) + new QtWindowContext(window, delegate) #endif ; - if (!handler->setup()) { + delete handler; return false; } eventHandler = handler; -- Gitblit v1.9.1