sdl2_frt/src
Sam Lantinga a4d0571e4a Reverted change for bug 4152 - restrict the win10 mouse bug workaround to win10 v1709 only
Daniel Gibson

Sorry, but it seems like Microsoft didn't fix the issue properly.

I just updated my Win10 machine, it now is Version 1803, Build 17134.1

I tested with SDL2 2.0.7 (my workaround was released with 2.0.8) and still got
lots of events that directly undid the prior "real" events - just like before.
(See simple testcase in attachement)
By default it sets SDL_HINT_MOUSE_RELATIVE_MODE_WARP - which triggered (and on my machine still triggers) the buggy behavior. You can start it with -raw, then it'll not set that hint and the events will be as expected.
The easiest way to see the difference is looking at the window title, which shows accumulated X and Y values: If you just move your mouse to the right, in -raw mode the number just increases. In non-raw mode (using mouse warping) it stays around 0.

I also had a WinAPI-only testcase: https://gist.github.com/DanielGibson/b5b033c67b9137f0280af9fc53352c68
It just calls SetCursorPos(320,240); on each WM_MOUSEMOVE event, and it also
logs all those events to a mouseevents.log textfile.
This log indeed looks a bit different since the latest Win10 update: It seems like all those events with x=320 y=240 do arrive - but only after I stopped moving the mouse - even though the cursor seems to be moved back every frame (or so).
So moving the mouse to the right gives X coordinates like
330, 325, 333, 340, 330, ...
and then when stopping movement I get lots of events with X coordinate 320
2018-05-07 20:10:12 -07:00
..
atomic Updated copyright for 2018 2018-01-03 10:03:25 -08:00
audio Added SDL_THREAD_PRIORITY_TIME_CRITICAL 2018-04-23 22:07:56 -07:00
core Reimplemented Android cursor API support using reflection so it builds with older SDKs 2018-03-16 11:08:53 -07:00
cpuinfo Updated copyright for 2018 2018-01-03 10:03:25 -08:00
dynapi Added SDL_LinuxSetThreadPriority() to directly set the priority of a Linux thread (tid) 2018-04-23 19:18:52 -07:00
events Fixed building on platforms without __sighandler_t 2018-01-30 18:12:25 -08:00
file Updated copyright for 2018 2018-01-03 10:03:25 -08:00
filesystem revert the recent typecast assignment changes (see bug #4079) 2018-02-12 17:00:00 +03:00
haptic Updated copyright for 2018 2018-01-03 10:03:25 -08:00
joystick Added support for the GameSir G3w 2018-04-11 18:28:03 -07:00
libm Fixed misleading indentation 2018-01-30 16:53:24 -08:00
loadso Updated copyright for 2018 2018-01-03 10:03:25 -08:00
main Fixed bug 4073 - Unquoted Unicode argument parsing broken on Windows due to incorrect usage of SDL_isspace() 2018-02-10 12:43:11 -08:00
power Handle NULL return from SDL_DBus_GetContext() 2018-04-23 20:24:12 -07:00
render Fixed bug 4134 - Render targets lose scale quality after minimizing a fullscreen window 2018-05-07 19:52:25 -07:00
stdlib Fixed bug 3947 - replace strlcpy with memcpy in SDL_strdup() 2018-02-13 08:13:29 -08:00
test SDL_test_fuzzer.c: fix strict aliasing warnings by using a union. 2018-02-25 10:15:00 +03:00
thread Fixed build 2018-04-23 22:17:56 -07:00
timer Updated copyright for 2018 2018-01-03 10:03:25 -08:00
video Reverted change for bug 4152 - restrict the win10 mouse bug workaround to win10 v1709 only 2018-05-07 20:10:12 -07:00
SDL_assert_c.h Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_assert.c Progress fixing bug 4100 - errors and warnings after changeset 11917 2018-03-02 22:53:25 -08:00
SDL_dataqueue.c Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_dataqueue.h Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_error_c.h Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_error.c Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_hints.c Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_internal.h Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL_log.c Updated copyright for 2018 2018-01-03 10:03:25 -08:00
SDL.c Fixed bug 4034 - Don't include _DllMainCRTStartup() if SDL_STATIC_LIB is defined. 2018-02-21 09:40:47 -08:00