aboutsummaryrefslogtreecommitdiff
path: root/src/input_common/sdl/sdl_impl.cpp
diff options
context:
space:
mode:
authorVitor Kiguchi <vitor-kiguchi@hotmail.com>2020-03-04 21:08:26 -0300
committerFearlessTobi <thm.frey@gmail.com>2020-08-30 05:06:49 +0200
commit52df885a4200b7e1776e49491c7dbbef95b8535a (patch)
tree502a2f5025aff2d056f8a2d254572f1081702ad5 /src/input_common/sdl/sdl_impl.cpp
parent437bc3c1993684cf618da99eccf8480bf99e509b (diff)
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).
Diffstat (limited to 'src/input_common/sdl/sdl_impl.cpp')
-rw-r--r--src/input_common/sdl/sdl_impl.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/input_common/sdl/sdl_impl.cpp b/src/input_common/sdl/sdl_impl.cpp
index c8d9eb2bca..e865a68316 100644
--- a/src/input_common/sdl/sdl_impl.cpp
+++ b/src/input_common/sdl/sdl_impl.cpp
@@ -508,6 +508,13 @@ SDLState::SDLState() {
if (SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1") == SDL_FALSE) {
LOG_ERROR(Input, "Failed to set hint for background events with: {}", SDL_GetError());
}
+// these hints are only defined on sdl2.0.9 or higher
+#if SDL_VERSION_ATLEAST(2, 0, 9)
+#if !SDL_VERSION_ATLEAST(2, 0, 12)
+ // There are also hints to toggle the individual drivers if needed.
+ SDL_SetHint(SDL_HINT_JOYSTICK_HIDAPI, "0");
+#endif
+#endif
SDL_AddEventWatch(&SDLEventWatcher, this);