Fix for 500ms hang after user clicks on the title bar, but before moving (#12217)

Reference: https://gamedev.net/forums/topic/672094-keeping-things-moving-during-win32-moveresize-events/5254386/
This commit is contained in:
Clint Kilmer 2025-02-08 12:21:10 -07:00 committed by GitHub
parent a0b6c0fd8f
commit 69d28027ad
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 9 additions and 0 deletions

View File

@ -1525,6 +1525,15 @@ LRESULT CALLBACK WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPara
case WM_NCLBUTTONDOWN:
{
data->in_title_click = true;
// Fix for 500ms hang after user clicks on the title bar, but before moving mouse
// Reference: https://gamedev.net/forums/topic/672094-keeping-things-moving-during-win32-moveresize-events/5254386/
if (SendMessage(hwnd, WM_NCHITTEST, wParam, lParam) == HTCAPTION) {
POINT cursorPos;
GetCursorPos(&cursorPos);
ScreenToClient(hwnd, &cursorPos);
PostMessage(hwnd, WM_MOUSEMOVE, 0, cursorPos.x | cursorPos.y << 16);
}
} break;
case WM_CAPTURECHANGED: