|
3f1fd5ab
|
2023-05-23T10:59:03
|
|
Updated source to match SDL function prototype style
|
|
78a92b4f
|
2023-05-22T13:54:15
|
|
Fixed duplicate Joy-Con controllers on macOS
If both Apple and HIDAPI drivers see the controller, HIDAPI will be preferred.
Fixes https://github.com/libsdl-org/SDL/issues/7479
(cherry picked from commit 61ef4efdfae7e384b0d24b1b171a9ee6203a3f0d)
|
|
71dc7169
|
2023-03-09T17:18:40
|
|
Added header for SDL_Delay()
|
|
3f00fa16
|
2023-03-09T16:10:04
|
|
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)
|
|
ea710308
|
2023-02-23T11:57:48
|
|
Added support for the Backbone One PlayStation Edition
(cherry picked from commit 59bf1c2853d5b06295c939099f6cf5f1611f70b5)
|
|
13969f85
|
2023-02-21T15:31:32
|
|
De-duplicate Google Stadia controllers on macOS
(cherry picked from commit 87a83787a3a0a9922b02b35ba809d9da86930fc8)
|
|
0479df53
|
2023-01-09T09:48:21
|
|
Updated copyright for 2023
|
|
d0bbfdbf
|
2022-12-01T16:07:03
|
|
Clang-Tidy fixes (#6725)
(cherry picked from commit 3c501b963dd8f0605a6ce7978882df39ba76f9cd)
|
|
b8d85c69
|
2022-11-30T12:51:59
|
|
Update for SDL3 coding style (#6717)
I updated .clang-format and ran clang-format 14 over the src and test directories to standardize the code base.
In general I let clang-format have it's way, and added markup to prevent formatting of code that would break or be completely unreadable if formatted.
The script I ran for the src directory is added as build-scripts/clang-format-src.sh
This fixes:
#6592
#6593
#6594
(cherry picked from commit 5750bcb174300011b91d1de20edb288fcca70f8c)
|
|
192cdf3d
|
2022-11-24T16:07:03
|
|
SDL_mfijoystick.m: remove VLA, so that projects can be built with error on vla
|
|
242ce20c
|
2022-11-24T07:37:36
|
|
SDL_mfijoystick.m: fix build with Xcode < 9
Fixes #6601.
(cherry picked from commit 53ca1f77029289a58f1a9963a00b637b903f494d)
|
|
689409fd
|
2022-10-06T17:34:24
|
|
Fixed the start button on the Nimbus+ controller on tvOS
Also updated mappings for Nintendo Switch controllers on tvOS, to reflect the lack of guide/menu button availability
|
|
7becbd7d
|
2022-09-27T12:58:16
|
|
Add joystick locking for controller notifications on iOS/tvOS
Fixes https://github.com/libsdl-org/SDL/issues/6288
|
|
2c518747
|
2022-09-27T09:56:02
|
|
Added microsecond timestamp to sensor values for PS4 and PS5 controllers using the HIDAPI driver
|
|
5892ed43
|
2022-09-16T09:44:39
|
|
Fixed Xcode warnings on macOS
|
|
277b033e
|
2022-08-22T19:28:21
|
|
Refactor joystick GUID creation
|
|
c1e08739
|
2022-08-22T16:46:55
|
|
Added the CRC of the joystick name to the GUID
This will make it possible to have mappings for different controllers
that have the same VID/PID. This happens frequently with some generic
controller boards that have been reused in many products.
Fixes https://github.com/libsdl-org/SDL/issues/6004
|
|
8f05b4f8
|
2022-08-08T08:26:21
|
|
Fixed iOS/tvOS build
|
|
4990bd05
|
2022-07-27T16:17:32
|
|
Added debug code to show available inputs on iOS/tvOS controllers
|
|
f9beef76
|
2022-07-22T18:58:29
|
|
Added support for the Nintendo Switch Joy-Con Controllers on iOS and tvOS 16
|
|
aad7ef6e
|
2022-07-22T10:58:34
|
|
Added support for the Nintendo Switch Pro Controller on iOS and tvOS 16
|
|
cef1514b
|
2022-07-17T09:07:04
|
|
Fixed some Xcode warnings
|
|
6c536afd
|
2022-06-27T15:43:17
|
|
Fix C89 declaration for macOS modules.
Since Clang 14, `-Wdeclaration-after-statement` is enforced on every
standard.
|
|
a3c1ca1f
|
2022-05-06T09:07:36
|
|
Added support for the Backbone One guide button
The guide button is activated on a long press (> 400ms)
|
|
d1a3981b
|
2022-05-02T15:22:46
|
|
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.
|
|
2ccb0dfd
|
2022-04-13T15:39:29
|
|
Check for macOS 10.16 to support apps built with older macOS SDKs
|
|
e551384a
|
2022-04-26T14:54:14
|
|
Added functions to get the platform dependent name for a joystick or game controller
|
|
8986efd6
|
2022-04-22T14:21:46
|
|
Added support for the Backbone One controller on iOS
|
|
6a787619
|
2022-03-08T18:42:13
|
|
Allow reading background events for MFi controllers
|
|
7935cfac
|
2022-02-08T18:55:10
|
|
SDL_mfijoystick.m: use __typeof instead of typeof.
Fixes https://github.com/libsdl-org/SDL/issues/5319
|
|
120c76c8
|
2022-01-03T09:40:00
|
|
Updated copyright for 2022
|
|
a4c04ad2
|
2021-11-30T10:32:21
|
|
Fixed building with iOS SDK prior to 13.0
Fixes https://github.com/libsdl-org/SDL/pull/5045
|
|
b9951083
|
2021-11-24T13:04:50
|
|
SDL_mfijoystick.m: Fix -Wshadow warning
|
|
ee2afa00
|
2021-11-22T05:11:10
|
|
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
|
|
afccabb8
|
2021-11-11T12:12:05
|
|
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.
|
|
1ccfbf96
|
2021-11-11T11:13:08
|
|
joystick: Convert HasLED() into a generic GetCapabilities() function
|
|
86bc65a7
|
2021-11-07T11:35:12
|
|
Fixed non-Apple builds
|
|
637bcd0b
|
2021-11-07T11:19:07
|
|
Fixed build warnings
|
|
e1435826
|
2021-11-07T11:16:48
|
|
Cleanup sfSymbolName support and add them to the dynamic API functions
|
|
149e5c65
|
2021-10-03T12:49:36
|
|
Support returning sfSymbolsName for gamepad controls on macOS / iOS / tvOS
|
|
f3fd1ffb
|
2021-10-20T15:18:03
|
|
Fixed crash if SDL API functions are called on a disconnected controller on iOS
|
|
ff85d4fb
|
2021-09-08T17:51:47
|
|
Fixed Xbox Series X controller being detected by both IOKit and GCController on macOS
|
|
fbc36490
|
2021-08-14T22:29:05
|
|
Use the new SDL_clamp() macro where sensible
There were a few places throughout the SDL code where values were
clamped using SDL_min() and SDL_max(). Now that we have an SDL_clamp()
macro, use this instead.
|
|
e42e9a12
|
2021-08-13T20:48:56
|
|
Fixed build
|
|
a186a503
|
2021-07-29T06:43:39
|
|
Added SDL_GameControllerGetSensorDataRate() to get the sensor update rate for a controller.
|
|
2a53f831
|
2021-07-26T23:29:20
|
|
Fixed controllers showing up under both MFI and HIDAPI drivers
The Game Controller Kit doesn't show the controllers at startup, so the HIDAPI driver sees them first and therefore gets preference when a controller is supported by both drivers.
This fixes bug https://github.com/libsdl-org/SDL/issues/4209
|
|
46869db0
|
2021-07-26T23:27:13
|
|
Fixed controller rumble on macOS
Needed to add a strong reference to the haptics engine
|
|
947ad6e1
|
2021-07-12T17:57:21
|
|
Added support for the Xbox Series X controller on iOS and tvOS
|
|
d135c076
|
2021-07-08T13:22:41
|
|
Added SDL_GameControllerSendEffect() and SDL_JoystickSendEffect() to allow applications to send custom effects to the PS4 and PS5 controllers
See testgamecontroller.c for an example of a custom PS5 trigger effect
|
|
9231f1f1
|
2021-05-07T12:29:03
|
|
Added support for the PS5 controller on iOS and tvOS
|
|
0bdf4f95
|
2021-03-22T19:19:01
|
|
Disable system gestures on MFi controllers while they're open, so we get access to the back button, etc.
|
|
9130f7c3
|
2021-01-02T10:25:38
|
|
Updated copyright for 2021
|
|
637d425e
|
2020-12-15T00:11:10
|
|
whitespace.
|
|
cb361896
|
2020-12-09T07:16:22
|
|
Fixed bug 5235 - All internal sources should include SDL_assert.h
Ryan C. Gordon
We should really stick this in SDL_internal.h or something so it's always available.
|
|
59f28b7f
|
2020-12-03T18:17:01
|
|
Fixed whitespace
|
|
6a7f29cd
|
2020-11-25T11:31:17
|
|
Fixed compiling on tvOS
|
|
e4b7d9a2
|
2020-11-24T07:56:59
|
|
Removed usage of TARGET_OS_OSX for building with older SDKs
|
|
a5cde4cb
|
2020-11-24T07:29:55
|
|
Fixed trying to use @available() on older SDK
|
|
97782e6c
|
2020-11-24T07:11:49
|
|
Don't try to call IOS_SupportedHIDDevice() if it's not defined
|
|
a063b9fb
|
2020-11-24T07:06:31
|
|
Fixed compiler warning
|
|
c63bbb06
|
2020-11-24T06:55:33
|
|
Including SDL_config_iphoneos.h enables MFI controller code
|
|
1e943e2a
|
2020-11-23T22:59:22
|
|
Fixed building with an older SDK and macOS target
|
|
62e39b5f
|
2020-11-23T20:57:14
|
|
Fixed building with an older SDK and macOS target
|
|
fd894467
|
2020-11-21T14:13:26
|
|
Fixed building on Mac OS X on the command line and with an older macOS SDK
|
|
1df593fb
|
2020-11-21T13:15:33
|
|
Fixed bug 5355 - Add GameController Framework support to macOS
C.W. Betts
This patch adds support to the GameController framework on macOS Big Sur and later, adding support for MFi controllers as well as rumble support for PS4 and Xbox One. There is some code to make sure that the IOKit joystick handler doesn't include two controllers at once.
While the GameController framework is present in earlier versions of macOS, there was no public, approved way of checking if a specific IOHIDDevice is a controller that GameController could handle. This was changed in Big Sur.
|
|
fcb21aa8
|
2020-11-17T10:30:20
|
|
Added API for sensors on game controllers
Added support for the PS4 controller gyro and accelerometer on iOS and HIDAPI drivers
Also fixed an issue with the accelerometer on iOS having inverted axes
|
|
9f51fad3
|
2020-11-13T18:01:29
|
|
Added support for the touchpad on PS4 and PS5 controllers
|
|
1e2caac5
|
2020-11-11T18:57:37
|
|
Added SDL_JoystickRumbleTriggers() and SDL_GameControllerRumbleTriggers()
|
|
fb4a406a
|
2020-11-09T18:45:22
|
|
Don't put 'm' in the GUID for Xbox and PS4 controllers on iOS
|
|
009b62f1
|
2020-11-07T02:22:15
|
|
Be explicit about mapping the new game controller paddle buttons
|
|
749062e7
|
2020-11-06T16:53:13
|
|
Implemented SDL_GameControllerSetLED() for iOS/tvOS
|
|
faeac6e8
|
2020-11-06T16:42:46
|
|
Added additional game controller button support on iOS/tvOS
|
|
e555d453
|
2020-11-05T11:07:54
|
|
Added SDL_JoystickHasLED
Currently, this is only supported by the PS4 HIDAPI driver.
|
|
d9aea0c3
|
2020-10-15T10:13:42
|
|
Update the existing haptic player when we rumble on iOS
|
|
a558409b
|
2020-10-13T21:08:18
|
|
Only include CoreHaptics if we're building with rumble support
|
|
75d5be97
|
2020-10-13T21:08:17
|
|
Fixed compiling with an older iOS SDK
|
|
6b62494e
|
2020-10-13T21:08:15
|
|
Added support for controller battery status on iOS 14
|
|
1b31e9f6
|
2020-10-13T21:08:13
|
|
Added support for game controller rumble on iOS 14
|
|
2d7b33cb
|
2020-10-13T21:08:11
|
|
Added support for the controller home button on iOS 14
|
|
345b4d7e
|
2020-05-29T13:37:21
|
|
Fixed bug 5161 - Autodetect controller mappings based on the Linux Gamepad Specification
Jan Bujak
I wrote a new driver for my gamepad on Linux. I'd like SDL to support it out-of-box, as currently it just treats it as a generic joystick instead of a gamepad. From what I can see the only way to do that is to either 1) pick one of the already supported controllers' PID, VID and button layouts and have my driver send that (effectively lying that it's something else), or 2) submit a preconfigured, hardcoded mapping to SDL.
Both of those, in my opinion, are silly when we already have the Linux Gamepad Specification which standarizes this:
https://www.kernel.org/doc/html/v4.15/input/gamepad.html
Unfortunately SDL doesn't make use of it currently. So I've took it upon myself to add it; patch is in the attachments.
Basically what the patch does is that if SDL finds no built-it controller mappings for a given joystick it then asks the joystick backend to autodetect it, and that uses the relevant evdev bits to figure out which button/axis is which. (See the specs for more details.)
With this patch applied my own driver for my controller works out-of-box with SDL with no extra configuration and is correctly recognized as a gamepad; this is also going to be the case for any other driver which follows the Linux Gamepad Specification.
|
|
e9f567c7
|
2020-05-27T10:14:08
|
|
Fixed building on iOS with MFI controllers disabled
|
|
83cddd2e
|
2020-04-30T11:57:29
|
|
Add SDL_JoystickSetLED.
Currently, this is only supported by the PS4 HIDAPI driver.
|
|
c44473ba
|
2020-03-12T19:47:30
|
|
Unified code to standardize joystick names
|
|
6efebf17
|
2020-02-04T12:48:53
|
|
Moved rumble expiration to the main joystick handling level, and prevent sending the driver layer duplicate rumble requests.
|
|
c9c89783
|
2020-01-29T20:09:08
|
|
Miscellaneous pending fixes
|
|
a8780c6a
|
2020-01-16T20:49:25
|
|
Updated copyright date for 2020
|
|
cb800d1c
|
2020-01-13T22:05:56
|
|
Fixed compiler warning
|
|
46e1377d
|
2019-12-20T20:12:03
|
|
Automatically assign player indexes to game controllers, and allow changing the player index for game controllers and joysticks.
Added the functions SDL_JoystickFromPlayerIndex(), SDL_JoystickSetPlayerIndex(), SDL_GameControllerFromPlayerIndex(), and SDL_GameControllerSetPlayerIndex()
|
|
135a9053
|
2019-12-06T13:48:13
|
|
Fixed the Apple TV remote menu button on tvOS 13.2 (thanks Romain Tisserand)
|
|
7a51ad6a
|
2019-12-06T13:48:10
|
|
Fixed the game controller menu button on tvOS 13.2 (thanks Romain Tisserand)
|
|
73536d93
|
2019-07-12T21:28:43
|
|
ios: Fixed MFi guide button not being detected (thanks, Caleb!).
Fixes Bugzilla #4721.
|
|
4eb3c0c3
|
2019-06-14T13:56:52
|
|
Added support for Xbox and PS4 wireless controllers on iOS and tvOS
Also implemented SDL_JoystickGetDevicePlayerIndex() on iOS and tvOS, and added support for reading the new menu button state available in iOS and tvOS 13.
|
|
20ec8664
|
2019-06-06T08:20:53
|
|
Added support for the Rotor Riot gamepad, and upcoming Xbox and PS4 controller support on iOS and tvOS
Patch contributed by Nat Brown
|
|
65e07b38
|
2019-01-31T19:52:47
|
|
iOS/tvOS: fix support for SDL_GameControllerGetButton(controller, GUIDE) with MFi controllers (thanks Caleb!)
Fixes bug #4463.
|
|
5e13087b
|
2019-01-04T22:01:14
|
|
Updated copyright for 2019
|
|
14329256
|
2018-10-25T16:53:14
|
|
Generalized the XInput user index into a player index
|
|
888bf1af
|
2018-08-09T16:03:50
|
|
Worked around bug with Sony PS Now PS3 controller where DirectInput polling will continue to return success after the controller is unplugged.
The code is now reliant on SDL_PrivateJoystickAdded() and SDL_PrivateJoystickRemoved() being called correctly when devices are added or removed on Windows
|
|
d2042e1e
|
2018-08-09T16:00:17
|
|
Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms.
Added SDL_GameControllerRumble() and SDL_JoystickRumble() for simple force feedback outside of the SDL haptics API
|
|
8e062f69
|
2018-03-19T14:42:51
|
|
Generalized the handling of instantaneous guide button presses so there's a minimum of 100 ms between guide button press and release.
This happens with at least the following controllers: All Apple MFI controllers, ASUS Gamepad, XiaoMi Bluetooth Controller
|
|
129431b4
|
2018-03-08T16:32:22
|
|
Delay delivery of the pause button release on MFI controllers so it doesn't happen in the same frame as the button press
|