Sam Lantinga
daf76f1ff6
Restored the original OpenBSD Xbox 360 controller mapping
...
(cherry picked from commit 90242312fe )
2025-11-14 07:20:17 -08:00
Sam Lantinga
cdff4b2bb5
Completed removing predefined Xbox 360 mappings for Linux
...
Also removed them for OpenBSD, since it's not clear which ones, if any, are needed.
(cherry picked from commit b305534edc )
2025-11-14 07:20:17 -08:00
Dave Wickham
d3a1a97db8
Re-add deleted gamepad mappings to the OpenBSD-specific section
...
(cherry picked from commit f6c3af9c8c )
2025-11-14 07:20:16 -08:00
Dave Wickham
962464629d
Remove special-case Xbox 360 wireless controller mappings
...
Fixes https://github.com/libsdl-org/SDL/issues/14324
(cherry picked from commit 0c4c4cfd16 )
2025-11-14 07:20:16 -08:00
Sam Lantinga
3291c2e560
Check for wine_get_version() to detect Wine/Proton
...
If this application is being run under Wine but Steam doesn't know that, Steam won't set STEAM_COMPAT_PROTON. So we'll use wine_get_version() to detect that we're running under Wine instead.
(cherry picked from commit e2e8f86076 )
2025-11-12 22:30:48 -08:00
Sam Lantinga
b797a84b5d
Don't check SteamVirtualGamepadInfo when running as Wine
...
Wine will ignore the Steam Virtual Gamepad if it looks like it has the original (blocked) controller VID/PID.
Fixes https://github.com/libsdl-org/SDL/issues/14410
(cherry picked from commit 493bc621e4 )
2025-11-12 22:30:48 -08:00
Sam Lantinga
d73922e407
Validate SPI read command in the Nintendo Switch HIDAPI driver
...
(cherry picked from commit c94da8977d )
2025-11-05 17:35:02 -08:00
Sam Lantinga
c8d23a5f01
Fixed unaligned access in the Nintendo Switch HIDAPI driver
...
(cherry picked from commit 9a1745f2c8 )
2025-11-05 17:08:50 -08:00
Sam Lantinga
1bfa90cb1f
Fixed the paddle mapping for Steam Controllers
...
Fixes https://github.com/libsdl-org/SDL/issues/14380
(cherry picked from commit 3336aa95f1 )
2025-11-02 10:07:42 -08:00
Sam Lantinga
11fc77b704
Fixed the right touchpad calculation for the BLE Steam Controller
...
Fixes https://github.com/libsdl-org/SDL/issues/14368
(cherry picked from commit eb87a36940 )
2025-11-02 08:31:59 -08:00
Sam Lantinga
70b12c1b1b
Check to see if joysticks are actually initialized in SDL_UpdateJoysticks()
...
Fixes https://github.com/libsdl-org/SDL/issues/14362
(cherry picked from commit c21b7f8cb8 )
2025-10-30 08:54:53 -07:00
Sam Lantinga
86384afbcf
Fixed the right shoulder button on the 8BitDo Pro 3
...
(cherry picked from commit cecf4b0d4e )
2025-10-28 14:55:36 -07:00
Sam Lantinga
328f833d51
Added a Linux mapping for the 8BitDo Pro 3
...
(cherry picked from commit 78f9cb44c3 )
2025-10-28 14:14:00 -07:00
Sam Lantinga
b1959ecf23
Be more selective when blacklisting controller touchpads
...
On Android, the PS4 controller is called "Wireless Controller Touchpad"
Fixes https://github.com/libsdl-org/SDL/issues/14294
(cherry picked from commit 999f782ad3 )
2025-10-22 10:45:34 -07:00
Oleksandr Manenko
3d9f4c3328
Fix thread safety attributes for TryLock functions
...
Changed SDL_TRY_ACQUIRE and SDL_TRY_ACQUIRE_SHARED success value
from 0 to true for functions that now return bool instead of int.
This fixes false positives/negatives in Clang's thread safety analysis.
(cherry picked from commit 901173aee6 )
2025-10-14 12:47:58 -07:00
Sam Lantinga
4cd6df1997
Added the 8BitDo Ultimate 2C Wireless Controller to the Xbox controller list
...
Fixes https://github.com/libsdl-org/SDL/issues/14127
(cherry picked from commit 98944ecd0c )
2025-10-13 18:48:05 -07:00
Sam Lantinga
8ccbfdf368
Added support for the ZENAIM ARCADE CONTROLLER
...
(cherry picked from commit 831ec4dc6c )
2025-10-13 08:56:34 -07:00
Sam Lantinga
25b9a686b0
Added the Wooting 60HE keyboard to the controller blacklist
...
(cherry picked from commit d4b684311e )
2025-10-08 16:06:41 -07:00
Sam Lantinga
54c2f2c3f7
Only call WIN_RoUninitialize() if WIN_RoInitialize() succeeded
...
Fixes https://github.com/libsdl-org/SDL/issues/14178
(cherry picked from commit 7914bdb7ea )
2025-10-08 13:16:16 -07:00
Sam Lantinga
73ca5f53e7
Don't treat the Moonlander MK1 Keyboard as a controller
...
Fixes http://github.com/mgba-emu/mgba/issues/3606
(cherry picked from commit 69791ccad0 )
2025-10-06 16:52:36 -07:00
Nintorch
54fb312a2c
Add blacklist words for gamepad names
...
(cherry picked from commit 6e6dc500b5 )
2025-10-03 09:45:31 -07:00
Sora
93fd4a1c80
fix: use productCategory instead of vendorName for joy name for apple driver
...
(cherry picked from commit 964bedfdd9 )
2025-09-15 11:52:21 -07:00
Nintorch
44290c204e
Fix HP Deluxe Webcam KQ246AA detected as joystick
...
(cherry picked from commit 556ee00fe3 )
2025-09-14 15:40:40 -07:00
Sam Lantinga
d1ae1163dd
Wait briefly after enabling effects on DualSense controller
...
The rumble motors apparently take a short time to power up after enabling enhanced mode.
Fixes https://github.com/libsdl-org/SDL/issues/13909
(cherry picked from commit 1aba421bd3 )
2025-09-14 10:00:40 -07:00
Sam Lantinga
b2cf5729b4
Disable Windows.Gaming.Input by default
...
The functionality is already covered by XInput and DirectInput, and Microsoft is recommending GameInput going forward.
Fixes https://github.com/libsdl-org/SDL/issues/13000
(cherry picked from commit 78a29d1670 )
2025-09-14 08:52:43 -07:00
Sam Lantinga
414ae344af
Fixed rumble strength on DualSense Edge and Bluetooth connected controllers
...
Fixes https://github.com/libsdl-org/SDL/issues/13771
(cherry picked from commit 25d9096d41 )
2025-09-06 11:53:55 -07:00
Sam Lantinga
a6fd74fa3b
Fix crash when enumerating Steam Controllers
...
Closes https://github.com/libsdl-org/SDL/pull/13746
2025-09-02 08:42:16 -07:00
Nintorch
16c0329a2a
Add Emscripten joystick rumble support
...
Adds support for Emscripten (Web) joystick rumble support via EM_ASM_INT macros and HTML5's Gamepad API.
(cherry picked from commit 1fbed16cb0 )
2025-08-25 12:59:15 -07:00
Nintorch
2743716132
Allow Android to ignore unnecessary joysticks
...
Previously, SDL_ShouldIgnoreJoystick wasn't being called for Android, and fingerprint sensors were recognized as joysticks.
(cherry picked from commit 1af7dfb0a7 )
2025-08-25 11:23:34 -07:00
Petar Popovic
b5bc6d2cc4
SDL_SendJoystickVirtualSensorDataInner(): Fix max_sensor_events increment
...
(cherry picked from commit d9c20cfd0a )
2025-08-08 12:52:03 -07:00
Sam Lantinga
707717e94b
Reverted: Added Steam Virtual Gamepad support to the GameInput driver
...
This version of SDL doesn't support newer GameInput versions required for this feature.
2025-07-24 14:00:20 -07:00
Sam Lantinga
a140bba55a
Fixed building with GameInput v1.0
...
(cherry picked from commit e5d57d8ad6 )
2025-07-24 10:52:28 -07:00
Sam Lantinga
f4ddacacd0
Fixed building with GameInput v1.0
...
(cherry picked from commit 0ee0fe1572 )
2025-07-24 10:43:05 -07:00
Sam Lantinga
ebba656bdb
Added Steam Virtual Gamepad support to the GameInput driver
...
(cherry picked from commit 66dad9c21f )
2025-07-24 10:38:02 -07:00
Sam Lantinga
b78c61d67a
Fixed double SDL_EVENT_GAMEPAD_ADDED for controllers with automatic gamepad mappings
...
(cherry picked from commit 6babade758 )
2025-07-24 10:38:02 -07:00
Sam Lantinga
bd40d0ded1
Removed the Mayflash GameCube adapter from the PS3 controller list
...
(cherry picked from commit 277f91c317 )
2025-07-14 11:30:46 -07:00
Andon M. Coleman
68bfcb6c54
Allow 1 kHz sample rate for DualSense Edge over USB
...
DualSense Edge natively reports at 1 kHz for all connection types, but gyro sample rate was limited to 250 Hz for USB.
(cherry picked from commit a07cf3ecdc )
2025-07-14 10:02:46 -07:00
Kyle Sylvestre
0e65e04ce1
remove spoofed SDL_HelperWindow when SDL_VIDEO is off
...
(cherry picked from commit 0f061ff154 )
2025-07-12 07:48:56 -07:00
Rémi Verschelde
3e0ce51067
joystick: Fix MSVC errors C2099 with /fp:strict
...
(cherry picked from commit db3a35e9bc )
2025-06-24 07:32:26 -07:00
mitchellcairns
caecff650d
Resolve bug for calibration Nintendo Switch Pro Controller ( #13260 )
...
Resolves a bug which prevents the stored calibration data from loading, only allowing loading of factory-installed calibration data
(cherry picked from commit 796961acec )
2025-06-22 21:00:01 -07:00
Mitch Cairns
f6300be4b2
Fixed Nintendo Switch thumbstick calibration
...
(cherry picked from commit 3a6f9e01f8 )
2025-06-22 15:27:30 -07:00
Sam Lantinga
bde5687a3c
Fixed Nintendo Switch Pro thumbstick calibration
...
Fixes https://github.com/libsdl-org/SDL/issues/13246
(cherry picked from commit 038a3806eb )
2025-06-21 19:57:04 -07:00
ceski
a96dc76831
Read Switch controller gyro/accel sensitivity coeffs (SDL3)
...
These vary by controller, so using the stored values should improve the accuracy of the sensor data.
(cherry picked from commit 558a89fdb6 )
2025-06-13 12:18:43 -07:00
Sam Lantinga
8d578d590f
Fixed replacing existing specific gamepad mappings
...
If the first mapping we see doesn't have a CRC, continue looking for another exact CRC match.
Fixes testautomation --filter TestVirtualJoystick
(cherry picked from commit 5826966873 )
2025-06-06 09:55:04 -07:00
Sam Lantinga
6b4a211374
Added support for the ZEROPLUS P4 Wired Gamepad
...
(cherry picked from commit f90a21483c )
2025-06-06 09:27:17 -07:00
Sam Lantinga
55b023c961
Remove the CRC from automatically generated gamepad mappings
...
Fixes https://github.com/libsdl-org/SDL/issues/13127
(cherry picked from commit 638acdc02a )
2025-06-06 09:25:19 -07:00
Sam Lantinga
06da7490fc
Added support for the NACON Revolution X Unlimited controller on macOS
...
This adds support for the controller in Bluetooth mode.
Fixes https://github.com/libsdl-org/SDL/issues/13143
(cherry picked from commit 6622f4e1ea )
2025-06-03 15:08:11 -07:00
Sam Lantinga
af83c442d3
Fixed input from the MayFlash GameCube adapter with version 7 firmware
...
(cherry picked from commit 7457857304 )
2025-06-03 11:14:09 -07:00
Sam Lantinga
57de46ae7e
Mark gamepads as invalid if they can't be opened
...
Fixes https://github.com/libsdl-org/SDL/issues/13129
(cherry picked from commit 4b0f48c4cf )
2025-06-02 09:25:10 -07:00
Sam Lantinga
91180f8cb4
Disable SDL_HINT_JOYSTICK_RAWINPUT by default
...
Windows can get in a state when it stops reporting raw input events for game controllers until reboot.
The downside of this change is that we lose support for trigger rumble and are limited to 4 controllers again, but if that's important for your application you can use SDL_SetHint(SDL_HINT_JOYSTICK_RAWINPUT, true) to enable this functionality.
Fixes https://github.com/libsdl-org/SDL/issues/13047
(cherry picked from commit aa870d511e )
2025-05-27 09:51:58 -07:00