Commit Graph

2650 Commits

Author SHA1 Message Date
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
Sam Lantinga
14c31ee12a Fixed reading the controller accelerometer on Apple platforms
DualShock and DualSense controllers no longer have hasGravityAndUserAcceleration set, but we can still get the combined user + gravity acceleration values from those controllers, which is what we want.
2026-05-17 18:19:42 -07:00
Cameron Gutman
6d3404e4bb gamepad: Add SDL_GAMEPAD_TYPE_STEAM for Steam Controllers 2026-05-17 11:19:16 -07:00
ceski
5b98c1cc2f Add capacitive sense gamepad events (#15627) 2026-05-17 08:26:29 -07:00
Sam Lantinga
34c3fdd350 Added extended internal controller types 2026-05-17 06:52:47 -07:00
Tap
1f7a42a7b9 Correct steam triton haptic commands
The listed report IDs are incorrect - there is no skipped ID
2026-05-17 06:23:47 -07:00
Christian Semmler
db7ac820f9 emscripten: Fix crash on Safari when probing gamepad rumble support
Safari's older Gamepad API exposes `vibrationActuator` with `playEffect`
and `reset` but no `effects` enumeration array. The probe added in
651136ac7 dereferences `vibrationActuator['effects']['includes']`
unconditionally, throwing `TypeError: undefined is not an object` on
every Safari client that opens a connected gamepad. Add the missing
`['effects']` null check so the probe returns false on Safari instead
of aborting.
2026-05-16 15:47:41 -07:00
ceski
2ebf23014f Add Steam Deck capacitive touch sticks, trackpad clicks, and mapping (#15612) 2026-05-16 09:04:20 -07:00
Ozkan Sezer
880ddb9ca3 SDL_dinputhaptic.c, SDL_dinputjoystick.c: replace %lu usage with new cygwin-friendly macros. 2026-05-16 09:24:33 +03:00
ceski
c00d7b4bf5 Add Steam Controller mapping (#15601)
Also fixed Hori QAM button mapping
2026-05-15 19:18:38 -07:00
Rachel Blackman
d83e7bf79e Add Gamesir Supernova in Xinput mode to controller list 2026-05-15 13:25:41 -07:00
Sam Lantinga
aeacf42e06 gameinput: only add the share button for known Xbox Series X controllers
The HID descriptor for the latest firmware always includes the share button, and GameInput will report it as always available, so double check against our list of classic Xbox One controllers and don't include the button on controllers that don't have it.
2026-05-15 11:01:31 -07:00
Sam Lantinga
a95ce7e734 Detect the GameSir Super Nova in Xbox 360 mode 2026-05-15 10:13:15 -07:00
stahta01
6586bebfec Fix Cygwin building and add CI (#15566)
Co-authored-by: TrueCat17 <truecat17@gmail.com>
Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
Co-authored-by: Ozkan Sezer <sezeroz@gmail.com>
2026-05-15 08:48:24 -07:00
Rachel Blackman
eb340388fc Fix HIDAPI support for Flydigi Vader 5 Pro (#15594) 2026-05-14 17:32:25 -07:00
ceski
f3faf67c64 Add Steam Controller touchpads, capacitive touch for sticks, and grip sense (#15528) 2026-05-14 16:26:26 -07:00
Ozkan Sezer
4d95a63fe3 fix build after commit 2c4e6ed358:
move SDL_UsingGameInputForXInputControllers() to core/windows/SDL_gameinput.cpp
because joystick/gdk/SDL_gameinputjoystick.cpp isn't always added to build.
2026-05-14 23:11:22 +03:00
Sam Lantinga
2c4e6ed358 Enable GameInput v3 by default if it's available
GameInput is now the most functional Windows API for handling XInput controllers.
2026-05-14 10:18:58 -07:00
Anonymous Maarten
d57c3b685c gameinputjoystick: %02hhX emits a -Wformat warning 2026-05-14 18:42:46 +02:00
Sam Lantinga
0defb4ddfc Added controller sensor support for GameInput v3
Verified working with the DualSense controller
2026-05-13 23:41:29 -07:00
Vlad-Florin Ilie
b333c04ccc Fix Steam Controller 2026 (triton) rumble (#15558) 2026-05-13 23:40:55 -07:00
Sam Lantinga
4884dbbe56 Added SDL_SendGamepadEffect() support for the new Steam Controller 2026-05-13 20:14:50 -07:00
Sam Lantinga
f30ec9940a Removed Wooting 60HE (ARM) from the controller blacklist
Fixes https://github.com/libsdl-org/SDL/issues/15555
2026-05-11 22:10:20 -07:00
Sam Lantinga
bb4eedd67d Fixed a crash if we get a HID device with no path
This can happen on Linux if udev_device_get_devnode() fails.
2026-05-11 16:47:26 -07:00
Rachel Blackman
fd3cfb97c1 Ensure Android gamepad mappings don't lose the first button. 2026-05-11 12:59:30 -07:00
Nintorch
287e2573cd Ignore Keychron K10 Pro and Huion Tablet_GS1331 2026-05-11 07:15:14 -07:00
Sam Lantinga
ab19d09939 Fixed build 2026-05-06 19:42:39 -07:00
Sam Lantinga
386f198622 Don't report 10% battery for Xbox controllers using XInput 2026-05-06 18:12:01 -07:00
Nintorch
3c1636a958 Fix JoyCon mappings on Android 2026-05-04 11:49:25 -07:00
Nintorch
c699512adc Add support for joystick motion sensors on Android 2026-05-03 15:11:31 -07:00
Nintorch
c805a4d632 Fix Xbox controller names in MFI joystick backend (#15499)
controller.vendorName returns a generic name for Xbox controllers ("Controller"), so we have to give them proper names.
2026-05-03 09:26:15 -07:00
Sam Lantinga
4a52a5ee04 Fixed crash on Windows when a controller is connected 2026-05-01 16:57:07 -07:00
Sam Lantinga
e9a6d7eda0 Fixed copyright on SDL_hidapi_steam_triton.c
Fixes https://github.com/libsdl-org/SDL/issues/15486
Closes https://github.com/libsdl-org/SDL/pull/15487
2026-04-30 19:55:56 -07:00