|
3dbc6a40
|
2022-12-26T10:24:25
|
|
render: only enable clipping when the rectangle is valid
Fixes https://github.com/libsdl-org/SDL/issues/6896
(cherry picked from commit 00f05dcf49602889733262fc810386592ff51736)
|
|
af54c821
|
2022-12-23T09:52:45
|
|
kmsdrm: Fix wrong check on KMSDRM_CreateWindow.
A previous cleanup commit inverted a statement that checked the return value of
a KMSDRM_CreateSurfaces call during KMSDRM_CreateWindow, which causes the video
backend to always fail despite success.
This commit restores the intended behavior.
Fixes: 3c501b963dd8 ("Clang-Tidy fixes (#6725)").
(cherry picked from commit 0187209f461b84d22fc49a03369506e06448f47f)
|
|
232ed540
|
2022-12-02T07:22:31
|
|
Add SDL_HINT_WINDOWS_ENABLE_MENU_MNEMONICS.
|
|
c542aef6
|
2022-12-20T23:22:55
|
|
Fix GDK OpenGL build error
|
|
abffa119
|
2022-12-20T23:05:31
|
|
Fix dynapi signature for SDL_GDKSuspendComplete
|
|
3b3c141f
|
2022-12-19T17:38:44
|
|
gdk: Add support for building with OpenGL on Xbox
|
|
6969b3be
|
2022-12-19T09:14:04
|
|
Don't send Razer devices the Sony third-party query feature report
Some of them lock up or reset, and the vast majority of devices are not actually game controllers.
Fixes https://github.com/libsdl-org/SDL/issues/6733
(cherry picked from commit 83b29f9ce1fe6caa06769544c3b5f6c10ea97a0f)
|
|
311b02f0
|
2022-12-19T17:02:10
|
|
Android active driver check (#6850)
Check if a driver is active before attempting to handle the devices.
Otherwise an assertion will fail.
|
|
36c87d9f
|
2022-12-18T16:55:59
|
|
Android JAVA DetectDevices: 'is_capture' is inverted (#6845)
* Android JAVA DetectDevices: 'is_capture' is inversed
* Android Audio: adding audio device. also inverted capture, from jni side
|
|
4e3fc0c1
|
2022-12-18T12:07:38
|
|
Android: make Detect devices common between aaudio and android driver. (#6828)
remove VLA, dynamic alloc, check max length get using GetIntArrayRegion
|
|
187708e5
|
2022-12-17T06:58:02
|
|
Fixed compiler warning
```
./src/thread/pthread/SDL_syssem.c:140:12: warning: variable 'retval' is used uninitialized whenever 'while' loop exits because its condition is false [-Wsometimes-uninitialized]
while (sem_trywait(&sem->sem) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/thread/pthread/SDL_syssem.c:149:12: note: uninitialized use occurs here
return retval;
^~~~~~
./src/thread/pthread/SDL_syssem.c:140:12: note: remove the condition if it is always true
while (sem_trywait(&sem->sem) != 0) {
```
This was a legitimate bug, thank you clang!
Fixes https://github.com/libsdl-org/SDL/issues/6830
(cherry picked from commit b678a9802435152324e0603055e4bb190d0ae526)
|
|
3b0cd441
|
2022-12-17T06:51:02
|
|
Fixed compiler warning
```
./src/joystick/SDL_joystick.c:105:12: warning: no previous extern declaration for non-static variable 'SDL_joystick_lock' [-Wmissing-variable-declarations]
SDL_mutex *SDL_joystick_lock = NULL; /* This needs to support recursive locks */
^
./src/joystick/SDL_joystick.c:105:1: note: declare 'static' if the variable is not intended to be used outside of this translation unit
SDL_mutex *SDL_joystick_lock = NULL; /* This needs to support recursive locks */
^
```
1 warning generated.
|
|
741499de
|
2022-12-16T17:38:57
|
|
Android audio device selection (#6824)
Make it possible to select a specific audio device for Android
|
|
a53382e4
|
2022-12-15T18:00:51
|
|
Sorted PS4 controllers, note that the NACON Wireless Controller for PS4 actually reports as an XInput device
|
|
e99b9ca9
|
2022-12-15T17:58:29
|
|
Note that the NACON Daija Arcade Stick is an arcade stick
|
|
7a9966af
|
2022-12-14T14:24:58
|
|
Fixed crash in SDL_PrivateGameControllerRefreshMapping()
|
|
d59caffe
|
2022-12-13T14:03:40
|
|
Added support for clang thread-safety analysis
The annotations have been added to SDL_mutex.h and have been made public so applications can enable this for their own code.
Clang assumes that locking and unlocking can't fail, but SDL has the concept of a NULL mutex, so the mutex functions have been changed not to report errors if a mutex hasn't been initialized. We do have mutexes that might be accessed when they are NULL, notably in the event system, so this is an important change.
This commit cleans up a bunch of rare race conditions in the joystick and game controller code so now everything should be completely protected by the joystick lock.
To test this, change the compiler to "clang -Wthread-safety -Werror=thread-safety -DSDL_THREAD_SAFETY_ANALYSIS"
|
|
582fb390
|
2022-12-14T17:41:35
|
|
DBus: add a reference to the connection
Fixed bug #6712
|
|
c7097418
|
2022-12-12T20:26:17
|
|
Detect display change when fullscreen desktop windows move displays
This happens when using Win+Alt+Left/Right on a resizable fullscreen desktop window on Windows
(cherry picked from commit 650e16a8245f3fb5056fc7f6b398fb88244b3477)
|
|
817454cf
|
2022-12-12T18:00:57
|
|
Don't try to open the Razer Huntsman Elite keyboard as a controller
|
|
e986c798
|
2022-12-12T16:07:48
|
|
wasapi: Fixed incorrect assertions.
Fixes #6795.
(cherry picked from commit 12486e144be0e7a37abd87b8bf90547a992ff66b)
|
|
dfd7efaf
|
2022-12-05T15:33:01
|
|
wayland: Set xdg surface geometry
It was previously thought that these function calls were unnecessary as the initial bug and reproduction case that necessitated their addition seemed to be fixed, but apparently there are still cases where this needs to be set explicitly. Set the xdg surface geometry at creation time and when the window size changes.
Partially reverts #6361. This is not needed in the libdecor path, as libdecor calls this for the content surface internally.
(cherry picked from commit 90a964f132c63b07cf85e5687041d214fdea60f6)
|
|
802b5ef7
|
2022-12-12T10:54:29
|
|
Added support for the STRIKEPAD PS4 Grip Add-on to the HIDAPI driver
(cherry picked from commit 618340bf990512247ed29a1beb38606e371d60e8)
|
|
e580e087
|
2022-12-06T17:53:01
|
|
N3DS: Backport semaphore fixes from #6776.
|
|
faa7e3cc
|
2022-12-10T17:54:16
|
|
Update DYNAPI SDL_WinRTRunApp() prototype which was wrong (see #6783)
|
|
5efc9bd1
|
2022-12-10T17:45:56
|
|
SDL_dynapi_procs: fixed SDL_UIKitRunApp prototype (see #6783)
|
|
f5777683
|
2022-12-09T10:22:18
|
|
Fixed build
|
|
569fa3f5
|
2022-12-09T10:13:18
|
|
Added test event logging for SDL_WINDOWEVENT_ICCPROF_CHANGED and SDL_WINDOWEVENT_DISPLAY_CHANGED
|
|
be3b1cff
|
2022-12-08T17:03:29
|
|
Added logging for SDL_DISPLAYEVENT_MOVED
|
|
ab479b49
|
2022-12-08T17:01:18
|
|
Make sure the display list is up to date for window placement
|
|
264da8c1
|
2022-12-08T12:46:13
|
|
Added SDL_DISPLAYEVENT_MOVED to detect when display positioning changes
|
|
cfc7cac3
|
2022-12-08T12:43:23
|
|
Fixed memory leak when removing existing displays
|
|
8b74be46
|
2022-12-08T10:56:55
|
|
wayland: Handle the Num Lock and Caps Lock modifiers via modifier events
Num Lock and Caps Lock always need to be explicitly handled by the modifier handler function, or they won't be correctly set if active at application startup, or if the lock state is changed while the application lacks focus since a key press for these keys will never be received. In these cases, the internal SDL modifier state can end up the inverse of the actual modifier state.
(cherry picked from commit 653e484da17d773f40bff94121a23a3b38f47a0a)
|
|
fc689a6c
|
2022-12-07T16:06:17
|
|
Fixed build
|
|
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)
|
|
d1b48105
|
2022-12-05T13:36:51
|
|
Fixed centering the D-pad on some joysticks
Fixes https://github.com/libsdl-org/SDL/issues/6767
|
|
7ac66972
|
2022-12-03T09:45:04
|
|
Detect Logitech PRO Racing Wheel as wheel
(cherry picked from commit 5650046f931e9b1d7d7f4a1867e6e1ed75a5e7c5)
|
|
3e9ae3ea
|
2022-12-03T13:36:09
|
|
Fix wrong clang-tidy modification. This is an integer division. Thanks @meyraud705 (see PR #6725)
|
|
0a91a793
|
2022-12-02T21:11:33
|
|
Fix Conditional jump or move depends on uninitialised value(s)
eg ./testsprite2 --trackmem
|
|
b5483f2c
|
2022-12-01T18:03:36
|
|
Fix formatting on Wayland and Pipewire function signatures
Fixes the formatting on some function signatures that clang-format missed.
(cherry picked from commit 378b1c286a9c3206e827a47f0147384e92c4c2b2)
|
|
b990e914
|
2022-12-02T02:13:59
|
|
build fixes after d0bbfdbfb881e5407911d84c12899bd5b442a130
|
|
3bdc6221
|
2022-12-01T15:11:29
|
|
Fixed Apple build after d0bbfdbfb881e5407911d84c12899bd5b442a130
|
|
423c558e
|
2022-12-01T14:43:34
|
|
Detect the G923 (Xbox style) and PXN V900 (PS3 mode) as wheels
(cherry picked from commit 7237c5649994d2b2c2b364c3b116a6db80ea671d)
|
|
42238f88
|
2022-12-01T13:28:48
|
|
Fixed build after d0bbfdbfb881e5407911d84c12899bd5b442a130
|
|
d0bbfdbf
|
2022-12-01T16:07:03
|
|
Clang-Tidy fixes (#6725)
(cherry picked from commit 3c501b963dd8f0605a6ce7978882df39ba76f9cd)
|
|
09ee811f
|
2022-12-01T09:39:08
|
|
Small format changed (using clang-format 15.0.2-1)
(cherry picked from commit 778b8926b4808f0642a331ed84a9e8e19899b6db)
|
|
b067ab92
|
2022-12-01T03:11:00
|
|
restore SDL_malloc.c original formatting.
(cherry picked from commit 45025799b75f544251f4a853e1c3f206243f0109)
|
|
6e40c7a9
|
2022-11-30T17:03:29
|
|
Added support for the Logitech Cordless Precision PS3 controller
|
|
01541bc3
|
2022-11-30T16:42:00
|
|
Added support for the HORIPAD Pro for Xbox Series X
|
|
4504c10f
|
2022-11-30T16:37:20
|
|
Re-enabled support for third party PS3 controllers
|
|
7b100001
|
2022-11-30T15:51:17
|
|
Reverted code formatting for Apple platforms
We didn't get the merge right, and rather than tease out exactly what happened, I'm just reverting for now.
|
|
9e997cc7
|
2022-11-30T15:39:10
|
|
Fixed Victrix FS Pro V2 controller hang on reboot
|
|
d87048fd
|
2022-11-30T14:37:34
|
|
Fixed crash if GetRectDisplayIndex() is called before SDL_VideoInit()
|
|
6926d046
|
2022-11-30T13:05:57
|
|
Fixed build after cherry-pick of 5750bcb174300011b91d1de20edb288fcca70f8c from SDL3
|
|
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)
|
|
d7664a6e
|
2022-07-11T19:28:37
|
|
Support wayland fractional scale protocol
The new protocol adds support for more native communication of
fractional scaling.
Everything in the wayland backend already existed only our fractional
scale was calculated implicitly through a combination of output size
guesswork for fullscreen windows.
This new protocol makes that explicit, providing a more robust solution
and a solution for non-fullscreen surfaces. The fallback code is still
left in place for now whilst compositors gain support.
|
|
69f02234
|
2022-11-29T14:13:02
|
|
dynapi: Abstract out the environment variable name.
(cherry picked from commit cc487ffb801f862aec7e2b415e74c563c4d528d5)
|
|
72484511
|
2022-11-29T18:43:36
|
|
video: fix error messages
- do not overwrite error message set by SDL_InitFormat (SDL_AllocFormat)
- set proper error message (Cocoa_Metal_CreateView)
- protect against allocation failure (UIKit_Metal_CreateView)
(cherry picked from commit cf0cb44df88a4293805fdc926880155d58a46bea)
|
|
2d24baaa
|
2022-11-29T09:26:29
|
|
Fixed building on Windows with SDL_VIDEO=OFF
Fixes https://github.com/libsdl-org/SDL/issues/6562
|
|
b7cc4dce
|
2022-11-29T08:50:51
|
|
Fixed bug #6698 - VISA: wrong check sceKernelPollSema
(cherry picked from commit f077c691930f70a2e826eb40cbd0e35a7465a4af)
|
|
0b7a9a8e
|
2022-11-29T17:30:03
|
|
thread: code style
(cherry picked from commit 461a38ff1af1d749426c8e2c6f2a56e2b31c1a45)
|
|
8cda5102
|
2022-11-29T16:14:23
|
|
Fixed bug #6698 - VISA: wrong check sceKernelPollSema
|
|
ee13e8c7
|
2022-11-29T09:46:20
|
|
thread: return -1 from SDL_SemWaitTimeout if semaphore is NULL
(cherry picked from commit f6db1aba664079e63df44cbb6e6925a088b8f3a8)
|
|
fcd7d658
|
2022-11-29T11:18:30
|
|
thread: fix inconsistent return values
- SDL_CreateMutex returns NULL when the creation fails (ngage)
- SDL_SemValue returns 0 when the semaphore is NULL (n3ds)
(cherry picked from commit 6875e1c262ae968a4fb52b367cf6912d9c76d4c9)
|
|
89e9f7b4
|
2022-11-28T23:10:02
|
|
Added support for the Xbox Elite controller paddles with firmware version 5.13+
|
|
b6c875a9
|
2022-11-28T17:01:16
|
|
Add support for the 8BitDo Ultimate Wireless 2.4GHz Controller in DirectInput mode
Generated using controller map
|
|
a65d1bfb
|
2022-11-28T18:37:34
|
|
Fix broken solaris build. (missing brace).
missing brace.
|
|
37d244ea
|
2022-11-28T14:48:32
|
|
Added support for the 8BitDo Ultimate Wired Controller in DirectInput mode, including the misc button and paddles
|
|
a937b5c4
|
2022-11-28T13:47:30
|
|
Add 8BitDo to the list of Xbox 360 third party vendors
Allows detection of the 8BitDo Ultimate Wired Controller
|
|
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)
|
|
0739d237
|
2022-11-27T21:19:41
|
|
[skip ci] Solaris getexecname() returns argv[0]
`argv[0]`/`getexexname()` are not always absolute paths by default and can be modified to anything the developer wants them to be.
Consider using `readSymLink("/proc/self/path/a.out")` instead and `getexecname()` as the fallback, since the symlink will always be the correct absolute path (unless /proc is ot mounted, but it is by default on Solaris and Illumos platforms).
(cherry picked from commit 4f5e9fd5bda0d58c2907f75fa4ea0c92c3a2525f)
|
|
81452121
|
2022-11-27T22:46:54
|
|
SDL_ResampleAudio: Fix float accumulation error
While 78f97108f9dad22db6708f28322561eb9828fc36 reduced the accumulation error, it was still big enough to cause distortions.
Fixes #6196.
|
|
2df39e64
|
2022-11-27T11:27:19
|
|
Fix build with Xcode < 7
The _Nullable attribute is not available in older versions.
(cherry picked from commit 9a64aa6f95298bf459f8b9dca583df7064956cd9)
|
|
8fddf146
|
2022-11-26T13:09:50
|
|
Temporary hack to address performance issues in https://github.com/libsdl-org/SDL/issues/6581#issuecomment-1327987916 (thanks @icculus!)
(cherry picked from commit 9c8369e097b229997875c0aeb4dc9cfdcde0e2b2)
|
|
3f5593d6
|
2022-11-26T13:57:12
|
|
cocoa: Patched to compile on macOS SDK < 10.10.
Fixes #6586.
(cherry picked from commit fa5adcafd52303fde86c64094462303404259d75)
|
|
e19c532e
|
2022-11-24T21:53:17
|
|
Add bitdraw.h, remove non-working stub class
(cherry picked from commit 67f31a19a8eb06ee80bccb9ec8cc8c34aa635b3d)
|
|
192cdf3d
|
2022-11-24T16:07:03
|
|
SDL_mfijoystick.m: remove VLA, so that projects can be built with error on vla
|
|
66bd1555
|
2022-11-23T23:11:25
|
|
wayland: Fix build when not using the shared Wayland libraries
Explicitly include the Wayland protocol headers when statically linking against the Wayland libraries or older system headers might be used instead of the local versions.
(cherry picked from commit 836eb224428aca3bdab2a6bf56d347262e475b15)
|
|
4c7156c1
|
2022-11-24T05:21:21
|
|
Avoid use of deprecated egrep/fgrep
GNU grep 3.8 emits a deprecation warning on use of egrep/fgrep.
Signed-off-by: Sam James <sam@gentoo.org>
(cherry picked from commit 3e7952ce8a0affd325c802755cae5fd843b86d99)
|
|
33e5de31
|
2022-11-24T11:06:37
|
|
vulkan_metal.h: Make compatible with ObjC ARC
Fixes #6598
(cherry picked from commit 239423e205496997a387b4f265b1cdaf5acd18cb)
|
|
3eaf5689
|
2022-11-23T18:11:50
|
|
wayland: Fix libdecor_dispatch signature
The function returns an int, not a bool.
(cherry picked from commit f47169fcba8a27bb0740b6b4993989ff9262c21f)
|
|
242ce20c
|
2022-11-24T07:37:36
|
|
SDL_mfijoystick.m: fix build with Xcode < 9
Fixes #6601.
(cherry picked from commit 53ca1f77029289a58f1a9963a00b637b903f494d)
|
|
f52e7199
|
2022-08-28T00:52:19
|
|
Check build-time SDK in LoadMainMenuNibIfAvailable
Fixes building against OS X 10.7 SDK.
(cherry picked from commit f8cebeea599ae65f36d388257a9d9a8ed8ada576)
|
|
e12c831b
|
2022-11-24T06:32:49
|
|
SDL_cocoaopengl.h: ensure CVDisplayLinkRef is defined
The typedef seems to be pulled in coincidentally with newer SDKs, but
older ones need to import the header explicitly.
(cherry picked from commit d2910904fb4062c313636c7595e971f1bf248075)
|
|
cd399caf
|
2022-11-23T22:50:10
|
|
fix dynapi after SDL_GDKSuspendComplete addition.
|
|
f6144dfe
|
2022-11-23T16:41:14
|
|
adds GDK suspend/resume basic handling (#6596)
|
|
dce6ed56
|
2022-11-22T10:56:44
|
|
Removed G29 from controller_type.c
We don't want the G29 to show up as a gamepad, Steam will create a virtual Xbox controller for it, which breaks racing games.
|
|
e3d430b8
|
2022-11-22T10:53:28
|
|
Revert "Added Linux mappings for the Logitech G29 in PS3 and PS4 modes"
This reverts commit 33a68f575f484723aa326f8a2d96f2b8a084da4a.
We don't want the G29 to show up as a gamepad, Steam will create a virtual Xbox controller for it, which breaks racing games.
|
|
ea8f8b6d
|
2022-11-21T16:36:10
|
|
Updated to version 2.27.0 for development
|
|
0bfeed06
|
2022-11-21T16:15:58
|
|
Updated to version 2.26.0 for release
|
|
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
|
|
fe396e30
|
2022-11-19T11:28:31
|
|
wayland: Use the cached window size when switching from non-floating to floating window state
When changing the window state from non-floating to floating (e.g. leaving fullscreen), libdecor can send bogus content sizes that are +/- the height of the window title bar and start 'walking' the window height in one direction or the other with every transition.
The floating window size is known, so use the cached value instead of the size reported by libdecor when restoring the floating state.
|
|
509939b1
|
2022-11-18T18:20:53
|
|
Disable the third party PS3 HIDAPI driver by default, the L3/R3 buttons are unknown
|
|
ff99e56d
|
2022-11-18T12:54:55
|
|
Fixed KMSDRM window creation failing if OpenGL libraries are not available, but GLES 2.0 libraries are
|
|
da9ba3a2
|
2022-11-18T12:17:27
|
|
If a CRTC doesn't have a mode configured, use the preferred or largest mode as the default mode
Fixes https://github.com/libsdl-org/SDL/issues/6421
|
|
ea4ea27a
|
2022-11-18T11:14:14
|
|
Don't trigger an error if we try to delete a touch device after shutting down the touch system
This can happen on Raspberry Pi if the display system fails to initialize.
|
|
81479d87
|
2022-11-18T21:08:36
|
|
wayland: keyboard: Cache text input parameters.
Some applications (and embarrassingly, testime is one of them) call
SDL_StartTextInput() or SDL_SetTextInputRect() every frame. On KDE/KWin
with fcitx5, this causes there to be several preedit events every frame
(particularly given some of the workarounds in Wayland_StartTextInput),
which slows testime down to an unusable crawl.
Instead, make SDL_StartTextInput() a no-op if text input is already
enabled, and cache the input rect, only changing it when the new rect is
actually different.
With these changes, we only get preedit events (and hence
SDL_TEXTEDITING events) when the preedit string actually changes. This
matches the behaviour under XWayland, and works very smoothly.
|
|
6dc96aa7
|
2022-11-18T18:02:10
|
|
SDL_UDEV_DelCallback: return early if _this is NULL
Fixes https://github.com/libsdl-org/SDL/issues/6548
|