|
@@ -631,12 +631,8 @@ static LRESULT CALLBACK windowProc(HWND hWnd, UINT uMsg,
|
|
|
// clicking a caption button
|
|
|
if (HIWORD(lParam) == WM_LBUTTONDOWN)
|
|
|
{
|
|
|
- if (LOWORD(lParam) == HTCLOSE ||
|
|
|
- LOWORD(lParam) == HTMINBUTTON ||
|
|
|
- LOWORD(lParam) == HTMAXBUTTON)
|
|
|
- {
|
|
|
+ if (LOWORD(lParam) != HTCLIENT)
|
|
|
window->win32.frameAction = GLFW_TRUE;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
break;
|
|
@@ -943,6 +939,9 @@ static LRESULT CALLBACK windowProc(HWND hWnd, UINT uMsg,
|
|
|
case WM_ENTERSIZEMOVE:
|
|
|
case WM_ENTERMENULOOP:
|
|
|
{
|
|
|
+ if (window->win32.frameAction)
|
|
|
+ break;
|
|
|
+
|
|
|
// HACK: Enable the cursor while the user is moving or
|
|
|
// resizing the window or using the window menu
|
|
|
if (window->cursorMode == GLFW_CURSOR_DISABLED)
|
|
@@ -954,6 +953,9 @@ static LRESULT CALLBACK windowProc(HWND hWnd, UINT uMsg,
|
|
|
case WM_EXITSIZEMOVE:
|
|
|
case WM_EXITMENULOOP:
|
|
|
{
|
|
|
+ if (window->win32.frameAction)
|
|
|
+ break;
|
|
|
+
|
|
|
// HACK: Disable the cursor once the user is done moving or
|
|
|
// resizing the window or using the menu
|
|
|
if (window->cursorMode == GLFW_CURSOR_DISABLED)
|