Commit Graph

2682 Commits

Author SHA1 Message Date
Gabriel Ford
49879ba0d6 free capacitive sensors on joystick close
Fixes: #15856
2026-06-19 20:05:28 -05:00
Vicki Pfau
ca67f19c8f Fix discrete Joy-Con mappings on Linux 2026-06-17 20:49:28 -07:00
Pierre de La Morinerie
51e214a012 SDL_joystick: add Austgame adapter to gamecube devices
"Austgame GameCube to USB converter" is an GameCube-to-USB adapter.
2026-06-14 08:43:08 -07:00
Nintorch
7bbd9d5c2c Add normalized name for Emscripten joysticks 2026-06-13 07:20:33 -07:00
Nintorch
4f031ea5da Fix Xbox One controller detection on the web 2026-06-12 09:02:58 -07:00
Nintorch
4a0d66116f Fix web crash for joystick without vibration 2026-06-12 08:53:07 -07:00
Nintorch
5e54decf53 Fix JoyCon pair type detection on the web 2026-06-12 07:44:34 -07:00
Nintorch
95dafa2bcd Don't modify the driver signature on the web 2026-06-12 07:43:07 -07:00
Sam Lantinga
18fc4d931a Added support for Xbox controllers via libusb on macOS
A number of third party Xbox controllers are not supported by macOS, but work with libusb and the SDL HIDAPI driver.
2026-06-10 13:07:47 -07:00
Alejandro Perez
14b0e9d922 Add Corsair as valid PS controller 2026-06-09 19:49:20 -07:00
Sam Lantinga
64998d2bc8 Fixed a hang reading the Xbox report descriptor on macOS 2026-06-09 11:12:52 -07:00
Sam Lantinga
c62cc657a2 Fixed the Xbox 360 Controller showing as a Steam Virtual Gamepad on macOS 2026-06-09 10:33:51 -07:00
QwertyChouskie
157c839139 SDL_hidapi_xbox360.c: Fix Y axis inversion on macOS (#15792)
Originally, macOS had opposite Y axis inversion as every other platform, likely to correct for an issue with the virtual gamepad reported by the old 360Controller driver.

Wired Xbox 360 controllers using native macOS drivers were first reported to be broken in https://github.com/libsdl-org/SDL/issues/11002.  The inversion was removed in 7da728a642, presumably breaking 360Controller usage, but fixing wired 360 controller using the new native support in macOS 15 and above.  However, this change was reverted without explanation in d7b1ba1bfc which added explicit support for the Steam Virtual Gamepad.  Presumably, Steam on macOS reports inverted Y axes to match what SDL expected on the platform.  However, this reversion broke the native macOS controller support.  The incorrect inversion also breaks using off-brand 360-class gamepads via the libusb backend of HIDRAW.
2026-06-09 10:12:45 -07:00
QwertyChouskie
0bd95b0430 Respect SDL_HINT_JOYSTICK_MFI 2026-06-09 07:33:22 -07:00
Sylvain
9986c89da0 Android: prevent removing joystick if SDL hasn't been initialized yet 2026-06-09 05:55:00 -07:00
Sanjay Govind
3f80c0b82a Add GIP vids and pids for stage tour instruments (#15788) 2026-06-08 22:08:10 -07:00
Sam Lantinga
47403eccd2 Fixed the Xbox 360 wireless adapter showing up as a controller 2026-06-08 21:31:20 -07:00
Sanjay Govind
205777210e Add PID for red octane games, as they support sony detection 2026-06-08 20:20:49 -07:00
Sam Lantinga
bef72ab488 Don't treat the IR receiver on the NVIDIA Shield TV as a joystick 2026-06-08 14:45:26 -07:00
Sam Lantinga
acc06bce35 android: fixed crash adding joysticks before joysticks are initialized
Fixes https://github.com/libsdl-org/SDL/issues/15777
2026-06-08 14:35:42 -07:00
Nintorch
2fd15d9e0d Add mappings for NES Switch controllers on Linux 2026-06-05 08:56:15 -07:00
Zizin13
7341f04a12 Fix DirectInput POV handling for devices with extra hats 2026-06-04 12:23:33 -07:00
Thad House
0c8feecce6 Enable extra player LED sets for PS5 Controllers 2026-06-04 08:05:29 -07:00
Sylvain Becker
fc3a96e47a Android: remove pollInputDevice() in favor of InputDeviceListener (#15659) 2026-06-03 20:38:04 -07:00
Sam Lantinga
f9d49358d2 Create a global event lock for hardware that generates events
This prevents ABBA deadlocks caused by taking a hardware resource lock then delivering events at the same time another thread is taking a hardware resource lock from an event watch callback.

Fixes https://github.com/libsdl-org/SDL/issues/15709
2026-06-02 16:51:58 -07:00
Sam Lantinga
cadd67007c Removed k_eControllerType_AndroidController and k_eControllerType_AppleController 2026-06-01 17:55:54 -07:00
Nintorch
96c03dc66e Fix web joystick vibration (again) 2026-05-31 14:13:07 -07:00
Nintorch
e0eb40f65f Fix web joystick vibration on Safari 2026-05-31 08:04:45 -07:00
Cameron Gutman
189877b1d3 joystick: Fix conflicting rumble and LED on Sony PS4 gamepads 2026-05-30 17:20:52 -07:00
Vicki Pfau
687a59f277 joystick: Fix underflow with 0 delta timestamp
Some sensors will occasionally report two identical timestamps in a row.
This leads to the timestamp wrapping calculation to underflow, subtracting
0x80000000 from the timestamp whenever it happens. By adjusting the wrap
test, we can just directly add zero to the timestamp, fixing the underflow.
2026-05-29 21:47:50 -07:00
replicacoil
c43ab978fd Added rumble to Gamecube Adapter PC_Mode (#15431) 2026-05-29 17:28:47 -07:00
Sam Lantinga
8a701808a6 Fixed Steam Controller not detected on macOS under Steam 2026-05-29 12:07:16 -07:00
Sam Lantinga
ec0066aa0b Fixed detecting the Steam virtual gamepad when HIDAPI is disabled 2026-05-29 10:55:57 -07:00
Sam Lantinga
ed6e03436e Added HIDAPI support for the PDP Afterglow Wave Wireless Controller for Switch 2026-05-29 09:56:15 -07:00
Sam Lantinga
634dff3725 Added DEBUG_STEAM_PROTOCOL for the new Steam Controller 2026-05-28 19:51:34 -07:00
Sam Lantinga
f6ffa69890 Add support for new Steam Controller input report on mobile devices 2026-05-28 11:39:58 -07:00
Sam Lantinga
bb3c61390a Fix mistyped output report message for Steam Controller
This caused hiccups in BlueZ BT driver for Linux
2026-05-27 18:20:17 -07:00
Sam Lantinga
f7a8801227 Add support for new Steam Controller input report 2026-05-27 18:19:43 -07:00
Sam Lantinga
a84dafd5b9 Don't use the HIDAPI driver with Backbone One PlayStation Edition Gen 2
This product doesn't appear to use the DualSense protocol. On Android this shows up as two interfaces that don't send reports that we can parse.
2026-05-26 14:15:43 -07:00
0xDEADCADE
3626598675 Remove CenterPad and RightStick from Steam Controller (2015) internal state struct
These values are never used for the Steam Controller (2015), as it does not physically have these inputs.
2026-05-23 07:51:03 -07:00
Bitwolf
2f13731d23 Update Famicom controllers to a more user friendly name. 2026-05-22 07:15:17 -07:00
kholo
2bb6df90ad Ignore Huion Tablet Kamvas Pro 22 2026-05-22 07:05:57 -07:00
Sam Lantinga
fe1918a47f Fixed build 2026-05-21 10:05:20 -07:00
Sam Lantinga
13f91a67fc Fixed Ipega controllers being ignored in keyboard mode (thanks @AntTheAlchemist!) 2026-05-21 09:56:42 -07:00
Ozkan Sezer
f19dca3ca0 SDL_rawinputjoystick.c: fixed a type redefinition error 2026-05-19 18:55:20 +03:00
Ozkan Sezer
42c4a0e30f SDL_windows_gaming_input.c: work-around to build against old SDKs.
Fixes https://github.com/libsdl-org/SDL/issues/15646
2026-05-19 17:25:56 +03:00
Kuratius
6ed1de089c Fix touchpad finger detection on Steam Deck 2026-05-19 06:52:17 -07:00
Sam Lantinga
e759cc850e Added an internal type for the Nintendo Switch 2 Pro controller 2026-05-18 09:23:38 -07:00
Kuratius
a20530cf15 Fix Steam Controller 2 touchpad finger detection (#15644) 2026-05-18 07:03:56 -07:00
Sam Lantinga
8b49bff353 Fixed Nintendo Switch Pro controller sensors on Android 2026-05-17 21:44:24 -07:00