Sam Lantinga
71dc7169d9
Added header for SDL_Delay()
2023-03-09 17:18:40 -08:00
Sam Lantinga
1e6ffc6294
Removed a duplicate delay accidentally added during code refactor
...
(cherry picked from commit 926db1bd544364a9e4ab61e60bcfbe75e05adf56)
2023-03-09 16:13:19 -08:00
Sam Lantinga
3f00fa16c6
Wait for the GCController framework to see IOKit devices
...
It occasionally takes a few millseconds for the GCController framework to handle the device notification and set up the device
Fixes the duplicate controller issue in https://github.com/libsdl-org/SDL/issues/6686
(cherry picked from commit 645823fc901c98b688512d3b3e70cc8922e8140c)
2023-03-09 16:13:19 -08:00
Sam Lantinga
0d76380042
Code style: changed "sizeof foo" to "sizeof(foo)" (thanks @sezero!)
...
(cherry picked from commit c6443d86c92e962683a1efe5f123a144988875b5)
2023-03-09 15:23:59 -08:00
Lokathor
cfd6b34b8f
Make mappings for "Retrolink SNES Controller" with SDL_GAMECONTROLLER_USE_BUTTON_LABELS both on and off
...
I've only tested this on windows, but I went ahead and made the same changes for linux and mac because I assumed it's the same there and that we'd want to keep the three platforms in sync.
(cherry picked from commit b8bc4a234b93efa7a28c7fd7d524d905d9b76e6d)
2023-03-08 16:44:30 -08:00
Ozkan Sezer
a70964aaf4
fix SDL_FindFreePlayerIndex so it can really return -1.
2023-03-08 20:00:50 +03:00
Sam Lantinga
35c13196f0
Fixed uninitialized variable
2023-03-08 08:40:38 -08:00
Sam Lantinga
8fc10ac95c
Added mapping for the Xbox Elite Core controller connected via Bluetooth on Android
...
(cherry picked from commit d08338ddc5bb3cae1e4ce06201a2cd3c53215aa0)
2023-03-06 15:37:52 -08:00
divVerent
91ad208d18
Fix Xbox One gamepad axis assignment on SDL_JOYSTICK_ANDROID API ( #7405 )
...
(cherry picked from commit 6f1f586086a18ab32ddccc05e4616aac02774a1b)
2023-03-06 15:37:41 -08:00
Sam Lantinga
f47a08ab84
Fixed typo in previous cherry-pick
2023-03-01 16:47:48 -08:00
Sam Lantinga
660fc89967
Don't clobber an existing entry with a different version when adding a gamepad mapping
...
(cherry picked from commit 727c7d4e2f44102bb571180929bfbb5d527f4f27)
2023-03-01 16:41:44 -08:00
Sam Lantinga
c0fb092425
Fixed locking up the Logitech F310 with the PlayStation controller detection
...
(cherry picked from commit da134a30396e12786c14fe8d1190ab05c67d9dba)
2023-02-28 08:37:18 -08:00
Sam Lantinga
715749f578
Added mapping for DualSense Edge Wireless Controller on Linux
...
This is a mapping when using evdev, not the more advanced HIDAPI support.
(cherry picked from commit 206fa4dafb633ed074b930cbb3440a9925c532f2)
2023-02-27 15:21:04 -08:00
Sam Lantinga
3bf9c70a7c
Changed the VID/PID used for the Backbone One controller on iOS
...
(cherry picked from commit 516e48515e32f74aa98a3df4cbdb23b9c477f2f0)
2023-02-23 12:24:49 -08:00
Sam Lantinga
ea7103088f
Added support for the Backbone One PlayStation Edition
...
(cherry picked from commit 59bf1c2853d5b06295c939099f6cf5f1611f70b5)
2023-02-23 11:59:10 -08:00
Sam Lantinga
13969f8567
De-duplicate Google Stadia controllers on macOS
...
(cherry picked from commit 87a83787a3a0a9922b02b35ba809d9da86930fc8)
2023-02-21 15:35:25 -08:00
Sam Lantinga
9be85b846b
Rumbling the Google Stadia Controller over Bluetooth works on Linux and macOS
...
(cherry picked from commit 4aeec9d8c2ad2fa0465999ecb4fd5c20734f1b27)
2023-02-21 15:07:24 -08:00
Sam Lantinga
35c9b1042f
Fixed the packet size for Xbox One controllers
...
(cherry picked from commit 021a7cfa13c20d518ebfb6e96c3305150256983b)
2023-02-21 12:48:10 -08:00
Sam Lantinga
31a57c05dc
Fixed the share button on the ThrustMaster eSwap PRO Controller Xbox
...
(cherry picked from commit e4face7c1d41698067b9afdd8c7f0a8f76774da2)
2023-02-21 12:43:20 -08:00
Sam Lantinga
3dff5d3cbe
Added support for the Turtle Beach REACT-R and Recon Xbox controllers
...
(cherry picked from commit 5fded632d6fa532ac25e76ad9a676c9ea726dd02)
2023-02-21 11:29:45 -08:00
Sam Lantinga
4c9a79dddb
Removed duplicated conditional
...
(cherry picked from commit 1a15d506a69d5d73a53728c569ef84a69db51833)
2023-02-20 18:26:07 -08:00
Sam Lantinga
7c4f5e1def
Fixed rumble caps for the Nintendo Joy-Con controllers
...
(cherry picked from commit 02cea5fca107991774792c431efc96319ef2d060)
2023-02-20 18:25:57 -08:00
Sam Lantinga
abe8dbbf1c
Added support for the Razer Wolverine V2 controllers
...
(cherry picked from commit 4994654d4f2d5c96a0faa972ebbb6c653f939d56)
2023-02-20 18:25:38 -08:00
Sam Lantinga
f741adc86c
Added other names for the DragonRise Inc. Wired Wheel (thanks @felimwhiteley!)
...
(cherry picked from commit eede2066fbcc342e96592fbbbfe94b2420feb524)
2023-02-17 11:30:49 -08:00
Sam Lantinga
e86f494317
Hold the joystick lock while opening the HID device on non-Android platforms
...
On Windows the main thread can be enumerating DirectInput devices while the Windows.Gaming.Input thread is calling back with a new controller available, and in this case HIDAPI_IsDevicePresent() returned false since the controller initialization hadn't completed yet, creating a duplicate controller.
Fixes https://github.com/libsdl-org/SDL/issues/7304
(cherry picked from commit ece8a7bb8e2dae9cb53115980cea9ef1213a0160)
2023-02-16 09:53:33 -08:00
Sam Lantinga
69b2baec5c
Map the Android MENU button back to the SDL MENU key
...
Thanks to @AntTheAlchemist for the investigation!
Fixes https://github.com/libsdl-org/SDL/issues/7318
(cherry picked from commit beb6a2afdc74a00f07ec230297c2675920a7bf79)
2023-02-14 18:04:30 -08:00
Sam Lantinga
2c6995778e
Fixed handling simple mode PS4 reports
...
Fixes https://github.com/libsdl-org/SDL/issues/7270
(cherry picked from commit 5925cd4ef377a2211fd057ef6fa9f41141999cb7)
2023-02-14 17:53:37 -08:00
Sam Lantinga
7285f0d441
Sorted controller list
...
(cherry picked from commit 68e2f230662a0b3f2ce7c0085f781f1652901af3)
2023-02-10 17:18:32 -08:00
Alfredo Escobar
ca3468cb55
Add Hori Pokken Tournament DX Pro Pad
...
(cherry picked from commit 76552e4780a57f24ec1cd77fb942b7cabe1219d8)
2023-02-10 17:17:00 -08:00
Sylvain
17515f4aef
Backport simplify flags PR #7220
2023-02-09 17:19:46 -08:00
Sam Lantinga
d77eb8a8d5
Make sure we synchronously re-enable USB reporting mode for Switch controllers (thanks @SortaCore!)
...
Fixes https://github.com/libsdl-org/SDL/issues/3450
(cherry picked from commit b7c6fec10a152e47f8fa18350134188b75e9df0b)
2023-02-08 14:31:05 -08:00
Sam Lantinga
3fb9118cb6
Note the Google Stadia controller doesn't support rumble over Bluetooth
...
(cherry picked from commit 50575ed2233b9924198e10c9a261c10323d9089e)
2023-02-08 14:31:05 -08:00
Sam Lantinga
71fb4e3d76
Fixed mis-detecting the share button on the Xbox controller over NDIS
...
(cherry picked from commit 00e02de77b615d5faf94af709760fd0f2e749a39)
2023-02-08 14:31:05 -08:00
Sam Lantinga
2518e32de8
Dynamically update the serial number if it isn't available at first
...
This happens for Xbox One controllers using newer firmware connected over NDIS
(cherry picked from commit d1c72bb0bc54fba41ba89930a3ed98f8767be724)
2023-02-08 14:31:01 -08:00
Sam Lantinga
e8938fc66a
Enable paddles on the Xbox Elite controller when connected over USB
...
(cherry picked from commit c4db0725e4cf5eb6ec5239e6f03346958e88b9cf)
2023-02-08 14:27:05 -08:00
Ozkan Sezer
fde6323662
fix build after the Logitech ChillStream patch.
2023-02-07 01:11:02 +03:00
Sam Lantinga
7154605982
Added support for the Logitech ChillStream
...
(cherry picked from commit 6f7edaf8920c504ebd3e797bd04ec1d2e46c4aa9)
2023-02-06 13:28:44 -08:00
Sam Lantinga
5b5a72e33c
Sorted controller list
...
(cherry picked from commit 1c03ddefc320ec9969d5f81c2c3cb988d94a8b4c)
2023-02-05 08:44:46 -08:00
Antonis Geralis
58fa43e7c3
Added Elecom 8button gamepad
...
(cherry picked from commit 52cd9fcbb074771804f443e7a9b2e9436485fe83)
2023-02-05 08:44:46 -08:00
Leonardo Brondani Schenkel
4266cf8504
Add Linux mapping for 8BitDo Pro 2 Wired Controller for Xbox
...
Without these mappings, this controller "kinda" works out of the box:
- `SDL_GameControllerMapping()` works because it will notice "Xbox" in
the name and use the default XInput mappings
- `SDL_GameControllerMappingForGUID()` will not find any mapping
lsusb:
```
ID 2dc8:2000 8BitDo 8BitDo Pro 2 Wired Controller for Xbox
```
In Linux this controller is supported by two drivers:
- `xpad` (built-in to the kernel), exposes the controller name from the
USB descriptor and the GUID starts with 03 (0x03 = BUS_USB)
- `xone` (https://github.com/medusalix/xone ), exposes a virtual
controller which is always named "Microsoft X-Box One pad" and the
GUID starts with 06 (0x06 = BUS_VIRTUAL)
This commit adds the 2 GUIDs from both drivers so mappings will always
be found and the real controller name will always be reported.
2023-02-05 08:44:37 -08:00
Alynne
92779a5bd8
Adds Stadia BT mapping
...
(cherry picked from commit 4dea13e02fbfd2ac9eeb0a5cbb35cf5d1d53f549)
2023-02-03 15:02:47 -08:00
Sam Lantinga
c4a493de97
Don't accept official mappings for controllers that aren't unique
...
For example, the DragonRise Inc. Generic USB Joystick
See https://github.com/gabomdq/SDL_GameControllerDB/issues/202 for details
(cherry picked from commit 673bc5764942e3f645f1ff7d64f3d6a2059e3cdb)
2023-02-02 08:41:57 -08:00
Sam Lantinga
4a87abc966
Fixed sort_controllers.py and resorted game controller database
...
(cherry picked from commit 917607c335a87edcb3870b8504247609bea3c04d)
2023-02-02 08:41:36 -08:00
Sam Lantinga
2290d71338
Added gamepad mappings for the Xin-Mo Dual Arcade Fightstick
...
(cherry picked from commit d29e1f363239b45aedf5f81683fbb6cf52029bc2)
2023-02-01 23:07:47 -08:00
happyharryh
2cb422360c
Fixed the hat_map to avoid segmentation fault
...
(cherry picked from commit 57e78f4cf53b0fc84900a047120263c3c71e721c)
2023-01-12 06:56:59 -08:00
Narr the Reg
fa934dd4df
hidapi: switch: Add user calibration support
...
(cherry picked from commit 9fa55d9cabc93532cd5cf44105ec589a4db1d097)
2023-01-12 06:38:37 -08:00
Sam Lantinga
0479df53ca
Updated copyright for 2023
2023-01-09 09:48:21 -08:00
Sam Lantinga
ebc2fb411f
Fixed infinite loop shutting down WGI controllers
...
We are guaranteed that the lock will be held during shutdown, so if we are in InvokeRemoved(), it's because we're shutting down controllers and need to remove them from our internal list.
Fixes https://github.com/libsdl-org/SDL/issues/7016
(cherry picked from commit ac99db9fc8d528a79abb98a5641e0fd94aa20a9e)
2023-01-08 09:35:55 -08:00
Sam Lantinga
988866ca4a
Fixed line wrapping for HID packet dump
...
(cherry picked from commit e85839cd5694a79f69ac16f48a5d845cdc62f809)
2023-01-03 15:14:00 -08:00
Sam Lantinga
2cb7a0a0bb
Added support for the ThrustMaster eSwap PRO Controller Xbox
...
(cherry picked from commit dacdb1c310d97ca3c3e6492cae0611f86b281b34)
2023-01-03 15:13:50 -08:00