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