|
b4d54790
|
2022-12-07T14:53:33
|
|
Use the correct name for the DualSense controllers
(cherry picked from commit 9a6bcca6b8db999217f157dab8c44bf27b0a8eb4)
|
|
4ee36a94
|
2022-12-07T14:25:53
|
|
Added support for the DualSense Edge paddles
(cherry picked from commit 9339085593dc20b1f003f26b3c40615cf04504b0)
|
|
7ac66972
|
2022-12-03T09:45:04
|
|
Detect Logitech PRO Racing Wheel as wheel
(cherry picked from commit 5650046f931e9b1d7d7f4a1867e6e1ed75a5e7c5)
|
|
423c558e
|
2022-12-01T14:43:34
|
|
Detect the G923 (Xbox style) and PXN V900 (PS3 mode) as wheels
(cherry picked from commit 7237c5649994d2b2c2b364c3b116a6db80ea671d)
|
|
d0bbfdbf
|
2022-12-01T16:07:03
|
|
Clang-Tidy fixes (#6725)
(cherry picked from commit 3c501b963dd8f0605a6ce7978882df39ba76f9cd)
|
|
01541bc3
|
2022-11-30T16:42:00
|
|
Added support for the HORIPAD Pro for Xbox Series X
|
|
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)
|
|
89e9f7b4
|
2022-11-28T23:10:02
|
|
Added support for the Xbox Elite controller paddles with firmware version 5.13+
|
|
fb0ce375
|
2022-11-27T17:38:43
|
|
Cleanup add brace (#6545)
* Add braces after if conditions
* More add braces after if conditions
* Add braces after while() conditions
* Fix compilation because of macro being modified
* Add braces to for loop
* Add braces after if/goto
* Move comments up
* Remove extra () in the 'return ...;' statements
* More remove extra () in the 'return ...;' statements
* More remove extra () in the 'return ...;' statements after merge
* Fix inconsistent patterns are xxx == NULL vs !xxx
* More "{}" for "if() break;" and "if() continue;"
* More "{}" after if() short statement
* More "{}" after "if () return;" statement
* More fix inconsistent patterns are xxx == NULL vs !xxx
* Revert some modificaion on SDL_RLEaccel.c
* SDL_RLEaccel: no short statement
* Cleanup 'if' where the bracket is in a new line
* Cleanup 'while' where the bracket is in a new line
* Cleanup 'for' where the bracket is in a new line
* Cleanup 'else' where the bracket is in a new line
(cherry picked from commit 6a2200823c66e53bd3cda4a25f0206b834392652 to reduce conflicts merging between SDL2 and SDL3)
|
|
d167cd67
|
2022-11-21T09:02:10
|
|
Added the Gunfighter Mk.III ‘Space Combat Edition’ as a flight stick
|
|
8b20b568
|
2022-11-21T07:41:35
|
|
Don't report battery level for disconnected batteries
Fixes https://github.com/libsdl-org/SDL/issues/6536
|
|
ec58a817
|
2022-10-05T19:26:09
|
|
Fixes made in response to running a static code analyzer under MS Windows.
Most of these are probably harmless, but the changes to SDL_immdevice.c and SDL_pixels.c appear to have fixed genuine bugs.
SDL_audiocvt.c: By separating the calculation of the divisor, I got rid of the suspicion that dividing a double by an integer led to loss of precision.
SDL_immdevice.c: Added a missing test, one that could have otherwise led to dereferencing a null pointer.
SDL_events.c, SDL_gamecontroller.c, SDL_joystick.c, SDL_malloc.c, SDL_video.c: Made it clear the return values weren't used.
SDL_hidapi_shield.c: The size is zero, so nothing bad would have happened, but the SDL_memset() was still being given an address outside of the array's range.
SDL_dinputjoystick.c: Initialize local data, just in case IDirectInputDevice8_GetProperty() isn't guaranteed to write to it.
SDL_render_sw.c: drawstate.viewport could be null (as seen on line 691).
SDL.c: SDL_MostSignificantBitIndex32() could return -1, though I don't know if you want to cope with that (what I did) or SDL_assert() that it can't happen.
SDL_hints.c: Replaced boolean tests on pointer values with comparisons to NULL.
SDL_pixels.c: Looks like the switch is genuinely missing a break!
SDL_rect_impl.h: The MacOS static checker pointed out issues with the X comparisons that were handled by assertions; I added assertions for the Y comparisons.
SDL_yuv.c, SDL_windowskeyboard.c, SDL_windowswindow.c: Checked error-result returns.
|
|
b7e65a81
|
2022-11-11T08:57:07
|
|
Fixed incorrect WGI controller state when the application loses focus
Recenter the controller elements when WGI stops reporting valid state
Fixes https://github.com/libsdl-org/SDL/issues/5261
|
|
3dc88da0
|
2022-11-08T13:27:56
|
|
Fix Dualshock 4 rumble stopping too early
Dualshock 4 controller only rumbles for 5 seconds maximum. Resend
rumble command every 2 seconds to make long rumble work.
|
|
02bc359b
|
2022-11-07T19:31:18
|
|
Shorten "Bensussen Deutsch & Associates,Inc.(BDA)" to "BDA" for controller names
|
|
a6018ae5
|
2022-10-25T10:23:51
|
|
Added support for the NVIDIA SHIELD controller v1.03 to the HIDAPI driver
|
|
5b8f830e
|
2022-10-22T09:24:28
|
|
Virtual joysticks don't need initial axis jitter protection
Fixes https://github.com/libsdl-org/SDL/issues/6426
|
|
333935ff
|
2022-10-17T11:10:53
|
|
Make sure we completely unlock joysticks when opening HIDAPI devices
Also lock the joysticks when adding and removing Android joysticks
|
|
120a957d
|
2022-10-14T09:57:02
|
|
Added support for the Qanba Drone Arcade Stick
|
|
65527537
|
2021-03-30T04:32:39
|
|
N3DS port (squashed)
A dedicated renderer using Citro3D would likely allow for better
much better graphical performances.
|
|
2c518747
|
2022-09-27T09:56:02
|
|
Added microsecond timestamp to sensor values for PS4 and PS5 controllers using the HIDAPI driver
|
|
4ea64fee
|
2022-09-23T15:28:32
|
|
Fixed manufacturer/product name deduplication for the Razer Raiju Tournament Edition controller
|
|
34f928ab
|
2022-09-23T09:26:18
|
|
Generate the correct name for ASTRO Gaming controllers
Manufacturer "ASTRO Gaming" and product "ASTRO C40" turns into "ASTRO C40"
|
|
6ddef7c2
|
2022-09-23T09:20:27
|
|
Generate the correct name for Qanba and Mad Catz controllers
|
|
b7940c29
|
2022-09-23T00:15:40
|
|
Allow HIDAPI controllers to override the default joystick type
|
|
fa2063fb
|
2022-09-22T23:42:25
|
|
Improved detection of third party PS4 and PS5 controllers
|
|
2e9f5b59
|
2022-09-16T15:41:35
|
|
Added support for the HORI Fighting Commander OCTA (Xbox Series X and PS versions)
|
|
12413ab3
|
2022-09-08T13:33:04
|
|
Lock joysticks while attaching a virtual one
|
|
40715732
|
2022-09-08T11:50:56
|
|
Don't try to second guess DS4Windows, let it remap things as expected.
DS4Windows can create both emulated Xbox and emulated PS4 controllers, and we don't know which the user has it doing, so don't try to second guess it, just let it do it's thing. Users should follow the remapping software recommendations on when to enable/disable it for various situations.
Fixes https://github.com/libsdl-org/SDL/issues/6167
|
|
f398d8a4
|
2022-09-07T11:53:13
|
|
Note that the Logitech Extreme 3D is a flight stick
|
|
0a05b281
|
2022-09-07T11:51:16
|
|
Make sure we hold the joystick lock when updating the device state while opening it
|
|
1b4e08b8
|
2022-09-02T17:04:30
|
|
Added an entry for the Hori Fighting Stick mini 4 kai
This is a PS3/PS4 arcade stick which becomes an Xbox 360 controller on PC
|
|
92d3fc48
|
2022-08-30T12:58:38
|
|
Fixed deadlock when shutting down the Windows joystick system
|
|
0e4baf1c
|
2022-08-30T12:39:23
|
|
Don't crash if SDL functions are passed a closed joystick or gamecontroller
|
|
40bd4fee
|
2022-08-30T11:42:13
|
|
Revamped joystick locking
This makes the joystick locking more robust by holding the lock while updating joysticks.
The lock should be held when calling any SDL joystick function on a different thread than the one calling SDL_PumpEvents() and SDL_JoystickUpdate().
It is now possible to hold the lock while reinitializing the joystick subsystem, however any open joysticks will become invalid and potentially cause crashes if used afterwards.
Fixes https://github.com/libsdl-org/SDL/issues/6063
|
|
b2ac758f
|
2022-08-29T17:33:00
|
|
Added support for the Hori Fighting Stick Alpha to the HIDAPI driver
|
|
0b8b321f
|
2022-08-28T23:01:30
|
|
Allow the product version to be different when trying to find a controller mapping
This is in the hope that revving the product version doesn't change the mapping, which is the case for some devices. In cases where it does, we just need to provide a mapping for each version of the product.
|
|
32700294
|
2022-08-28T17:56:11
|
|
Don't crash if SDL_CreateJoystickGUID() is passed a NULL name
|
|
3cbfd75d
|
2022-08-27T18:55:55
|
|
Re-added the CRC to the joystick guid
This is now used as a crc field in the mapping rather than directly in mapping guids, for better mapping compatibility between versions of SDL.
Added SDL_GetJoystickGUIDInfo() to get device information encoded in a joystick GUID, so that mapping programs can clear the CRC from the GUID when generating mappings.
sort_controllers.py has been updated to extract the CRC from mappings created by older mapping programs and convert it into the new crc field. It will also take the CRC into account when checking for duplicate mappings.
Also regenerated the GUIDs for the PS2/PSP/Vita controller mappings, fixing https://github.com/libsdl-org/SDL/issues/6151
|
|
9a01eac5
|
2022-08-26T13:45:05
|
|
Temporarily disable joystick GUID CRCs
|
|
f6c2c22d
|
2022-08-25T22:25:25
|
|
Don't try to use the charging port for the PowerA wireless controller as an input device
|
|
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
|
|
c6c688ab
|
2022-08-14T14:55:32
|
|
Add SDL_JOYBATTERYUPDATED event to SDL_JoystickEventState()
|
|
55882e43
|
2022-08-09T00:19:02
|
|
Fixed invalid read when SDL_GameControllerSetPlayerIndex() is passed a negative player_index
|
|
593d20d9
|
2022-08-08T20:11:43
|
|
Removed debug logging
|
|
6204ae50
|
2022-08-08T20:09:49
|
|
Restart the IMU if the controller stops sending gyro/accel data
|
|
ada55c69
|
2022-08-08T15:38:19
|
|
Fixed Joy-Con type detection for the Nintendo Joy-Con Charging Grip
|
|
87825972
|
2022-08-08T08:22:20
|
|
Added SDL_GameControllerType enumeration for Nintendo Switch Joy-Con controllers
|
|
4f19421e
|
2022-08-07T20:17:40
|
|
Fixed build
|
|
29265d07
|
2022-08-07T18:49:30
|
|
Use SDL_GetStringBoolean() to parse the hint value
|
|
ea7fbf79
|
2022-08-03T19:39:37
|
|
Update in-flight SDL_CONTROLLERDEVICEADDED messages when a device is removed
This fixes the application trying to open the wrong device index when a device is removed and another has just been added
|
|
29cdb2c9
|
2022-08-03T18:01:10
|
|
Added support for the Nintendo Switch Joy-Con Charging Grip
|
|
a8120104
|
2022-08-03T13:53:49
|
|
The Nintendo Online classic controllers and Joy-Cons shouldn't show up as Switch Pro controllers
|
|
41c363f7
|
2022-07-29T16:27:23
|
|
Note that the PDP Versus Fighting Pad is an arcade fighting pad
|
|
d8fd7873
|
2022-07-28T21:44:23
|
|
Added entry for the Nintendo Switch Joy-Con controller pair
|
|
2fa2f9ff
|
2022-07-28T19:22:27
|
|
Greatly improved Nintendo Joy-Con support using the HIDAPI driver
* Added support for mini-gamepad mode for Joy-Con controllers, matching the mapping for hid-nintendo on Linux and iOS 16
* Added the ability to merge left and right Joy-Con controllers into a single Pro-style controller
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_SWITCH_COMBINE_JOY_CONS to control this merging functionality
* Removed the hint SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS
|
|
be3a945a
|
2022-07-20T11:05:55
|
|
Added support for the 8BitDo Ultimate Wired Controller for Xbox
|
|
4fa26533
|
2022-07-12T00:55:00
|
|
SDL_GetJoystickGUIDInfo: byte-swap vendor, product and version values.
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
|
|
6e712d24
|
2022-07-09T22:55:36
|
|
joystick: Add HIDAPI driver for NVIDIA SHIELD 2017 controller
Basic input already works using the OS HID driver, but this enables
force feedback and battery state reporting.
|
|
3b191580
|
2022-06-27T17:19:39
|
|
Windows GDK Support (#5830)
* Added GDK
* Simplfied checks in SDL_config_wingdk.h
* Added testgdk sample
* Added GDK readme
* Fixed error in merge of SDL_windows.h
* Additional GDK fixes
* OpenWatcom should not export _SDL_GDKGetTaskQueue
* Formatting fixes
* Moved initialization code into SDL_GDKRunApp
|
|
7fd46ec5
|
2022-06-18T17:40:53
|
|
Initial PS2_Joystick implementation
|
|
eb7e29a8
|
2022-06-17T17:43:14
|
|
Fixed crash when the joystick product name isn't available
|
|
16f55fbd
|
2022-06-15T20:44:43
|
|
Separate the controller protocol from the controller style
This allows us to handle controllers that use the Xbox protocol but look like Nintendo Switch or Playstation controllers, like the Qanba Dragon Arcade Stick in PC mode
|
|
a9cf313e
|
2022-06-15T17:28:29
|
|
Added the Qanba Obsidian and Dragon Arcade Sticks to the arcade stick list
|
|
72fea0ed
|
2022-06-15T13:58:28
|
|
Added support for the Qanba Dragon Arcade Joystick
|
|
68544be4
|
2022-06-10T11:31:59
|
|
Added support for the Nintendo Online controllers
|
|
c7f41038
|
2022-06-09T13:47:29
|
|
Special case for k_eControllerType_XInputSwitchController in the raw input path
|
|
e6cb0822
|
2022-06-09T13:20:38
|
|
Fixed the default mapping on Windows for the HORI Fighting Commander
|
|
3a20274d
|
2022-06-04T20:16:28
|
|
Refactoring: move GUID operations out of Joystick
- SDL_JoystickGUID -> SDL_GUID (though we retain a type alias)
- Operations for GUID <-> String ops are now in
src/SDL_guid.c and include/SDL_guid.h
- The corresponding Joystick operations delegate to SDL_guid.c
- Added test/testguid.c
|
|
423141bf
|
2022-06-03T18:49:41
|
|
Added a function to get the controller firmware version
|
|
b28d304b
|
2022-05-24T17:24:03
|
|
Only include controller_type.h in SDL_joystick.c
It has a huge array of controllers and we only want it instantiated once
|
|
b1cf3229
|
2022-05-19T16:49:47
|
|
Fixed HIDAPI PS4 controller being picked up when running under Steam
Input with PS4 configuration enabled
|
|
48b6cd8b
|
2022-05-16T07:23:30
|
|
Fixed whitespace
|
|
94eeb587
|
2022-05-15T20:01:12
|
|
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
|
|
e551384a
|
2022-04-26T14:54:14
|
|
Added functions to get the platform dependent name for a joystick or game controller
|
|
3dcfe860
|
2022-02-02T13:59:49
|
|
Add joystick battery event
|
|
2398c43b
|
2022-03-24T14:34:37
|
|
add some Thrustmaster wheels
|
|
4fe7b2cb
|
2022-03-24T11:00:43
|
|
static analysis: Fixed several complaints from codechecker.
There are still some pending Objective-C specific issues.
Reference issue #4600.
|
|
1868c5b5
|
2022-03-17T18:25:50
|
|
Start rumbling once a raw input controller has been correlated
Fixes https://github.com/libsdl-org/SDL/issues/5351
|
|
bcb0f1de
|
2022-03-17T08:52:31
|
|
Fixed build when events are disabled
Fixes https://github.com/libsdl-org/SDL/issues/5413
|
|
1b766937
|
2022-03-08T09:58:24
|
|
Fixed the SDL controller type for USB_PRODUCT_XBOX_ONE_XINPUT_CONTROLLER
|
|
af40cb6f
|
2022-02-23T15:49:10
|
|
Added support for the Razer Huntsman Analog keyboard in controller mode
|
|
18032979
|
2022-02-15T13:07:51
|
|
Added the hint SDL_HINT_JOYSTICK_ROG_CHAKRAM to control whether ROG Chakram mice show up as joysticks
This hint defaults off, but when it is enabled the mice will have a game controller mapping set up for Profile 3 (set in the Armoury Crate software)
|
|
86b7a064
|
2022-02-04T16:40:05
|
|
Add additional VID/PIDs for Anne Pro II
This thing changes its VID/PID on firmware revisions...
|
|
5b744592
|
2022-01-28T06:11:28
|
|
Update SDL_joystick.c
Add Logitech Momo Racing Wheel VID & PID to SDL_IsJoystickProductWheel function
|
|
419ae29d
|
2022-01-03T21:44:18
|
|
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.
|
|
120c76c8
|
2022-01-03T09:40:00
|
|
Updated copyright for 2022
|
|
82fc67ae
|
2021-12-18T14:01:02
|
|
SDL_joystick.c: cast the arguments to nibble() to unsigned char.
|
|
47d3e96b
|
2021-12-18T14:01:02
|
|
SDL_joystick.c: (unsigned char) cast to SDL_tolower() parameters.
|
|
a6cbe0ab
|
2021-11-27T10:58:12
|
|
Controllers are always centered at zero using XInput and WGI
|
|
d8618204
|
2021-11-26T07:57:19
|
|
SDL_JoystickGetAttached() doesn't need to be noisy for NULL joystick
Fixes https://github.com/libsdl-org/SDL/issues/5008
|
|
1237142b
|
2021-11-18T19:52:34
|
|
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.
|
|
fe09a493
|
2021-11-11T15:53:11
|
|
joystick: Add APIs to query rumble support
|
|
1ccfbf96
|
2021-11-11T11:13:08
|
|
joystick: Convert HasLED() into a generic GetCapabilities() function
|
|
7681929c
|
2021-11-09T12:30:37
|
|
Don't send the initial joystick axis event if the application is in the background
|
|
d31f90d9
|
2021-11-09T12:09:01
|
|
Don't send game controller touchpad or sensor events unless the application has focus
Fixes https://github.com/libsdl-org/SDL/issues/4891
|
|
26706319
|
2021-10-30T05:53:12
|
|
Ignore the ASRock LED controller, it's not a joystick
|
|
a43d3f69
|
2021-10-20T15:19:22
|
|
Don't detect the ROG Chakram mouse as a joystick
|
|
9706feac
|
2021-10-01T15:11:25
|
|
Update length after shortening string (thanks mayraud705!)
Closes https://github.com/libsdl-org/SDL/pull/4698
|