From a4d0b98d40d0f740742e393db774ee53302ec64c Mon Sep 17 00:00:00 2001 From: Zhao Yuhang <2546789017@qq.com> Date: 周五, 30 5月 2025 16:11:16 +0800 Subject: [PATCH] minor tweaks --- src/core/contexts/win32windowcontext.cpp | 22 +++++++++++++++++++++- 1 files changed, 21 insertions(+), 1 deletions(-) diff --git a/src/core/contexts/win32windowcontext.cpp b/src/core/contexts/win32windowcontext.cpp index f8a4f67..e155d3d 100644 --- a/src/core/contexts/win32windowcontext.cpp +++ b/src/core/contexts/win32windowcontext.cpp @@ -37,6 +37,14 @@ # error Current Qt version has a critical bug which will break QWK functionality. Please upgrade to > 6.6.1 or downgrade to < 6.6.0 #endif +#ifndef DWM_BB_ENABLE +# define DWM_BB_ENABLE 0x00000001 +#endif + +#ifndef ABM_GETAUTOHIDEBAREX +# define ABM_GETAUTOHIDEBAREX 0x0000000b +#endif + namespace QWK { enum IconButtonClickLevelFlag { @@ -1901,6 +1909,18 @@ break; } + case WM_SHOWWINDOW: { + if (!wParam || !isWindowNoState(hWnd) || isFullScreen(hWnd)) { + break; + } + RECT windowRect{}; + ::GetWindowRect(hWnd, &windowRect); + static constexpr const auto swpFlags = SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_FRAMECHANGED | SWP_NOOWNERZORDER; + ::SetWindowPos(hWnd, nullptr, 0, 0, RECT_WIDTH(windowRect) + 1, RECT_HEIGHT(windowRect) + 1, swpFlags); + ::SetWindowPos(hWnd, nullptr, 0, 0, RECT_WIDTH(windowRect), RECT_HEIGHT(windowRect), swpFlags); + break; + } + default: break; } @@ -2321,7 +2341,7 @@ if (!mouseHook) { mouseHook = ::SetWindowsHookExW( WH_MOUSE, - [](int nCode, WPARAM wParam, LPARAM lParam) { + [](int nCode, WPARAM wParam, LPARAM lParam) -> LRESULT { if (nCode >= 0) { switch (wParam) { case WM_LBUTTONDBLCLK: -- Gitblit v1.9.1