Don't reset the mouse, that's actually bad behavior most of the time for windowed applications.
--- a/src/events/SDL_mouse.c Sun Jan 27 21:43:20 2013 -0300
+++ b/src/events/SDL_mouse.c Sun Jan 27 20:37:14 2013 -0800
@@ -96,10 +96,17 @@
return;
}
+ /* Actually, this ends up being a bad idea, because most operating
+ systems have an implicit grab when you press the mouse button down
+ so you can drag things out of the window and then get the mouse up
+ when it happens. So, #if 0...
+ */
+#if 0
if (mouse->focus && !window) {
/* We won't get anymore mouse messages, so reset mouse state */
SDL_ResetMouse();
}
+#endif
/* See if the current window has lost focus */
if (mouse->focus) {