Commit Graph
22157 Commits
Author SHA1 Message Date
tmkk cee2cb8ed1 hidapi: do not enumerate XInput devices owned by a kernel driver via libusb on macOS 2026-06-17 06:52:42 -07:00
Anonymous Maarten 2ebb96b881 cmake: add SDL_LEAN_AND_MEAN CMake option 2026-06-17 06:50:35 -07:00
Anonymous Maarten 9228b91da2 cmake: use 'LINKER:SHELL:' prefix for detecting version script support 2026-06-17 06:46:15 -07:00
Anonymous Maarten 71b9adda21 ci: do a full cron build every day, and limit builds per push or pr (#15839) 2026-06-17 06:44:15 -07:00
Anonymous Maarten da8aa39222 doc: use testspriteminimal instead of testgles in android example
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
testgles depends on SDL_test so would need ../src/test/*.c as an additonal argument.
2026-06-16 16:56:55 -07:00
Sam Lantinga 54e672ec0d Added a note about where to set global platform properties 2026-06-16 16:50:33 -07:00
Alex Tselousov 514b26e4c4 Removed busyloop from SDL_GPUFence on MacOS
Before, MetalFence was implemented as simply a busy loop on an atomic
int on metal, meaning the cpu would busy wait on the gpu to finish
taking power from it and decreasing battery life. This was the only kind
of cpu-gpu syncing (apart from requesting a swapchain)
2026-06-16 16:38:27 -07:00
Roman Fomin b0a9aa3db0 Fix the "redundant redeclaration" warning for __debugbreak when using MinGW (#14264) 2026-06-16 18:58:23 -04:00
Anonymous Maarten ae3869bf85 ci: don't trigger on documentation-only commits 2026-06-16 22:30:14 +02:00
Craig McLure 0c161c9e9c Add support for Virtual Pipewire Source Nodes 2026-06-16 14:18:41 -04:00
ItchyTrack a3e47fb4dc Add "/usr/local/lib/libvulkan.dylib" as a path checked when loading Vulkan on MacOS 2026-06-16 11:13:43 -07:00
Ryan C. Gordon 8138f91e5c docs: Clarify the purpose of SDL_PROP_PROCESS_CREATE_BACKGROUND_BOOLEAN.
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
Reference Issue #14435.
2026-06-16 13:04:01 -04:00
Sam Lantinga ca66808c80 Reduce log message verbosity when shutting down KMSDRM
Fixes https://github.com/libsdl-org/SDL/issues/13569
2026-06-16 09:18:13 -07:00
Ryan C. Gordon e936ac8748 video: Removed FIXME for something we cannot fix.
Reference Issue #11992.
2026-06-16 11:50:04 -04:00
Ozkan Sezer 6180b71d7c SDL_dbus.h: define DBUS_TYPE_UNIX_FD_AS_STRING if missing. 2026-06-16 12:00:24 +03:00
SDL Wiki Bot f860d9d592 Sync SDL3 wiki -> header
[ci skip]
2026-06-16 02:19:11 +00:00
Ryan C. Gordon 0e2e605593 cmake: Fixed some copy/paste errors in comments.
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2026-06-15 01:40:52 -04:00
Pierre de La Morinerie 51e214a012 SDL_joystick: add Austgame adapter to gamecube devices
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
"Austgame GameCube to USB converter" is an GameCube-to-USB adapter.
2026-06-14 08:43:08 -07:00
Nintorch 7bbd9d5c2c Add normalized name for Emscripten joysticks
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2026-06-13 07:20:33 -07:00
arnau.nau 46d0ecead0 hidapi: fix function pointer type mismatch in backend table
The HIDAPI backend table used function pointers that didn't match the
macro-renamed backend function types, which trips Clang's function sanitizer.

Adding small wrappers so the backend table has the correct function types and
the cast to the backend-specific device type happens inside a direct call.
fixes #15821.
2026-06-13 07:18:23 -07:00
Sam Lantinga 9c30a7cc82 Revert "Add an invalid #define for SDL_ThreadID() to SDL_oldnames.h (#15801)"
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
This reverts commit b04d026458.

This caused problems building sdl2-compat:
https://github.com/libsdl-org/sdl2-compat/actions/runs/27378527337/job/81120423041
2026-06-12 14:59:22 -07:00
SDL Wiki Bot e93f8e19fd Sync SDL3 wiki -> header
[ci skip]
2026-06-12 17:26:25 +00:00
Daniel Gibson b04d026458 Add an invalid #define for SDL_ThreadID() to SDL_oldnames.h (#15801)
in SDL2 SDL_ThreadID() was a function that's now
SDL_GetCurrentThreadID(), but in SDL3 SDL_ThreadID is a type, so
in C++ `x = SDL_ThreadID()` is valid code (default constructor which
in case of integers means 0), so that's a massive footgun.

See the big comment in SDL_oldnames.h for more details.

Added `#undef SDL_ThreadID` in SDL_dynapi.c because it has one of the
(quite rare) cases  where "SDL_ThreadID" followed by a "(" is actually
correct and necessary (function pointer returning SDL_ThreadID).
2026-06-12 10:24:56 -07:00
Nintorch 4f031ea5da Fix Xbox One controller detection on the web 2026-06-12 09:02:58 -07:00
Nintorch 4a0d66116f Fix web crash for joystick without vibration 2026-06-12 08:53:07 -07:00
Nintorch 5e54decf53 Fix JoyCon pair type detection on the web 2026-06-12 07:44:34 -07:00
Nintorch 95dafa2bcd Don't modify the driver signature on the web 2026-06-12 07:43:07 -07:00
Brenton Bostick 65433383a6 fix typos 2026-06-12 07:41:53 -07:00
Frank Praznik 34af24276f EGL: Always pass the platform type when available
Always pass the EGL platform type for Wayland and X11, or the driver could potentially select the wrong backend if certain envvars are misconfigured.
2026-06-12 10:00:37 -04:00
Sam Lantinga 0d971b1372 Use GetTempPathW() instead of GetTempPath2W()
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
GetTempPath2() is only available on Windows 11 and Windows 10 systems with full updates. We want to be compatible back to earlier versions of Windows and the only difference between the two calls is the behavior for processes running as SYSTEM, which we don't expect for SDL applications using notifications.
2026-06-11 13:31:12 -07:00
SDL Wiki Bot 7c60bcd83c Sync SDL3 wiki -> header
[ci skip]
2026-06-11 18:34:25 +00:00
Anonymous MaartenandSam Lantinga f70ea37517 Hide SDL_wcstoll and SDL_wcstoull for compilers not supporting long long (#15808)
Co-authored-by: Sam Lantinga <slouken@libsdl.org>
2026-06-11 20:33:06 +02:00
Ryan C. Gordon 72771ac0b4 credits: Update links to Will Provost's album "The Living Proof"
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
Amazon's store link was still "http://" instead of "https://", and since they
don't have the physical CD in stock anymore (and probably won't ever again), I
added a link to the album on Amazon Music, for those that want to access it.
2026-06-10 20:48:57 -04:00
Sam Lantinga e0a935d910 Fixed warning: a function declaration without a prototype is deprecated in all versions of C 2026-06-10 14:33:49 -07:00
Sam Lantinga 3ccd484bad Weak link the UserNotifications framework
Fixes https://github.com/libsdl-org/SDL/issues/15803
2026-06-10 14:17:53 -07:00
Sam Lantinga df294acbae Fixed error C2440: 'function': cannot convert from 'int (__cdecl *)(libusb_context *,libusb_device *,libusb_hotplug_event,void *)' to 'libusb_hotplug_callback_fn' 2026-06-10 13:29:23 -07:00
Sam Lantinga 1475239328 Added hotplug detection when using libusb
Also switched to a single thread for libusb read operations instead of one thread per device
2026-06-10 13:07:47 -07:00
Sam Lantinga 18fc4d931a Added support for Xbox controllers via libusb on macOS
A number of third party Xbox controllers are not supported by macOS, but work with libusb and the SDL HIDAPI driver.
2026-06-10 13:07:47 -07:00
Sam Lantinga 36f621842b Use the Microsoft provided GameInputCreate() function (#15797)
It does better version checking and has better compatibility.

This also fixes a crash in GameInputRedist.dll when attempting to load v3 when v2 is installed on the system. In this case, a thread is created in GameInputCreate() which is not cleaned up when the object is released, and can crash later with a NULL pointer dereference.
2026-06-10 12:57:43 -07:00
Frank Praznik 10620ec33e notification: Remove unused parameter
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2026-06-10 14:48:59 -04:00
SDL Wiki Bot 3e588d5bcc Sync SDL3 wiki -> header
[ci skip]
2026-06-10 17:29:25 +00:00
Frank Praznik 595eb8d0d1 Fix framework in Xcode project 2026-06-10 13:25:38 -04:00
Frank Praznik d1b08ac7b6 Add testnotificaiton to SDLTest.xcodeproj 2026-06-10 13:25:38 -04:00
Frank Praznik ba7c0b897b Add the Cocoa notification driver
Supported on macOS 10.14+ and iOS.
2026-06-10 13:25:38 -04:00
Frank Praznik 984b03680f Add the Windows notification driver
Notifications are supported on Win10 and above.
2026-06-10 13:25:38 -04:00
Frank Praznik 8275f6e90d Add D-Bus notification driver
Use the core and portal notification implementations to dispatch system notifications.
2026-06-10 13:25:38 -04:00
Frank Praznik 068e405912 Add notification framework with test and dummy driver 2026-06-10 13:25:38 -04:00
Anonymous Maarten 513b5d067d ci: run GDK on older Windows environment
>
> The GDK version which is set up by build-scripts/setup-gdk-desktop.py does not support Visual Studio 2026
2026-06-10 18:44:23 +02:00
expikr ed43ec0277 don't fetch timestamp again 2026-06-10 06:26:52 -07:00
Alejandro Perez 14b0e9d922 Add Corsair as valid PS controller
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2026-06-09 19:49:20 -07:00