Commit bfd2f8993f173535efe436f8e60827cc44351bea

Sam Lantinga 2021-10-19T17:29:23

Fixed grab handling when focus changes between windows in the same application

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
diff --git a/src/video/windows/SDL_windowsevents.c b/src/video/windows/SDL_windowsevents.c
index 4c5b941..a1bdaf9 100644
--- a/src/video/windows/SDL_windowsevents.c
+++ b/src/video/windows/SDL_windowsevents.c
@@ -663,6 +663,14 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
         }
         break;
 
+    case WM_SETFOCUS:
+    case WM_KILLFOCUS:
+        {
+            /* Update the focus in case it's changing between windows in the same application */
+            WIN_UpdateFocus(data->window);
+        }
+        break;
+
     case WM_POINTERUPDATE:
         {
             data->last_pointer_update = lParam;