From 51039917996909284fbc2d776a9b8f71fe5e6f9a Mon Sep 17 00:00:00 2001
From: Zhao Yuhang <2546789017@qq.com>
Date: 周六, 02 12月 2023 17:43:17 +0800
Subject: [PATCH] wip

---
 src/core/contexts/win32windowcontext.cpp |   23 ++++-------------------
 1 files changed, 4 insertions(+), 19 deletions(-)

diff --git a/src/core/contexts/win32windowcontext.cpp b/src/core/contexts/win32windowcontext.cpp
index ab32ed0..5154308 100644
--- a/src/core/contexts/win32windowcontext.cpp
+++ b/src/core/contexts/win32windowcontext.cpp
@@ -24,8 +24,7 @@
 
         // Try hooked procedure
         LRESULT result;
-        bool handled = ctx->windowProc(hWnd, message, wParam, lParam, &result);
-        if (handled) {
+        if (ctx->windowProc(hWnd, message, wParam, lParam, &result)) {
             return result;
         }
 
@@ -33,8 +32,8 @@
         return ::CallWindowProcW(g_qtWindowProc, hWnd, message, wParam, lParam);
     }
 
-    Win32WindowContext::Win32WindowContext(QWindow *window, WindowItemDelegate *delegate)
-        : AbstractWindowContext(window, delegate), windowId(0) {
+    Win32WindowContext::Win32WindowContext(QWindow *window, WindowItemDelegatePtr delegate)
+        : AbstractWindowContext(window, std::move(delegate)), windowId(0) {
     }
 
     Win32WindowContext::~Win32WindowContext() {
@@ -45,25 +44,11 @@
 
     bool Win32WindowContext::setup() {
         auto winId = m_windowHandle->winId();
-        Q_ASSERT(winId);
-        if (!winId) {
-            return false;
-        }
 
         // Install window hook
         auto hWnd = reinterpret_cast<HWND>(winId);
         auto qtWindowProc = reinterpret_cast<WNDPROC>(::GetWindowLongPtrW(hWnd, GWLP_WNDPROC));
-        Q_ASSERT(qtWindowProc);
-        if (!qtWindowProc) {
-            QWK_WARNING << winLastErrorMessage();
-            return false;
-        }
-
-        if (::SetWindowLongPtrW(hWnd, GWLP_WNDPROC,
-                                reinterpret_cast<LONG_PTR>(QWK_WindowsWndProc)) == 0) {
-            QWK_WARNING << winLastErrorMessage();
-            return false;
-        }
+        ::SetWindowLongPtrW(hWnd, GWLP_WNDPROC, reinterpret_cast<LONG_PTR>(QWK_WindowsWndProc));
 
         windowId = winId;
 

--
Gitblit v1.9.1