Commit Graph
21110 Commits
Author SHA1 Message Date
Frank Praznik 9094395b13 wayland: Use the implicit grab serial when clearing the clipboard
Some compositors won't clear the selection without a valid serial.
2025-12-22 13:29:28 -05:00
SDL Wiki Bot 2bc6cf6efd Sync SDL3 wiki -> header
[ci skip]
2025-12-22 16:26:56 +00:00
Edgar San Martin, Jr. 00fe482efb docs(gpu): document depth texture limitation in SDL_CopyGPUTextureToTexture (#14693) 2025-12-22 08:25:32 -08:00
Alex Schwartz bd35a1c8e5 docs: fix Fedora 40+ build dependencies 2025-12-22 08:22:40 -08:00
999pingGG 5a257202d2 GPU: Better detection of surface destruction 2025-12-21 17:16:34 -08:00
Sam Lantinga efc33633e3 Allow the offscreen and dummy drivers to be used as fallback 2025-12-21 16:18:07 -08:00
Frank Praznik 37fca1fdcf video: Unload GL/Vulkan when shutting down the video subsystem
If GL/Vulkan was loaded manually via a SDL_X_LoadLibrary() call instead of via window flags or through the GPU or renderer system, and there is no matching SDL_X_UnloadLibrary() call, the library instance won't be automatically unloaded while shutting down the video system, as the refcount won't go to zero, which can cause problems with some backends, and leaves a leaked DLL/SO handle when the global video object is destroyed.

Ensure that the libraries are unloaded after destroying the windows, but before shutting down the video backend, to prevent a leak and possible driver errors when shutting down the video backend.
2025-12-21 12:44:19 -05:00
SDL Wiki Bot b14aceea51 Sync SDL3 wiki -> header
[ci skip]
2025-12-21 16:53:21 +00:00
Sam Lantinga 59961d8343 Note that "auto" is the default for SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS
Fixes https://github.com/libsdl-org/SDL/issues/14686
2025-12-21 08:51:26 -08:00
Kaleb Reid 341f60555f Fix building joystick for OpenBSD 2025-12-21 07:58:41 -08:00
Sam Lantinga 0d705ca275 Use the aggregate upower device for power status when available
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-19 17:42:33 -08:00
999pingGG 190b902fac GPU: Fix Android surface and swapchain recreation on app resume (#14676)
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-19 09:54:08 -08:00
Ryan C. Gordon 2c3657a0ce egl: Patched to compile.
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
Yeehaw, cowboy committer!  🤦
2025-12-17 17:27:51 -05:00
Ryan C. Gordon 46df9ea92a egl: Call SDL_EGL_SetSwapInterval during context creation, not the GL version.
The `GL` version returns early because the context isn't set yet, whereas the
`EGL` version works out here.

Fixes #14642.
2025-12-17 17:16:39 -05:00
Frank Praznik 235f417616 wayland: Update the HDR data on placeholder displays
Update the HDR data on a placeholder display if it hasn't been finalized and added yet, or the HDR data on the added display will be incorrect.
2025-12-17 15:12:27 -05:00
Frank Praznik d028d8bc3b Fix minor typos in headers. 2025-12-17 12:56:04 -05:00
Sam Lantinga 63636c8403 Fixed warning: implicit conversion loses integer precision
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-16 14:51:19 -08:00
Sam Lantinga c7508ca2e9 Fixed warning: no previous prototype for function 'ParseDescriptor' 2025-12-16 14:51:19 -08:00
SDL Wiki Bot 9c856aea96 Sync SDL3 wiki -> header
[ci skip]
2025-12-16 17:57:26 +00:00
Sam Lantinga d583fc88be Updated to version 3.3.7 for development 2025-12-16 09:38:05 -08:00
Ryan C. Gordon 9022d90e01 README-emscripten: corrected comments about vsync. 2025-12-16 12:24:29 -05:00
Sam Lantinga ef0a604d44 Updated to version 3.3.6 for preview release prerelease-3.3.6 2025-12-16 08:54:04 -08:00
Sam Lantinga aeb4b3d2fc Reverted Vita cliprect changes
Temporarily backing out cliprect changes which caused logical presentation regressions.

Fixes https://github.com/libsdl-org/SDL/issues/14645
Reopens https://github.com/libsdl-org/SDL/issues/13034
2025-12-16 08:47:45 -08:00
Frank Praznik 78d008fcd2 x11: Don't poll the map state when the window was unmapped and borders are toggled
An event flush while a window is being hidden may try to toggle the window borders. Don't poll the mapping state when toggling borders if the window is in the process of being hidden, or the window may already be unmapped, and the wait loop will hang forever.
2025-12-16 11:45:36 -05:00
Nuno Silva d94cd1efad GPU: Ensure Vulkan doesn't pass unsupported feature structures for requested vulkan version (#14662)
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-15 17:57:49 -08:00
Edgar J San Martin 09a2283b53 Fix SDL_EnumerateDirectory(/) failing on POSIX and Windows. 2025-12-15 17:01:02 -08:00
Anonymous Maarten 6665ebaa2e SDL_test: allow disabling colorized output 2025-12-15 23:19:25 +01:00
Susko3 765a2e9118 Fix using wrong variable by mistake 2025-12-15 13:57:40 -08:00
Evan Hemsley 1260c10aab GPU Vulkan: Only modify surface on window claim or release (#14659) 2025-12-15 12:54:16 -08:00
Jakub Wasilewski 73c9f25867 GPU: Metal: Rebind storage buffers when changing the pipeline moves them. 2025-12-15 11:45:29 -08:00
Frank Praznik 9092ddff3c wayland: Update the color management protocol
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
No functional changes, just minor updates to track the latest upstream version.
2025-12-15 13:54:31 -05:00
Ryan C. Gordon db84b948f9 egl: Default to a swap interval of 0.
This matches other platforms.

Also make sure Android explicitly sets vsync on restore, regardless of the
specific setting, to make sure it's consistent.

Fixes #14642.
2025-12-15 12:44:57 -05:00
Ryan C. Gordon deb85d1fa8 emscripten: find the right SDL_Window during fullscreen events.
Fixes #14629.
2025-12-15 12:08:44 -05:00
Sam Lantinga 64df9cfa47 testmessage: quit if we get a mouse click 2025-12-15 08:56:11 -08:00
Sam Lantinga bcaedd5781 Fixed messageboxes when using window scenes on Apple platforms 2025-12-15 08:56:11 -08:00
Sam Lantinga 518c98ea01 Pass the window along with evdev touch events
Fixes https://github.com/libsdl-org/SDL/issues/14644
2025-12-15 08:29:36 -08:00
SDL Wiki Bot de642c8890 Sync SDL3 wiki -> header
[ci skip]
2025-12-14 18:40:08 +00:00
Sam Lantinga ae8df644d7 Refer to SDL_CreateGPUComputePipeline() appropriately 2025-12-14 10:38:10 -08:00
Sam Lantinga a3e5335dbf Removed wiki markup 2025-12-14 08:20:00 -08:00
SDL Wiki Bot 16b74a6ffa Sync SDL3 wiki -> header
[ci skip]
2025-12-14 16:03:48 +00:00
Sam Lantinga 517a3d20e8 Support calling SteamAPI_InitEx() before SDL_Init(SDL_INIT_GAMEPAD)
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
Calling SteamAPI_InitEx() will set environment variables that SDL uses to properly support the Steam virtual gamepad. Make sure that we fall back to the real environment for the variables that Steam sets.
2025-12-13 23:46:27 -08:00
Sam Lantinga d780fa144a Don't create the SDL environment in SDL_setenv_unsafe()
We might be setting an environment variable along with other application code setting environment variables (like code in SteamAPI_InitEx()) before initializing SDL.
2025-12-13 21:28:05 -08:00
Frank Praznik 5fe69e73ba x11: Use XInput2 to handle pointer input while grabbed and touches are active
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
Core X11 events are used for absolute motion while the mouse is grabbed, as XInput doesn't receive motion events from the master pointer, and the position from the slave devices lags one report behind. However, pointer events emulated from multitouch events can't be filtered out when using core events, as the XInput flags are not passed through.

Use the absolute position from slave devices in XInput motion events while the mouse is grabbed and touch events are active to allow filtering out pointer events emulated from touch events. Pointer events in this case may be a report behind the master device, but receiving input from both the pointer and touches simultaneously is not likely to be a common occurrence.
2025-12-13 11:15:11 -05:00
Sam Lantinga a2d19ec7f3 Note that uniforms are local to command buffers (thanks @LittleCodingFox!)
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-12 15:09:56 -08:00
Sam Lantinga ec19f1e12f Use Uint32 instead of unsigned int for descriptor values 2025-12-12 13:02:39 -08:00
Sam Lantinga 71be323973 Updated Xbox HIDAPI descriptor handling for alternate layout
Fixes https://github.com/libsdl-org/SDL/issues/14597
2025-12-12 13:02:39 -08:00
Fredrik Foss-Indrehus bdb72bb3f0 cmake: add reftable ref storage support to GetGitRevisionDescription
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
The script assumed Git's traditional loose refs or packed-refs format.
When cloning with extensions.refstorage=reftable, neither .git/refs/*
nor .git/packed-refs exist, causing cmake configuration to fail.

Fall back to git rev-parse when file-based ref lookup fails.
2025-12-11 16:13:49 -08:00
SDL Wiki Bot 76dfb85407 Sync SDL3 wiki -> header
[ci skip]
2025-12-11 23:15:58 +00:00
Frank Praznik d6f6421973 Revert "Don't enable the text-input protocol when using Fcitx"
It turns out that some distros set SDL_IM_MODULE globally, which leads to broken text input with this check, and there really is no reason not to use the text input protocol when available.

Reverts 2b375d9704
2025-12-11 12:56:49 -05:00
Anonymous Maarten f8a4fbf128 Remove mkinstalldirs from automake
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
2025-12-11 05:48:36 +01:00