Browse Source

Fixed relative mouse motion moving farther and farther off screen.

Sam Lantinga 10 years ago
parent
commit
236deab49b
1 changed files with 8 additions and 3 deletions
  1. 8 3
      src/events/SDL_mouse.c

+ 8 - 3
src/events/SDL_mouse.c

@@ -293,9 +293,14 @@ SDL_PrivateSendMouseMotion(SDL_Window * window, SDL_MouseID mouseID, int relativ
         event.motion.yrel = yrel;
         posted = (SDL_PushEvent(&event) > 0);
     }
-    /* Use unclamped values if we're getting events outside the window */
-    mouse->last_x = x;
-    mouse->last_y = y;
+    if (relative) {
+        mouse->last_x = mouse->x;
+        mouse->last_y = mouse->y;
+    } else {
+        /* Use unclamped values if we're getting events outside the window */
+        mouse->last_x = x;
+        mouse->last_y = y;
+    }
     return posted;
 }