Sam Lantinga
f7b774a7e0
Fixed build error on Linux if HAVE_INOTIFY isn't defined
...
Fixes https://github.com/libsdl-org/SDL/issues/5682
2022-05-18 17:59:17 -07:00
Cameron Cawley
0cca71a846
Use SDLCALL for callbacks in public APIs
2022-05-18 15:01:27 -07:00
Sam Lantinga
1f2a241688
Add new virtual joysticks to the end of the list
...
This guarantees that the device index that's returned is stable, as long as no joystick hotplug events occur.
2022-05-16 09:02:35 -07:00
Sam Lantinga
3c3ccb1d48
Fixed crash if a virtual joystick was disconnected
2022-05-16 08:56:17 -07:00
Sam Lantinga
48b6cd8bc2
Fixed whitespace
2022-05-16 07:23:30 -07:00
Sam Lantinga
f0bc5c9cbf
Added effects support for virtual controllers
2022-05-16 07:21:28 -07:00
Sam Lantinga
b3a18706ee
Removed unused variables
2022-05-16 06:37:38 -07:00
Sam Lantinga
7e005bd843
Fixed mapping the paddle buttons with the virtual controller
2022-05-16 06:22:18 -07:00
Sam Lantinga
bfac54b59c
Added the ability to specify which buttons and axes are present for virtual controllers
2022-05-15 20:34:44 -07:00
Sam Lantinga
94eeb587c1
First pass at extending virtual controller functionality
...
Added the ability to specify a name and the product VID/PID for a virtual controller
Also added a test case to testgamecontroller, if you pass --virtual as a parameter
2022-05-15 20:01:12 -07:00
Sam Lantinga
7ad15c5b8f
Added game controller support for virtual joysticks
...
Fixes https://github.com/libsdl-org/SDL/issues/5662
2022-05-15 09:35:52 -07:00
Sam Lantinga
a3c1ca1fa1
Added support for the Backbone One guide button
...
The guide button is activated on a long press (> 400ms)
2022-05-06 09:07:36 -07:00
Ozkan Sezer
3f813cf1ef
SDL_rawinputjoystick.c: fixed -Werror=declaration-after-statement
2022-05-04 10:05:56 +03:00
atfrase
db9e14e504
disabled linux joystick debugging outputs and reverted unnecessary comment edit
2022-05-03 10:44:09 -07:00
atfrase
3b53555bcf
copied default Steam Controller mapping for wired and wireless-dongle USB pids
2022-05-03 10:44:09 -07:00
atfrase
13b1bf4f21
added default gamepad mapping for Steam Controller with new GUID (possibly caused by the firmware update to enable BLE?)
2022-05-03 10:44:09 -07:00
atfrase
f7a19f9ea8
relaxed the digital hat deadzone slightly, and fixed typo in DEBUG_GAMEPAD_MAPPING define
2022-05-03 10:44:09 -07:00
atfrase
3696e23d09
added hints SDL_HINT_LINUX_DIGITAL_HATS and SDL_HINT_LINUX_HAT_DEADZONES to control the new Linux hat handling; added define DEBUG_GAMEPAD_MAPPINGS to log messages when generating default gamepad mapings for Linux joysticks
2022-05-03 10:44:09 -07:00
atfrase
0b8e796e2c
added hueristic to differentiate digital vs analog 'hat' input axes and expose the latter as regular axes; added automatic deadzones to hat outputs, in case analog axes are still mapped to digital hats; updated automatic gamepad control mapping to more completely follow the spec
2022-05-03 10:44:09 -07:00
Daniel Brookman
d1a3981bf8
Fix crash when reading background events for MFi controllers on macOS
...
Enabling GCController.shouldMonitorBackgroundEvents to read background events
for MFi controllers before receiving the first GCControllerDidConnectNotification
is apparently a no-go on macOS (12.3.1 for me), and would crash on attempt.
Apple's documentation is... not great, and doesn't point this out.
This waits for IOS_AddMFIJoystickDevice() to get called down the chain from GCControllerDidConnectNotification, and enables GCController.shouldMonitorBackgroundEvents
if it hadn't been already.
On iOS and tvOS, GCController.shouldMonitorBackgroundEvents is ignored, so
there's no need to check their versions.
2022-05-02 15:31:28 -07:00
Jan200101
bb0b6dd42e
Fixed using WGI without XInput
2022-05-02 11:33:55 -07:00
Carl Friess
2ccb0dfd16
Check for macOS 10.16 to support apps built with older macOS SDKs
2022-04-29 00:24:23 -07:00
Sam Lantinga
e551384a99
Added functions to get the platform dependent name for a joystick or game controller
2022-04-26 14:54:14 -07:00
Jibb Smart
d7c07d6b09
Read motion sensor scale from Switch controllers ( #5555 )
...
* Read IMU scale data from Switch controllers. Up until now, SDL has used hard-coded scaling which isn't correct with some supported controllers.
* Moved declarations to beginning of code blocks to better fit with SDL style requirements
2022-04-26 09:57:17 -07:00
Dimitriy Ryazantcev
c39df2fb0c
joystick: get HID top-level collection preparsed data directly from RawInput API.
2022-04-26 09:48:35 -07:00
Mathieu Eyraud
0b2a55ea7d
Fix typo
2022-04-25 15:46:17 -07:00
meyraud705
3dcfe86082
Add joystick battery event
2022-04-25 15:46:17 -07:00
meyraud705
0964c84d77
Always use SDL_PrivateJoystickBatteryLevel to update battery level
...
But do not use it for initialisation.
2022-04-25 15:46:17 -07:00
Sam Lantinga
8986efd643
Added support for the Backbone One controller on iOS
2022-04-22 14:21:46 -07:00
Sam Lantinga
2ca0837888
SDL: sometimes the PS5 controller doesn't report having to power even when connected over USB. Possibly related to being completely charged? Either way we already know that it's USB or BT so let's use the driver's knowledge instead.
2022-04-22 14:21:41 -07:00
Sam Lantinga
04bf7c9434
Fixed build
2022-04-22 09:36:39 -07:00
Sam Lantinga
d9b5805ba5
Return a correlation error when trigger rumble is attempted without correlation
2022-04-22 09:13:40 -07:00
Cameron Gutman
145824f6ab
WGI: Only call RoUninitialize() if RoInitialize() succeeded
2022-04-21 08:47:22 -07:00
Cameron Gutman
00b2e10a7a
WGI: Keep a reference to the MTA to avoid crashing on COM teardown
...
Fixes #5552
Fixes #5270
2022-04-21 08:47:22 -07:00
Sam Lantinga
57927a2458
Don't call scandir() inside of scandir()
...
This works around a crash in address sanitizer
2022-04-18 12:57:28 -07:00
Jan Beich
7c140429a8
Enable evdev-based gamecontrollerdb on FreeBSD
2022-04-18 09:57:49 -07:00
Sam Lantinga
e7b01ee745
Added controller mapping for the Thrustmaster Dual Analog 3.2 on Linux
2022-04-18 09:55:52 -07:00
Mathieu Eyraud
99ae6395b1
Initialise scandir argument
...
'scandir' does not initialise 'entries' on error
2022-04-12 11:14:07 -04:00
Sam Lantinga
7ea1b69dd4
Sort controllers by the js* index on Linux
...
Also fixed the initial scan to directly scan devices instead of using
udev so they can be sorted, as intended.
Fixes https://github.com/libsdl-org/SDL/issues/4688
2022-04-05 21:02:52 -07:00
Sam Lantinga
eb660e862c
Cache the fact that a device didn't look like a joystick
...
Fixes https://github.com/libsdl-org/SDL/issues/5211
2022-04-05 19:47:42 -07:00
Ozkan Sezer
312c899f4f
attempt to fix uwp build
2022-04-02 03:32:10 +03:00
Sam Lantinga
8ebef12d31
Use RoInitialize/RoUninitialize for Windows.Gaming.Input
...
Thanks @walbourn!
Fixes https://github.com/libsdl-org/SDL/issues/5270
2022-04-01 14:59:45 -07:00
Cameron Gutman
2c04df8d65
joystick: Fix rumble issues on PS5 HIDAPI controllers
...
We were returning the report size from HIDAPI_DriverPS5_RumbleJoystick() rather
than 0 upon success, causing SDL_JoystickRumble() (and callers) to think that
rumbling failed.
This didn't cause major problems until 1868c5b, when it started preventing
rumble state from being persisted in the joystick core, even though it was
successfully sent to the hardware.
This led to all sorts of strangeness, including broken rumble duration and
attempts to stop rumble being discarded.
2022-03-30 18:33:38 -05:00
Kimplul
2398c43be2
add some Thrustmaster wheels
2022-03-24 08:33:37 -07:00
Ryan C. Gordon
4fe7b2cbd1
static analysis: Fixed several complaints from codechecker.
...
There are still some pending Objective-C specific issues.
Reference issue #4600 .
2022-03-24 11:00:43 -04:00
Sam Lantinga
006aafabcf
Fixed freeing a constant string (thanks @gnrlwart)
2022-03-22 20:24:17 -07:00
Egor
2302b2d5e5
Add mapping for Logitech Precision Gamepad
2022-03-22 10:04:03 -07:00
Sam Lantinga
1868c5b521
Start rumbling once a raw input controller has been correlated
...
Fixes https://github.com/libsdl-org/SDL/issues/5351
2022-03-17 18:25:50 -07:00
Sam Lantinga
b22ce2b5a8
Workaround for bug in Microsoft WGI support
...
Fixes https://github.com/libsdl-org/SDL/issues/5270
2022-03-17 17:10:40 -07:00
Sam Lantinga
bcb0f1de23
Fixed build when events are disabled
...
Fixes https://github.com/libsdl-org/SDL/issues/5413
2022-03-17 08:52:31 -07:00