281 Commits
Author SHA1 Message Date
Sam Lantinga 691571cc57 Moved GameInput into the gameinput folder in the Visual Studio project 2026-07-31 09:28:33 -07:00
Anonymous Maarten b048e8e6f8 windows: vendor GameInput headers 2026-07-30 20:19:17 +02:00
Sam Lantinga e0b12bbcea Added a workaround for a crash in NVIDIA drivers when rendering YUV with Vulkan
Fixes https://github.com/libsdl-org/SDL/issues/13878
2026-06-29 14:09:24 -07:00
Ethan Lee e19a6544a2 examples: Add an example for SDL_Storage user data 2026-06-18 20:44:15 -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
Sam Lantinga dc8b189491 examples: Added input/05-gamepad-rumble 2026-05-31 08:32:44 -07:00
Ahmed Lyas c9e2e732b6 examples: Add blending example (#15657) 2026-05-19 21:05:23 -07:00
Jesse Chounard bc16157c9d testtray: created VS project and added new click callbacks 2026-02-05 11:08:05 -08:00
chenzw bb8eee8fac Added support for the GameSir-G7 Pro 8K controller 2026-02-03 20:09:04 -08:00
9a91d7236a GPU: OpenXR integration (#14837)
Based on Beyley's initial draft in #11601.

Co-authored-by: Beyley Cardellio <ep1cm1n10n123@gmail.com>
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com>
2026-01-30 17:18:51 -05:00
Cameron Cawley 20adb97305 Support building for ARM64 with the MSVC project 2026-01-19 10:16:35 -08:00
Cameron Cawley 3ee909f01e Add missing files for the examples to the MSVC project 2026-01-19 10:16:35 -08:00
Cameron Cawley 18ba444352 Update the filters for the MSVC project 2026-01-19 10:16:35 -08:00
Cameron Cawley a04ddb394f Add missing examples to the MSVC project 2026-01-19 10:16:35 -08:00
Cameron Cawley 3681a94c66 Automatically select the default platform toolset for examples in MSVC builds 2026-01-19 10:16:35 -08:00
Cameron Cawley 4dcf886322 Remove duplicate MSVC projects 2026-01-19 10:16:35 -08:00
Cameron Cawley 15ceaffcb5 examples: Added misc/03-locale 2026-01-16 12:55:57 -08:00
Anonymous Maarten 6665ebaa2e SDL_test: allow disabling colorized output 2025-12-15 23:19:25 +01:00
Sam Lantinga 450a2cb5e4 Added support for parsing the Xbox report descriptor
This gives us more robust handling of Bluetooth Xbox controllers which may vary the report format between firmware versions.

Firmware versions tested:
Xbox One S: 3.1.1, 4.8.1923, 5.13.3143
Xbox One S/X: 5.11.3118, 5.23.6
Xbox Elite Series 2: 5.22.16, 5.23.6

Fixes https://github.com/libsdl-org/SDL/issues/14597
2025-12-10 10:49:39 -08:00
Ryan C. Gordon 1fdc7975cb visualc: Fixed corrupted SDL.vcxproj.filters file.
Fixes #14526.
2025-11-24 10:34:08 -05:00
Sam Lantinga 1998b65045 Added support for the new Steam Controller 2025-11-12 11:32:32 -08:00
Sam Lantinga e18d63a4e2 Added SDL_RotateSurface()
Fixes https://github.com/libsdl-org/SDL/issues/14269
2025-10-22 17:55:02 -07:00
Peter0x44 705ced8cf5 Make D3D math functions static inline to reduce likelihood of linking conflicts
Convert SDL_d3dmath.c functions to static inline in SDL_d3dmath.h to make
it less likely to conflict when static linking SDL. raylib's SDL backend
does not work with a "normal" upstream binary static link. It has these
errors:

/usr/bin/ld: /usr/local/lib64/libSDL3.a(SDL_d3dmath.c.o): in function `MatrixIdentity':
SDL/src/render/SDL_d3dmath.c:35: multiple definition of `MatrixIdentity'; CMakeFiles/raylib.dir/rcore.c.o:rcore.c:(.text+0x18470): first defined here
/usr/bin/ld: /usr/local/lib64/libSDL3.a(SDL_d3dmath.c.o): in function `MatrixMultiply':
SDL/src/render/SDL_d3dmath.c:44: multiple definition of `MatrixMultiply'; CMakeFiles/raylib.dir/rcore.c.o:rcore.c:(.text+0x18540): first defined here
collect2: error: ld returned 1 exit status

It works if these functions aren't emitted, (i.e.
!SDL_VIDEO_RENDER_D3D(11|12|GPU|VULKAN)

Or, if SDL is not linked static. Which I know is preferred anyway.

In raylib's case, it doesn't use this code anyway so it's not a problem
to build it yourself with them disabled. But it's a minor hassle to be
incompatible with static linking libraries from upstream.

I can't see any good reason for these functions to not be static inline
already, so I just put them in the header and deleted the .c.

Raylib's conflicting case is a library with a public function exposed to
users. But SDL's case is not.

- Moved all matrix functions from SDL_d3dmath.c to SDL_d3dmath.h as static inline
- Removed SDL_d3dmath.c from all project files (Visual Studio and Xcode)
- Functions affected: MatrixIdentity, MatrixMultiply, MatrixScaling,
  MatrixTranslation, MatrixRotationX, MatrixRotationY, MatrixRotationZ
2025-10-14 16:56:41 -07:00
Sam Lantinga ee622c570a Made SDL_dlopennote.h a public header 2025-10-10 12:47:42 -07:00
Sam Lantinga bb0d6221c1 Use PNG files for tests and examples
These are much smaller than the previous BMP files

Fixes https://github.com/libsdl-org/SDL/issues/14159
2025-10-06 16:45:53 -07:00