sdl_joystick: disable the use of the hidapi drivers due to many problems caused by them.

The main problem is the loss of compatibility with some controllers, but there are also
unwanted changes to the behaviour of PS4 controllers (hardcoded lightbar color).
This commit is contained in:
Vitor Kiguchi 2020-03-04 21:08:26 -03:00
parent aa43399011
commit 8e3960b409

View file

@ -472,6 +472,14 @@ SDLState::SDLState() {
if (SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1") == SDL_FALSE) { if (SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1") == SDL_FALSE) {
LOG_ERROR(Input, "Failed to set Hint for background events", SDL_GetError()); LOG_ERROR(Input, "Failed to set Hint for background events", SDL_GetError());
} }
// these hints are only defined on sdl2.0.9 or higher
#if SDL_VERSION_ATLEAST(2, 0, 9)
// This can be set back to 1 when the compatibility problems with the controllers are
// solved. There are also hints to toggle the individual drivers.
SDL_SetHint(SDL_HINT_JOYSTICK_HIDAPI, "0");
// This hint should probably stay as "0" as long as the hidapi PS4 led issue isn't fixed
SDL_SetHint(SDL_HINT_JOYSTICK_HIDAPI_PS4, "0");
#endif
SDL_AddEventWatch(&SDLEventWatcher, this); SDL_AddEventWatch(&SDLEventWatcher, this);