Commit Graph

13717 Commits

Author SHA1 Message Date
zuiki_inn
f1c274038b add EVOTOP AXIS controller support (#16117) 2026-08-05 07:29:17 -07:00
Frank Praznik
b07d488216 wayland: Place the data source creation functions in the proper source file
These functions were declared in the SDL_waylanddatamanager.h header, but the implementations were in SDL_waylandevents.c

Move the implementations to the SDL_waylanddatamanager.c source file, where one would expect to find them.
2026-08-04 13:01:53 -04:00
Ozkan Sezer
f661f37ace update khronos headers from mainstream. 2026-08-04 03:28:10 +03:00
Evan Hemsley
c1aa9f43fa GPU: Fix another OpenXR zero-length copy 2026-08-03 14:48:50 -07:00
Evan Hemsley
5538d52430 GPU: Allow combinations of read flags on buffers (#16111) 2026-08-03 13:16:20 -07:00
Evan Hemsley
eeb832d8a1 GPU OpenXR: Fix zero-length copy (#16112) 2026-08-03 13:11:32 -07:00
Caleb Cornett
f0fc9316f0 gpu: D3D12 driver cleanup (#16104)
- Clean up unused code in D3D12 driver
- Set accurate array sizes in D3D12_INTERNAL_Create*RootSignature
- Clean up D3D12 conversion functions
2026-08-03 13:11:10 -07:00
Caleb Cornett
52cea907e0 gpu: Use DXBC for D3D12 blit shaders on Windows (#16095) 2026-08-03 13:10:30 -07:00
Ryan C. Gordon
f17fc121aa cocoa: SDL_GetClipboardData() needs to conform the mimetype.
Fixes #16077.
2026-08-03 11:52:13 -04:00
Sanjay Govind
591b584b27 Add back metadata reset change that was accidentally reverted 2026-08-03 08:14:05 -07:00
Ryan C. Gordon
958c4cbf0d cocoa: Use macOS 26.x mouse workaround for all windows, not just fullscreen.
This is a temporary workaround until we understand the issue better.

Reference Issue #15967.
2026-08-03 02:19:24 -04:00
Sanjay Govind
7010faef34 Add support for GIP instruments via hidapi, and drums via gameinput (#16009) 2026-08-02 16:27:46 -07:00
Anthony
228fb8e630 Simplify SDL_IsPhone (#16080) 2026-08-02 08:38:36 -07:00
Александр Андреев
fcd11827f4 iOS: fix SDL_GetUIKitDeviceFormFactor return type
The function returns SDL_FormFactor values but was declared as bool,
so iOS devices were misclassified (e.g. tablets as desktop).
2026-08-02 08:18:53 -07:00
Sam Lantinga
8dc177294b Leave open Xbox devices in the libusb enumerated list on macOS
Fixes https://github.com/libsdl-org/SDL/issues/15961
2026-08-02 08:15:19 -07:00
Michal Trepka
f514394d1c cocoa: Workaround for an issue with incorrect window position after exiting fullscreen on some displays
Fix for https://github.com/libsdl-org/SDL/issues/15920
2026-08-02 07:27:32 -07:00
Frank Praznik
fcb5ef8a9c wayland: Handle odd behavior with non-resizable windows in certain tiling compositors
Some tiling compositors will set the maximized state and set their own, preferred dimensions, even if the window is flagged as non-resizable, and the min/max limits are properly set. The spec says that the configure size must be obeyed in the maximized state, so, in these odd cases, use a viewport to make the content fit within the configure dimensions.
2026-08-01 16:26:34 -04:00
Caleb Cornett
730fe555ac render: Fix Xbox Series X|S shader include paths 2026-08-01 08:14:36 -07:00
janusch
c15b6a1457 wayland: don't redeclare getresuid/getresgid
When HAVE_GETRESUID/HAVE_GETRESGID are not defined, SDL_waylandvideo.c defines
static inline fallbacks using the libc names. glibc declares both functions
non-static in <unistd.h>, so on a toolchain where the feature checks fail while
those declarations are still visible the file fails to compile:

  error: static declaration of 'getresuid' follows non-static declaration

Give the fallbacks SDL-private names and call those, so a fallback can never
collide with a libc declaration. Also fixes the fallback getresgid() taking
uid_t* parameters where it should take gid_t*.
2026-08-01 05:55:35 -07:00
Sam Lantinga
ec4bdfd118 Fixed SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER with IYUV and YV12 pixel buffers 2026-07-31 15:47:28 -07:00
Sam Lantinga
b212874def Fixed support for SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER 2026-07-31 15:24:36 -07:00
eafton
7b7a74ebc7 Fix some DBus tray issues 2026-07-31 08:49:03 -07:00
Sam Lantinga
fe85b4782d Support extended interop with the 2D Metal renderer
Also fixed an issue where an external surface couldn't be used with IYUV and YV12 textures.
2026-07-30 19:28:50 -07:00
Nick Waanders
4c69fd050c Metal: Fix for required rebinding when switching pipelines 2026-07-30 18:48:09 -04:00
Anonymous Maarten
5924f36dc6 Make gameinput.cpp c++98-compatible 2026-07-30 20:19:17 +02:00
Anonymous Maarten
b048e8e6f8 windows: vendor GameInput headers 2026-07-30 20:19:17 +02:00
Frank Praznik
331e10c2a3 wayland: Clear references to the clipboard when setting new data
Ensure that references to the clipboard being held by other seats are cleared when new data is being set, or some seats may hold references to invalid data and callbacks.
2026-07-30 12:18:25 -04:00
Frank Praznik
dfcbd16b4c wayland: Don't send nil selections when changing clipboard data
Sending a nil selection followed by immediately destroying the selection offer is redundant, and avoiding intermediate nil offers helps some clipboard managers avoid potential race conditions.
2026-07-30 12:18:25 -04:00
Frank Praznik
db673016fd wayland: Format clipboard code style
Use camel case for non-callback function names to match the coding style of the rest of the backend, and don't enforce a hard 80 column limit.
2026-07-30 12:18:25 -04:00
Frank Praznik
33a1b566e0 wayland: Cleanup clipboard code
The clipboard code often had excessive and unnecessary error checking (e.g. checking if the video backed was initialized, when there is no way that path would be hit if it wasn't), overly complicated some operations, and had several cases where things can be C99-ified. Clean things up a bit to make it easier to read and debug.
2026-07-30 12:18:25 -04:00
Frank Praznik
63bf4c1c79 x11: Register the input context destroyed callback
Register the destroyed callback to handle cases where the IC is suddenly no longer valid (e.g. if ibus or fcitx dies).
2026-07-28 15:46:54 -04:00
Sam Lantinga
1457503bd2 Check for the sRGB color primaries rather than the transfer function 2026-07-28 12:29:42 -07:00
Rachel Blackman
412a7c5db6 Use the modern OnBackInvokedCallback method to trap the back button on newer Android devices (#16052) 2026-07-27 15:43:23 -07:00
Sam Lantinga
f4337eded2 Use the render passes we just created when creating a Vulkan render target 2026-07-27 10:56:49 -07:00
Sam Lantinga
db84871fdf Allow writing to planar YUV textures from application code in the Vulkan renderer 2026-07-27 10:56:49 -07:00
svncibrahim
eba97448ae wayland: Fix maximized check when setting the window size
The logical || made the flag mask evaluate to 1, so only fullscreen was checked and maximized windows were treated as resizable.
2026-07-26 09:50:48 -04:00
Sam Lantinga
855cbec702 Set VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT for planar formats
This allows creating separate image views for the planes of the image if desired.
2026-07-24 16:22:28 -07:00
Nintorch
223490b024 Fix GameInput QueryDeviceName memory leaks 2026-07-24 13:12:13 -07:00
Tim Stahlhut
40fb1b6ccc Cygwin: Fix SDL_GetPlatform
[sdl-ci-filter cygwin]
2026-07-23 18:29:25 -07:00
Sam Lantinga
0f5f708c5a Better check to see whether HDR10 input will have scaling applied 2026-07-23 12:55:14 -07:00
Sam Lantinga
303113b853 Sorted controller mappings
Also fixed line endings for Retro Fighters D6 mappings
2026-07-23 11:38:24 -07:00
Alynne
091261b3bd Add Retro Fighters D6 mappings (#16048) 2026-07-23 11:35:15 -07:00
Sam Lantinga
326694de32 Get the correct HDR values under Gamescope
This also switches log messages in SDL_x11modes.c to use SDL_Log()
2026-07-23 10:32:03 -07:00
Sam Lantinga
604fe14b87 Make sure the PQ shader will output the input value before using the simple shader
Note that we don't account for vertex color here. If HDR10 content needs to be tinted by vertex color, it can't use the simple shader. I'm assuming that the use case for this will be video content which generally won't use vertex color and this optimization is fine.
2026-07-23 10:25:25 -07:00
Sam Lantinga
148241117b Define SCRGB_NITS for use in HDR color calculations 2026-07-23 10:25:25 -07:00
Alynne
b9d64c45a9 Support for Retro Fighters Defender Pro (#16045) 2026-07-23 10:16:51 -07:00
Sam Lantinga
2a623fd224 wayland: set the SDR_white_level for HDR capable displays 2026-07-22 15:24:48 -07:00
Sam Lantinga
23b641070c Added HDR10 display support for the direct3d11, direct3d12, and vulkan renderers 2026-07-22 11:36:32 -07:00
Frank Praznik
cc2713c047 wayland: Don't clear the clipboard when a nil selection is ignored
If the previous selection offering was recursive, a nil selection should be ignored, or clearing the clipboard may clear the backing memory of the client's selection offering as well.
2026-07-22 12:09:18 -04:00
Sam Lantinga
ae2301e7a5 Added SDR white point for X11 on Steam Deck
Also disabled HDR on X11 for other devices for now, we don't know that they'll be able to display it properly.
2026-07-21 20:24:26 -07:00