Commit Graph

12401 Commits

Author SHA1 Message Date
Cameron Gutman 92cadaf917 keyboard: Fix comment regarding implicit calls to SDL_StartTextInput()
It was always done inside SDL_VideoInit().
2025-02-23 19:00:32 -06:00
Anonymous Maarten d2eb72fd14 ci: drop classic Intel compiler
1) The classic Intel compiler is depreated in favor of the oneapi compiler
2) SPA_FALLTHROUGH is used in pipewire's spa/utils/json.h, and causes build errors
2025-02-23 21:26:10 +01:00
Anonymous Maarten b4d733619a ci: GitHub is retiring Ubuntu 20.04 support
backport of 8d3db06ff2
2025-02-23 19:45:27 +01:00
Anonymous Maarten ed2c004c8a ci: clang32 on msys2 is EOL
backport of 70f657e520
2025-02-23 19:40:38 +01:00
Paper 6421f12d7f thread/windows: fix stack overflow in exception naming
(cherry picked from commit 1a853973ab)
2025-02-20 08:20:41 -08:00
Ozkan Sezer ee49025f80 dynapi: use DosScanEnv() for os/2. 2025-02-20 11:50:04 +03:00
Sam Lantinga 5925c27efb Don't leak device handle in macOS 10.10 or newer
Merged upstream fix for macOS:
cdc473dfe4

In one of the early versions of macOS, when you try to close the device
with IOHIDDeviceClose() that is being physically disconnected.
Starting with some version of macOS, this crash bug was fixed,
and starting with macSO 10.15 the opposite effect took place:
in some environments crash happens if IOHIDDeviceClose() is _not_ called.

This patch is to keep a workaround for old versions of macOS,
and don't have a leak in new/tested environments.

Fixes https://github.com/libsdl-org/SDL/issues/12255
2025-02-19 16:55:03 -08:00
Sam Clegg aa00738a21 Fix SDL_emscriptenaudio.c under wasm64
Verified locally by running `browser64.test_sdl2_mixer_wav` in
emscripten.
2025-02-18 13:53:58 -08:00
Sam Lantinga 5330041ea9 Updated to version 2.33.0 for development 2025-02-08 09:15:11 -08:00
Sam Lantinga 7a44b1ab00 Updated to version 2.32.0 for release 2025-02-08 09:10:22 -08:00
Sam Lantinga 3e97d41da4 Updated to version 2.31.1 for RC build 2025-02-08 08:56:53 -08:00
ds-sloth dab0205174 Delete src/thread/n3ds/SDL_syscond.c 2025-02-06 18:12:31 -08:00
Ryan C. Gordon d2693d4c7d
dynapi: Don't use SDL_getenv; it might malloc before the app sets an allocator.
Use platform-specific code instead, so SDL's allocator never comes into play.
2025-02-06 12:40:13 -05:00
Sam Lantinga ed7e7edb70 Don't use the HIDAPI driver for Thrustmaster wheels
Closes https://github.com/libsdl-org/SDL/pull/12173

(cherry picked from commit 6782cfe2c5)
2025-02-05 17:21:48 -08:00
Thomas Bernard 466cedc0da fix: in sdl2.pc libdir was changed to prefix
(cherry picked from commit 9464f334b5)
2025-02-05 07:49:11 -08:00
Thomas Bernard b84adb3720 fix: do note assume "make", use $(MAKE)
(cherry picked from commit 1c9643249d)
2025-02-05 07:49:11 -08:00
Sam Lantinga 2847273885 Fixed mis-cherry-pick 2025-02-01 11:03:33 -08:00
Anonymous Maarten 799ede831e testatomic: destroy threads + free all memory at quit to fix --trackmem
(cherry picked from commit 831c79d32f)
2025-02-01 11:02:53 -08:00
Sam Lantinga 482d964733 Don't filter out controllers when launched by Steam under Proton
Fixes https://github.com/libsdl-org/SDL/issues/11579
Fixes https://github.com/libsdl-org/SDL/issues/12106

(cherry picked from commit 3060105cfa)
2025-01-31 15:40:21 -08:00
Sam Lantinga da0cf3f634 Fixed detecting Steam Deck controller on Proton 9.04
Newer versions of Proton properly pass through the Steam virtual gamepad VID/PID, but older Proton (9.x and older) don't, so we have to rely on Steam and Proton hiding controllers we shouldn't have access to.

Fixes https://github.com/libsdl-org/SDL/issues/12106
2025-01-31 15:32:33 -08:00
Sam Lantinga 55a75875f0 Improved XInput controller detection
Sometimes we'll get a Windows.Gaming.Input callback before the raw input device is even in the list, so try some other methods to better detect XInput devices.
2025-01-31 08:45:20 -08:00
Deve 934d6954e2 Fixed crash when trying to disconnect secondary display on iOS 2025-01-29 14:45:49 -08:00
Sam Lantinga 0efe8892d6 Skip IsRegularFileOrPipe() check on Emscripten
The sandbox guarantees that this will be true.

Fixes https://github.com/libsdl-org/SDL/issues/12108

(backported from from commit 1c7cc60286)
2025-01-28 10:47:10 +03:00
Ryan C. Gordon d3a4d62fc2
.wikiheaders-options: Removed wikipreamble setting.
Reference https://github.com/libsdl-org/sdlwiki/issues/713.
2025-01-24 01:51:11 -05:00
Anonymous Maarten 3f02118264 ci: bump to NetBSD 10.1
(cherry picked from commit 98c447802f)
(cherry picked from commit 18ecd2ccad)
2025-01-23 00:32:56 +03:00
Tomasz Pakuła 5bf8955b25 Use proper polar direction when creating FF_RUMBLE effect
Uses proper polar direction of 90 degrees. Previous value probably came from mistakenly using spherical system default.
2025-01-20 16:52:11 -08:00
Tomasz Pakuła 529ed102fc Translate conditional effect direction instead of hardcoding it to 0
Provious code wrongly assumed that direction is not an important part
of conditional effect. Moreover, if there's need to hardcode polar
direction, the default should be 0x4000 (north).

For one axis affects, a direction of 0 means complete lack of force, if
a FFB-enabled device takes direction into force calculation. A sine function
graph can be used to represent the resulting forces where X is the input
direction and Y is the force multiplier (360 degrees equals to 1).

This fixes conditional effect playback on Moza Racing devices, which do
not ignore direction field.
2025-01-20 16:52:11 -08:00
Sam Lantinga 4b19f7e012 Added support for the 8BitDo Ultimate 2C Wireless in Bluetooth mode
Closes https://github.com/libsdl-org/SDL/pull/11415

(cherry picked from commit c7d1fd90ea)
2025-01-18 07:07:12 -08:00
ROllerozxa 878ea48b60 Vita: Fix off-by-one error for synthetic mouse events
(cherry picked from commit cdc5483cf9)
2025-01-16 11:59:25 -08:00
Ozkan Sezer ab8bd0ef86 fix emscripten builds 2025-01-16 18:50:00 +03:00
Sam Lantinga 9f25821ffd Fixed detection of function keys on Emscripten
Fixes https://github.com/libsdl-org/SDL/issues/11973

(cherry picked from commit 67382e9c83)
2025-01-16 07:32:38 -08:00
CasualPokePlayer 780ec8fac0 Set EGL surface for foreign X11 windows
Also slightly changes up the cleanup code for SetupWindowData, to avoid copy pasting.

See #10611
2025-01-16 10:20:25 -05:00
SDL Wiki Bot 220a23dad2 Sync SDL2 wiki -> header
[ci skip]
2025-01-15 15:27:42 +00:00
Anonymous Maarten d7825af4de ci: bump FreeBSD to 14.2
[sdl-ci-filter netbsd]
[sdl-ci-filter freebsd]
(cherry picked from commit db97da4ccb)
2025-01-15 06:20:02 +03:00
Sam Lantinga 91b76f5c29 Fixed potentially overlapping memcpy() to use memmove() 2025-01-14 14:34:29 -08:00
SDL Wiki Bot aa9b4ec894 Sync SDL2 wiki -> header
[ci skip]
2025-01-11 16:25:41 +00:00
Frank Praznik 0efeb82a28
wayland: Only apply the toplevel bounds to resizable windows 2025-01-06 17:20:10 -05:00
Frank Praznik e5a3fcd071 wayland: Apply toplevel bounds to windows
Apply the supplied xdg-toplevel bounds to resizable windows during initial mapping. Libdecor functionality will have to be added separately, as the functionality needs to be added to the library first.
2025-01-06 17:13:16 -05:00
Anonymous Maarten ebe561f916 Revert "cmake: consider X11 as not available when xext.h is not found"
This reverts commit fe5468799b.
2025-01-06 20:35:09 +01:00
Erica Z f804293a27
fix integer overflow ub in testautomation_sdltest
Patch originally from https://github.com/libsdl-org/sdl2-compat/pull/241
2025-01-06 10:37:46 -05:00
Erica Z 793103ef52
comment out signed multiplication overflow ub in testplatform
Patch originally from https://github.com/libsdl-org/sdl2-compat/pull/241
2025-01-06 10:36:32 -05:00
Daniel Tang db2997548c
Let SDL_IM_MODULE=fcitx override Wayland as a workaround to fix key repetition detection (#11859) 2025-01-05 14:34:30 -08:00
Anonymous Maarten fe5468799b cmake: consider X11 as not available when xext.h is not found
This is user friendlier than straight up erroring

Backport of 16ad3e5af6
2025-01-05 16:06:01 +01:00
Ryan C. Gordon c9c991b559
test_fuzzer: Patched to compile on Visual Studio. 2025-01-04 01:02:10 -05:00
Ryan C. Gordon 20574c016a
coreaudio: Workaround for crash when disconnecting a bluetooth audio device.
Our understanding of what's going on here might be incorrect, but it seems
like we're getting this callback at a point where we shouldn't be able to,
with a device we've already closed.

If we're on the wrong track, this code should still be harmless; it just
verifies a device is still in the open list before dereferencing it.

Reference Issue #10432.
2025-01-04 00:30:31 -05:00
Anonymous Maarten 1fa217434b Avoid undefined signed overflow in SDLTest_RandomIntegerInRange
Partial backport of efba42a67b
2025-01-04 01:07:40 +01:00
SDL Wiki Bot 9dc8c82082 Sync SDL2 wiki -> header
[ci skip]
2025-01-03 13:15:22 +00:00
Joshua Root 6024c2731f prepare_audioqueue: legacy OS compatibility fix 2025-01-02 14:16:33 -08:00
Joshua Root d58f026827 windowWillStartLiveResize: legacy OS compatibility fix 2025-01-02 14:16:33 -08:00
Joshua Root ed0eb7714a showAlert: legacy OS compatibility fix 2025-01-02 14:16:33 -08:00