Browse Source

Don't process WM_INPUT when handling relative mode by warping the mouse cursor

Sam Lantinga 3 years ago
parent
commit
7fb4364391
1 changed files with 6 additions and 1 deletions
  1. 6 1
      src/video/windows/SDL_windowsevents.c

+ 6 - 1
src/video/windows/SDL_windowsevents.c

@@ -724,8 +724,13 @@ WIN_WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
             RAWINPUT inp;
             UINT size = sizeof(inp);
 
+            /* We only use raw mouse input in relative mode */
+            if (!mouse->relative_mode || mouse->relative_mode_warp) {
+                break;
+            }
+
             /* Relative mouse motion is delivered to the window with keyboard focus */
-            if ((!mouse->relative_mode && !mouse->relative_mode_warp) || data->window != SDL_GetKeyboardFocus()) {
+            if (data->window != SDL_GetKeyboardFocus()) {
                 break;
             }