Ozkan Sezer
7935cfacc5
SDL_mfijoystick.m: use __typeof instead of typeof.
...
Fixes https://github.com/libsdl-org/SDL/issues/5319
2022-02-08 18:55:10 +03:00
Joshua Ashton
86b7a0642f
Add additional VID/PIDs for Anne Pro II
...
This thing changes its VID/PID on firmware revisions...
2022-02-04 08:45:19 -08:00
Sam Lantinga
dd69c28d6f
Added a mapping for the Xbox Series X controller, firmware version 5.11.3118.0, connected to Linux via Bluetooth
2022-02-03 18:01:34 -08:00
Temdog007
b59e75c259
Handle menu button press from controller
2022-02-02 21:21:44 -08:00
Ryan C. Gordon
43f0271b4e
Revert "fix compiler warnings in SDL_windows_gaming_input.c"
...
This reverts commit ca36cdb185f2f26241598068927821896f36b904.
The older Windows SDK's headers are wrong, and this change would crash if
you hotplug a device.
2022-01-28 20:40:19 -05:00
pionere
60deadba59
re-use return value of SDL_SetError/WIN_SetErrorFromHRESULT/SDL_OutOfMemory
2022-01-28 20:40:19 -05:00
pionere
d7110b4490
fix compiler warnings in SDL_windows_gaming_input.c
2022-01-28 20:40:19 -05:00
Vitaliy Zhmurikov
5b74459255
Update SDL_joystick.c
...
Add Logitech Momo Racing Wheel VID & PID to SDL_IsJoystickProductWheel function
2022-01-27 12:30:41 -08:00
Ivan Epifanov
d7e0c54dde
PSVita: send initial SDL_JOYDEVICEADDED events
2022-01-27 08:47:53 -08:00
Sam Lantinga
67cb548bef
Fixed build error with C90 compilers
2022-01-20 19:31:54 -08:00
Carl Glave
a23b3c767f
Add support for correlating trigger input
2022-01-20 17:43:35 -08:00
Sam Lantinga
b06866ef97
Entirely remove Xbox axis filtering, we don't want this at all.
2022-01-16 09:44:28 -08:00
Sam Lantinga
09aed1020b
Don't send output reports to the Victrix Pro FS v2
...
It'll hang on reboot if it gets output reports, and it doesn't have functionality that requires them, so skip it.
2022-01-16 09:23:58 -08:00
Sam Lantinga
85961b61a1
Disable Xbox axis deadzone handling by default
...
Fixes https://github.com/libsdl-org/SDL/issues/5227
2022-01-16 09:01:56 -08:00
Sam Lantinga
1a50334c46
Fixed Xbox One trigger axis zero point
2022-01-14 15:04:26 -08:00
Ozkan Sezer
b9d98331c5
os2joystick: fix uninitialized use of local var 'maxdevs'
2022-01-09 20:33:32 +03:00
Ozkan Sezer
17da60068d
os2joystick: fix -Wsequence-point issues.
2022-01-09 20:33:32 +03:00
Sam Lantinga
16f5b9e3c3
Filter jitter on Xbox One controllers when using raw input reports
2022-01-05 11:07:52 -08:00
Cameron Gutman
419ae29d90
joystick: Move WGI driver initialization after Windows driver
...
WGI calls SDL_DINPUT_JoystickPresent() so we need to be sure DInput remains
initialized for the lifetime of the WGI driver to avoid a crash or duplicated
joysticks between DInput and WGI.
2022-01-04 15:53:39 -08:00
Cameron Gutman
d73bd0d2f6
dinput: Don't crash in SDL_DINPUT_JoystickPresent if DInput init failed
...
The WGI driver will call this regardless of whether our init succeeded.
2022-01-04 15:53:39 -08:00
Sam Lantinga
120c76c84b
Updated copyright for 2022
2022-01-03 09:40:21 -08:00
Ozkan Sezer
82fc67ae4d
SDL_joystick.c: cast the arguments to nibble() to unsigned char.
2021-12-18 14:01:02 +03:00
Ozkan Sezer
47d3e96b43
SDL_joystick.c: (unsigned char) cast to SDL_tolower() parameters.
2021-12-18 14:01:02 +03:00
Ozkan Sezer
61107494a1
SDL_gamecontroller.c: (unsigned char) cast to SDL_isdigit() parameters.
2021-12-17 07:40:02 +03:00
Sergio Padrino
6f6382f8d0
Fix SDL_GameController API for PSP ( #3 )
...
- Add missing mapping
- Make sure the only window has the keyboard focus (so no `SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS` is needed)
2021-12-07 09:04:05 -08:00
Ozkan Sezer
f266d92286
psp/SDL_sysjoystick.c: fix -Wshadow warnings.
2021-12-07 14:04:32 +03:00
Sam Lantinga
a4c04ad230
Fixed building with iOS SDK prior to 13.0
...
Fixes https://github.com/libsdl-org/SDL/pull/5045
2021-11-30 10:32:39 -08:00
Sam Lantinga
b6bc3a6b0e
Added a mapping for the PS4 touchpad button on Windows
...
Fixes https://github.com/libsdl-org/SDL/issues/5035
2021-11-29 09:00:54 -08:00
Sam Lantinga
dd2f91118e
Fixed warnings with Windows SDK 10.0.19041
...
Fixes https://github.com/libsdl-org/SDL/issues/4998
Also breaks https://github.com/libsdl-org/SDL/issues/4998 for older SDKs, but we're going to ignore them, they're just incorrect.
2021-11-27 20:18:29 -08:00
Sam Lantinga
c2904c8ce7
Fixed compile warnings and errors
...
Fixes https://github.com/libsdl-org/SDL/issues/4998
2021-11-27 11:16:15 -08:00
Sam Lantinga
a6cbe0ab87
Controllers are always centered at zero using XInput and WGI
2021-11-27 10:58:12 -08:00
Sam Lantinga
09b7ca27d6
Get the current WGI controller list at startup
...
On Win32 this list is empty and we always get controller added events. On UWP, this list is populated and we don't get controlle added events for currently connected controllers.
2021-11-27 10:53:20 -08:00
Sam Lantinga
12895eca1a
Fixed WGI initialization on Win32
2021-11-27 10:52:58 -08:00
Sam Lantinga
110e4e1334
Use WGI instead of XInput for Windows 10 UWP apps
...
Fixes https://github.com/libsdl-org/SDL/issues/5017
2021-11-27 10:24:32 -08:00
Mathieu Eyraud
02021ae753
Return capabitlities from RawInput joystick
2021-11-27 07:26:10 -05:00
Sam Lantinga
a2e8565230
The Google Pixel fingerprint sensor isn't actually a joystick
...
Fixes https://github.com/libsdl-org/SDL/issues/4971
2021-11-26 11:04:15 -08:00
Sam Lantinga
67b5de5b41
Fixed build warnings
2021-11-26 10:18:08 -08:00
Sam Lantinga
2ca2ad76da
Fixed build warnings
2021-11-26 10:13:45 -08:00
Sam Lantinga
f90164a62f
Fixed mapping for the G-Shark GS-GP702
...
Fixes https://github.com/libsdl-org/SDL/issues/5006
2021-11-26 09:02:12 -08:00
Sam Lantinga
d861820465
SDL_JoystickGetAttached() doesn't need to be noisy for NULL joystick
...
Fixes https://github.com/libsdl-org/SDL/issues/5008
2021-11-26 07:57:48 -08:00
Cameron Gutman
b99510836e
SDL_mfijoystick.m: Fix -Wshadow warning
2021-11-24 13:04:50 -06:00
Ozkan Sezer
f8900583e5
removed windows winmm joystick driver
2021-11-23 17:04:40 +03:00
Sylvain
cb9f85e8d0
Don't use "round", so that it's doesn't show up while searching for the function
2021-11-22 08:38:46 -08:00
Sylvain
6fb50bd0a6
Don't use "exp" as a name so that it's doesn´t show up with searching for the function
2021-11-22 08:38:46 -08:00
Sylvain
d31251b014
use SDL's functions version inplace of libc version
2021-11-22 08:38:46 -08:00
Ozkan Sezer
ee2afa00ba
SDL_mfijoystick.m: fix build using older toolchains
...
Fixes https://github.com/libsdl-org/SDL/issues/4992
Fixes https://github.com/libsdl-org/SDL/issues/4958
2021-11-22 05:11:10 +03:00
Sam Lantinga
6828955ddf
Trim any extra platform strings from mappings when they're returned to the application
2021-11-19 09:58:11 -08:00
Cameron Gutman
881a674926
rawinput: Only access SDL_RAWINPUT_mutex if initialized
...
We can also ditch the lock in RAWINPUT_JoystickQuit() now that the joystick
subsystem quits drivers in reverse order. There's no chance of a racing call
to RAWINPUT_WindowProc() anymore.
2021-11-19 08:19:30 -06:00
Cameron Gutman
1237142be3
joystick: Quit drivers in reverse order to ensure dependencies are not broken
...
SDL_WINDOWS_JoystickDriver depends on callbacks in SDL_RAWINPUT_JoystickDriver
and SDL_HIDAPI_JoystickDriver being available. It also manages the common
WindowProc used for joystick detection in both WINDOWS and RAWINPUT drivers.
If we don't tear them down backwards, there's a window of time where we could
invoke RAWINPUT_WindowProc() after RAWINPUT_JoystickQuit() was called.
2021-11-19 08:19:30 -06:00
Sam Lantinga
40d808620d
SDL_classic_joysticks defaults off
2021-11-15 20:17:14 -08:00
Sam Lantinga
66058bbbd5
Fixed exception accessing Bluetooth devices on Android 12
...
Since accessing Bluetooth prompts the user for permission on both Android and iOS, and we only need it for Steam Controller support, we'll leave it off by default. You can enable it by setting the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM to "1" before calling SDL_Init()
Fixes https://github.com/libsdl-org/SDL/issues/4952
2021-11-15 16:52:56 -08:00
Ozkan Sezer
3eb9bfac7a
win32 rawinput & wgi joystick: avoid -Werror=declaration-after-statement
2021-11-14 22:22:50 +03:00
Ozkan Sezer
a2c27d39cf
SDL_hidapi_switch.c (ConstructSubcommand): lose use of '&' on rumbleData
...
SwitchCommonOutputPacket_t->rumbleData is an array.
2021-11-13 17:56:28 +03:00
Ozkan Sezer
6ad0fb8462
SDL_hidapi_ps4.c, SDL_hidapi_ps5.c: use SDL_zeroa()
2021-11-13 17:55:10 +03:00
Ozkan Sezer
a948ff8494
SDL_hidapijoystick.c: worked around a bogus 'unreachable code' warning.
2021-11-13 11:50:02 +03:00
Sam Lantinga
c2dd50a9a0
Fixed whitespace
2021-11-12 08:28:02 -08:00
Cameron Gutman
50971577e4
dinput: Fix memory leak when SDL_DINPUT_JoystickPresent() returns true
2021-11-11 22:35:41 -06:00
Cameron Gutman
fe09a4930a
joystick: Add APIs to query rumble support
2021-11-11 15:10:08 -08:00
Cameron Gutman
afccabb881
joystick: Add capability flags for rumble and trigger rumble
...
When API limitations force us to guess, we favor a false positive (reporting
support when it doesn't exist) compared to a false negative.
2021-11-11 15:10:08 -08:00
Cameron Gutman
1ccfbf963e
joystick: Convert HasLED() into a generic GetCapabilities() function
2021-11-11 15:10:08 -08:00
Sam Lantinga
b9b0df40bf
Fixed Linux build
2021-11-11 12:52:40 -08:00
Sam Lantinga
c9ada1c142
Made HIDAPI device change notifications available via SDL_hid_device_change_count()
2021-11-11 12:46:10 -08:00
Sam Lantinga
ebed961cb2
Fixed build with older Linux kernel headers
2021-11-11 09:51:39 -08:00
Sam Lantinga
828a0a4a10
Fixed mapping for PS4 controller when using the classic Joystick
...
interface on Linux
2021-11-11 07:13:29 -08:00
Sam Lantinga
dc9de1e2bd
Get the correct USB VID/PID information for /dev/input/js* devices
2021-11-11 07:03:30 -08:00
Sam Lantinga
bd92a95f22
Cleanup for the /dev/js* support (thanks @meyraud705)
2021-11-11 06:30:36 -08:00
Sam Lantinga
1c78b08007
Added support for /dev/input/js* on Linux
...
Added the hint SDL_HINT_LINUX_JOYSTICK_CLASSIC to control whether /dev/input/js* or /dev/input/event* are used as joystick devices
Added the hint SDL_HINT_JOYSTICK_DEVICE to allow the user to specify devices t
hat will be opened in addition to the normal joystick detection
Fixes https://github.com/libsdl-org/SDL/issues/1314
Fixes https://github.com/libsdl-org/SDL/issues/1727
Fixes https://github.com/libsdl-org/SDL/issues/1981
Closes https://github.com/libsdl-org/SDL/pull/4727
2021-11-10 20:02:25 -08:00
Sam Lantinga
65a50b2430
Re-enable udev joystick enumeration by default
2021-11-10 16:15:22 -08:00
Sam Lantinga
7681929cb4
Don't send the initial joystick axis event if the application is in the background
2021-11-09 12:30:37 -08:00
Sam Lantinga
d31f90d9e1
Don't send game controller touchpad or sensor events unless the application has focus
...
Fixes https://github.com/libsdl-org/SDL/issues/4891
2021-11-09 12:09:01 -08:00
Sam Lantinga
2a6feb5011
Removed accidental debugging commit (thanks @DomGries!)
2021-11-08 07:10:38 -08:00
Sam Lantinga
5b646cd19e
Build hidapi code into SDL as a new public API
...
This prevents conflicts with hidapi linked with applications, as well as allowing applications to make use of HIDAPI on Android and other platforms that might not normally have an implementation available.
2021-11-07 23:00:59 -08:00
Cameron Gutman
f6dc47caef
WGI/DInput: Fix SDL_IsXInputDevice() checks when RawInput is enabled
...
Enabling the RawInput backend causes SDL_XINPUT_Enabled() to return false.
That causes WGI and DInput backends to take ownership of XInput-compatible
controllers, because they think there's no XInput-specific backend enabled.
In WGI's case, it will actually race with RawInput to open the device. By
properly excluding XInput devices from WGI, we can ensure that the sets of
devices managed by WGI and RawInput don't intersect. This makes the race
harmless, since they'll never both go after the same device.
2021-11-07 16:14:33 -06:00
Sam Lantinga
301389cecc
Fixed iOS build
2021-11-07 13:53:12 -08:00
Cameron Gutman
b3e909dc41
WGI: Fix SDL_IsXInputDevice() for Xbox One controllers
...
The Xbox One driver stack doesn't propagate the VID/PID down to the
HID devices that end up in the GetRawInputDeviceList() output. This
means we end up matching against the wrong VID/PID and can't properly
exclude Xbox One controllers from WGI.
Fortunately, it is possible to walk back up the device tree to find
the parent with the matching VID/PID.
2021-11-07 13:33:18 -08:00
Sam Lantinga
b8c00bf914
Allow opening joysticks that are read-only on Linux
...
Fixes https://github.com/libsdl-org/SDL/issues/4713
2021-11-07 13:11:29 -08:00
Sam Lantinga
0323d983c6
Add the platform to the game controller mapping so it can be read back in without changes
...
Fixes https://github.com/libsdl-org/SDL/issues/4848
2021-11-07 12:52:48 -08:00
Sam Lantinga
fe2fe29049
Backed out accidentally committed PR https://github.com/libsdl-org/SDL/pull/4849
2021-11-07 11:48:16 -08:00
Sam Lantinga
86bc65a741
Fixed non-Apple builds
2021-11-07 11:35:12 -08:00
Sam Lantinga
637bcd0b72
Fixed build warnings
2021-11-07 11:19:07 -08:00
Sam Lantinga
e14358265e
Cleanup sfSymbolName support and add them to the dynamic API functions
2021-11-07 11:16:48 -08:00
Patrick Hogan
149e5c656a
Support returning sfSymbolsName for gamepad controls on macOS / iOS / tvOS
2021-11-07 10:58:37 -08:00
Cameron Gutman
6312aaea0f
WGI: Add workaround for delayed callbacks after WGI_JoystickQuit()
2021-11-06 21:35:01 -07:00
Cameron Gutman
2371b247ff
windows: improve feature detection consistency between CMake and non-CMake builds
2021-11-03 08:41:36 -07:00
Sam Lantinga
26706319d7
Ignore the ASRock LED controller, it's not a joystick
2021-10-30 05:53:12 -07:00
Tanuj Bagaria
1f0eb03a76
Fix PS5 mapping with HID-PLAYSTATION driver ( #4675 )
...
* add missing PS5 Linux GUID for Bluetooth
* Fix PS5 Mapping to work with HID-Playstation driver
2021-10-24 17:54:26 -05:00
Sam Lantinga
f3fd1ffb99
Fixed crash if SDL API functions are called on a disconnected controller on iOS
2021-10-20 15:18:03 -07:00
Sam Lantinga
a43d3f6931
Don't detect the ROG Chakram mouse as a joystick
2021-10-20 15:19:22 -07:00
Ozkan Sezer
8e9ea2e362
SDL_os2joystick.c: missed replacing a use of libc function
2021-10-18 14:10:37 +03:00
shaquan-omari
ea97ab6164
Add mapping for HORI Fighting Commander OCTA controller on Linux
2021-10-16 15:25:38 -07:00
Ozkan Sezer
e92a639b23
replaced many uses of libc calls with SDL_ counterparts in os2 sources.
...
TODO: core/os2 and geniconv sources _must_ be updated, as well..
2021-10-04 23:00:28 +03:00
Sam Lantinga
c501d159a9
Fixed range for Steam Controller sensor values
2021-10-03 14:10:21 -07:00
Sam Lantinga
ea1a2b94f2
Use the correct update rate for Steam Controller sensors
2021-10-02 09:13:29 -07:00
Sam Lantinga
8b74575267
Added support for the gyro and accelerometer on Steam Controllers
...
Fixes https://github.com/libsdl-org/SDL/issues/4577
2021-10-01 21:32:21 -07:00
Sam Lantinga
9706feacae
Update length after shortening string (thanks mayraud705!)
...
Closes https://github.com/libsdl-org/SDL/pull/4698
2021-10-01 15:11:25 -07:00
Cameron Cawley
08ae790497
Replace calls to asprintf with SDL_asprintf
2021-09-22 11:53:46 -07:00
Sam Lantinga
345c161feb
Fixed some accidental uses of external C runtime functions
2021-09-22 09:06:45 -07:00
Sam Lantinga
ff85d4fbe5
Fixed Xbox Series X controller being detected by both IOKit and GCController on macOS
2021-09-08 17:51:47 -07:00
Sam Lantinga
9f8552588d
Added mapping for Xbox One S controller with newer firmware on macOS
2021-09-08 17:50:17 -07:00
Sam Lantinga
bf97c5a22f
Make sure SDL file descriptors don't leak into child processes
2021-09-08 14:47:40 -07:00