sdl2_frt/src/joystick/windows
Sam Lantinga b0c5ceef7d Fixed bug 3533 - Enumeration joystick devices omitted during directinput enumeration
white.magic

The logic which decides if a device enumerated via the direct input system in the function EnumJoysticksCallback in SDL_dinputjoystick.c is processed is discarding valid joystick devices due to the assumption that devices of the type DI8DEVTYPE_SUPPLEMENTAL are not valid devices.

This change was added with 2.0.4 with this commit http://hg.libsdl.org/SDL/rev/1b9d40126645 that is linked to this bug report https://bugzilla.libsdl.org/show_bug.cgi?id=2460 which indicates that in that case devices of the type DI8DEVTYPE_SUPPLEMENTAL were not desirable as they caused a singular device to emit multiple "device added" events.

Since then there appear to have been a few fixes to handle devices that fall into various other classes in the following two commits:
http://hg.libsdl.org/SDL/rev/10ffb4787d7a and http://hg.libsdl.org/SDL/rev/6a2bbac05728

Two devices I have reports of failing to be listed when the DI8DEVTYPE_SUPPLEMENTAL type is excluded are ECS Gametric Throttle and Thrustmaster MFD Cougar.

Sam Lantinga

I verified that the OUYA controller shows up as a single device with this change, so I've reverted the change to ignore supplemental devices, leaving framework in place to easily add devices that we want to ignore.
2017-01-18 12:18:50 -08:00
..
SDL_dinputjoystick_c.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_dinputjoystick.c Fixed bug 3533 - Enumeration joystick devices omitted during directinput enumeration 2017-01-18 12:18:50 -08:00
SDL_mmjoystick.c Fixed building with mingw32 2017-01-18 11:57:27 -08:00
SDL_windowsjoystick_c.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_windowsjoystick.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_xinputjoystick_c.h Updated copyright for 2017 2017-01-01 18:33:28 -08:00
SDL_xinputjoystick.c Updated copyright for 2017 2017-01-01 18:33:28 -08:00