SDL/src
Sam Lantinga 4dea340ca7 Fixed bug 4477 - Support more than 4 XInput-capable devices on Windows
Jimb Esser

Add new RawInput controller API, and improved correlation with XInput/WGI

Reorder joystick init so drivers can ask the others if they handle a device reliably
Do not poll disconnected XInput devices (major perf issue)
Fix various cases where incorrect correlation could happen
Simple mechanism for propagating unhandled Guide button presses even before guaranteed correlation
Correlate by axis motion as well as button presses
Fix failing to zero other trigger
Fix SDL_HINT_JOYSTICK_HIDAPI not working if set before calling SDL_Init()
Add missing device to device names
Disable RawInput if we have a mismatch of XInput-capable but not RawInput-capable devices

Updated to SDL 2.0.13 code with the following notes:
New HID driver: xbox360w - no idea what that is, hopefully urelated
SDL_hidapijoystick.c had been refactored to couple data handling logic with device opening logic and device lists caused some problems, yields slightly uglier integration than previously when the 360 HID device driver was just handling the data.
SDL_hidapijoystick.c now often pulls the device off of the joystick_hwdata structure for some rumble logic, but it appears that code path is never reached, so probably not a problem.
Looks like joystick_hwdata was refactored to not include a mutex in other drivers, maintainers may want to do the same refactor here if that's useful for some reason.
Something changed in how devices get names, so getting generic names.
Had to fix a (new?) bug where removing an XInput controller caused existing controllers (that moved to a new XInput index) to get identified as 0x045e/0x02fd ("it's probably Bluetooth" in code), rendering the existing HIDAPI_IsDevicePresent and new RAWINPUT_IsDevicePresent unreliable.
2020-03-16 12:23:38 -07:00
..
atomic Add basic support for compiling on RISC OS 2020-02-13 20:50:47 +00:00
audio winrt: Wait for EnumerationCompleted before leaving WASAPI_EnumerateEndpoints 2020-03-03 12:31:41 -05:00
core Resolved conflict and added Android_JNI_RequestPermission() 2020-02-13 10:19:05 -08:00
cpuinfo Improved CPU detection on ARM platforms 2020-02-04 16:46:22 +00:00
dynapi virtual joysticks: removed ball support (Bug 5028) 2020-03-15 13:25:49 -04:00
events Fixed warnings building with mingw64 2020-03-08 21:24:06 -07:00
file Fixed compile warning 2020-02-10 13:59:05 -08:00
filesystem Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
haptic Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
hidapi Fixed slow enumeration when Apple Cinema HD display 30" is plugged in 2020-03-13 19:19:29 -07:00
joystick Fixed bug 4477 - Support more than 4 XInput-capable devices on Windows 2020-03-16 12:23:38 -07:00
libm Fixed compiler warning 2020-01-29 20:09:16 -08:00
loadso Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
main Backed out changeset 51622f74dc85 2020-03-10 18:35:31 -07:00
power Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
render Fixed bug 4991 - Pixel shader problem when recreating a texture for direct3d renderer 2020-03-08 19:23:21 -07:00
sensor Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
stdlib Fixed bug 5022 - SDL_iconv_string can get stuck in an infinite loop when encountering invalid characters 2020-03-10 16:29:28 -07:00
test test: Reimplemented SDLTest_CommonUsage() to restore binary compatibility. 2020-02-12 13:09:38 -05:00
thread Fixed bug 4992 - UWP/WinRT does not set thread priority when using SDL_SetThreadPriority 2020-03-01 12:50:42 -08:00
timer Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
video Fixed bug 4477 - Support more than 4 XInput-capable devices on Windows 2020-03-16 12:23:38 -07:00
SDL_assert_c.h Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_assert.c Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_dataqueue.c Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_dataqueue.h Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_error_c.h Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_error.c Added SDL_GetErrorMsg() to get the error message in a thread-safe way 2020-03-13 21:28:09 -07:00
SDL_hints_c.h Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_hints.c Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL_internal.h SDL_LEAN_AND_MEAN defaults off 2020-01-23 01:03:23 -08:00
SDL_log.c Updated copyright date for 2020 2020-01-16 20:49:25 -08:00
SDL.c Updated copyright date for 2020 2020-01-16 20:49:25 -08:00