From 82cbb7b8da651053f1700db58fc1012103327d20 Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Sat, 13 Jul 2024 18:08:24 +0200 Subject: [PATCH] app: [Windows] suppress double-click behaviour for custom decorations Fixes: https://todo.sr.ht/~eliasnaur/gio/600 Signed-off-by: Elias Naur --- app/internal/windows/windows.go | 1 + app/os_windows.go | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/app/internal/windows/windows.go b/app/internal/windows/windows.go index be4b8084..a8b6f7d0 100644 --- a/app/internal/windows/windows.go +++ b/app/internal/windows/windows.go @@ -266,6 +266,7 @@ const ( WM_MOUSEWHEEL = 0x020A WM_MOUSEHWHEEL = 0x020E WM_NCACTIVATE = 0x0086 + WM_NCLBUTTONDBLCLK = 0x00A3 WM_NCHITTEST = 0x0084 WM_NCCALCSIZE = 0x0083 WM_PAINT = 0x000F diff --git a/app/os_windows.go b/app/os_windows.go index 7c950a5a..35bf9ef1 100644 --- a/app/os_windows.go +++ b/app/os_windows.go @@ -326,6 +326,12 @@ func windowProc(hwnd syscall.Handle, msg uint32, wParam, lParam uintptr) uintptr mi := windows.GetMonitorInfo(w.hwnd) szp.Rgrc[0] = mi.WorkArea return 0 + case windows.WM_NCLBUTTONDBLCLK: + if !w.config.Decorated { + // Override Windows behaviour when we + // draw decorations. + return 0 + } case windows.WM_PAINT: w.draw(true) case windows.WM_SIZE: