Переглянути джерело

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

Sam Lantinga 3 роки тому
батько
коміт
7fb4364391
1 змінених файлів з 6 додано та 1 видалено
  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;
             }