Eddy Jansson
83fb7b6636
Prefer SDL_zero()/SDL_zerop()
...
Replace uses of 'SDL_memset(E, 0, sizeof(E))' and similar
with the SDL_zero()/SDL_zerop() macros.
2026-01-23 11:23:27 -08:00
Sam Lantinga
fe403220f0
Don't load libdecor if SDL_HINT_VIDEO_WAYLAND_ALLOW_LIBDECOR is false
...
Fixes https://github.com/libsdl-org/SDL/issues/14887
2026-01-23 11:20:26 -08:00
Frank Praznik
79b40ad397
wayland: Don't try to set the seat cursor when no pointer object exists
2026-01-23 09:02:42 -05:00
Sam Lantinga
7fe30b04bf
Revert "cmake: rpi videocore needs brcmegl as well"
...
This reverts commit cd31381185 .
Linking libbrcmEGL.so explicitly breaks (causes segmentation faults) in other code that links and runs the X11 EGL.
Reopens https://github.com/libsdl-org/SDL/issues/14749
At least in my Raspbian Stretch build environment, the vc_dispmanx symbols that were missing are found in libbcm_host.so, which is linked by default.
2026-01-22 17:53:47 -08:00
Sam Lantinga
e0659d1956
Call dbus_message_set_no_reply() when not expecting a reply
2026-01-22 09:39:59 -08:00
Sam Lantinga
453d3e5c8c
Retain the dbus reply when getting string results
...
The string result points at memory in the reply, so we can't unref that until the string is no longer needed.
Fixes https://github.com/libsdl-org/SDL/issues/14839
2026-01-22 09:39:59 -08:00
SDL Wiki Bot
7d27ca282e
Sync SDL3 wiki -> header
...
[ci skip]
2026-01-21 22:25:12 +00:00
Anonymous Maarten
0f89d64623
release: synchronize build-scripts/build-release.py
2026-01-21 21:49:41 +01:00
Anonymous Maarten
1d587e94e1
cmake: only mark SDL_{SHARED,STATIC} as cache variables if they were already cache variables
2026-01-21 21:36:10 +01:00
Simon McVittie
9ceb982a63
dummy: Only initialize evdev input devices in the evdev driver
...
This avoids some misleading error messages when running unit tests with
the dummy driver: on a typical desktop Linux system, it's normal for
opening keyboards and mouse in `/dev/input/*` to fail with `EACCES`,
and in container technologies that share `/sys` but not `/dev` with the
container, we can find that we fail to open them with `ENOENT`.
Resolves: https://github.com/libsdl-org/SDL/issues/14872
Signed-off-by: Simon McVittie <smcv@collabora.com >
2026-01-20 14:17:15 -08:00
Sam Lantinga
b1362f8a42
Fixed divide by zero handling Nintendo Switch 2 controller
2026-01-20 11:04:20 -08:00
Frank Praznik
4b83933298
wayland: More pointer related code deduplication
2026-01-20 13:50:40 -05:00
Aubrey Hesselgren
5c15d74394
Fix Horipad bluetooth gyro stutter issues using simulated sensor timing approach (based on packet rate observation)
...
By observation: wired is 250hz/4000ms, and bluetooth is 120hz/8333ms for IMU sensor.
2026-01-19 15:25:45 -08:00
Thour
124c5922aa
Fix incorrect type in SDL_GetMice() and SDL_GetKeyboards() allocation ( #14870 )
2026-01-19 15:23:55 -08:00
Anonymous Maarten
f3a3c803ca
cmake: avoid re-running checks by wrapping check_c_compiler_flag
2026-01-19 22:18:24 +01:00
Anonymous Maarten
c34b67250c
cmake: use readelf to extract soname from shared elf library
2026-01-19 22:18:24 +01:00
Anonymous Maarten
8a62d6d406
cmake: don't set <PackageName>_FOUND to FALSE before pkg_search_modules
2026-01-19 22:18:24 +01:00
Cameron Cawley
fa68a73788
Fix compiler warning in MSVC ARM64 builds
2026-01-19 10:16:35 -08: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
Wolf3s
0d845e8689
Fix the video size matching the renderer.
2026-01-19 10:10:33 -08:00
Cameron Cawley
07be29b625
Support 16-bit packed texture formats with the Vulkan renderer
2026-01-19 08:29:01 -08:00
Brad Smith
d4d66e77cc
cmake: Replace sys/types.h usage with stdint.h with CheckUSBHID
2026-01-18 16:18:26 -08:00
Cameron Cawley
cd72f6b02e
Fix B4G4R4A4_UNORM swizzle with the Metal GPU driver
2026-01-18 12:48:24 -08:00
Cameron Cawley
ab7d275113
Support 16-bit packed texture formats with the GPU renderer
2026-01-18 12:48:24 -08:00
Cameron Cawley
25583798a0
Fix mapping between surface and GPU pixel formats
2026-01-18 12:48:24 -08:00
Brad Smith
410a35fbee
cmake: Fix header detection with CheckUSBHID
...
Make use of check_include_files to be able to also include
stdint.h when checking for the headers. Fixes detection of
usbhid.h on OpenBSD.
/usr/include/usbhid.h:40:2: error: unknown type name 'uint32_t'
40 | uint32_t _usage_page;
| ^
2026-01-18 10:29:51 -08:00
Cameron Cawley
01d8e37a16
Support 16-bit packed texture formats with the Direct3D 12 renderer
2026-01-18 10:08:59 -08:00
Cameron Cawley
285147c627
Support 16-bit packed texture formats with the Direct3D 11 renderer
2026-01-18 10:08:59 -08:00
Sam Lantinga
3f0e0975d8
SDL_CreateGPURenderState() doesn't modify the createinfo parameter
2026-01-17 20:48:30 -08:00
ROllerozxa
064096bf61
Fix SDL_SetWindowIcon on singlethreaded Emscripten builds ( #14850 )
2026-01-17 20:38:36 -08:00
Frank Praznik
34b620c3f8
event: Only consider topmost windows when generating SDL_QUIT
...
Otherwise, the quit event can be sent prematurely. The topmost status must be queried and cached before sending the close request event, as the window may be destroyed in an event handler.
2026-01-17 15:52:04 -05:00
Frank Praznik
56e121f6e3
wayland: Dedup pointer entry handling code
...
Small cleanup, and needed for future work.
2026-01-17 10:40:14 -05:00
Ryan C. Gordon
1f4906e61e
examples/misc/03-locale: Fixed thumbnail to have right locale count.
...
I had forced the example to a hardcoded locale list for screenshot purposes
and forgot to update the count of items at the top of the list.
2026-01-17 00:05:16 -05:00
Ryan C. Gordon
022e2747b9
examples/misc/03-locale: Added thumbnail.png for examples.libsdl.org.
2026-01-16 23:59:59 -05:00
Cameron Cawley
4af4c97e44
Support 16-bit packed texture formats with the Metal renderer
2026-01-16 17:29:39 -08:00
Void Star Caster
b1aaa41921
gpu renderer: always pass tex_coord to fragment shader
...
As suggested in #14843 , pass vertex tex_coord to vertex shader and to fragment shader even when no texture is bounded so they can be used by custom fragment shaders.
2026-01-16 16:22:06 -08:00
Cameron Cawley
15ceaffcb5
examples: Added misc/03-locale
2026-01-16 12:55:57 -08:00
Cameron Cawley
1077486872
Support more texture formats with the Direct3D 9 renderer
2026-01-16 11:01:14 -08:00
Frank Praznik
202fdb2795
wayland: Only destroy tool frame callbacks if the cursor is the one being destroyed
2026-01-16 12:31:10 -05:00
ocelote_ml
008aa18810
updated png texture example
...
the example was updated to use png's but they didn't update the error message nor the comments
2026-01-16 12:21:30 -05:00
Frank Praznik
35a80bdf1f
wayland: Also check tools for cursor usage during cursor destruction
2026-01-16 11:39:35 -05:00
Frank Praznik
5e2977709b
wayland: Don't clear the cursor on leave events
...
Stop the frame callback and flag the cursor for a refresh when the pointer re-enters the surface, but don't set a null cursor, as it may have already been set after entering a surface that is part of the window decorations, resulting in an unwanted invisible cursor.
2026-01-16 11:39:35 -05:00
Frank Praznik
55ba268e66
wayland: Don't process null leave events in the pointer frame handler
...
This can cause the cursor to become invisible when passing over libdecor surfaces.
2026-01-16 11:39:35 -05:00
William Horvath
f9395a766f
thread: Use a flexible array member for "array" in SDL_TLSData.
...
Avoids UBSan warning (among other similar ones in SDL_thread.c):
src/thread/SDL_thread.c:109:13: runtime error: index 1 out of bounds for type 'struct (unnamed struct at src/thread/SDL_thread_c.h:70:5)[1]'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior src/thread/SDL_thread.c:109:13
2026-01-16 08:32:06 -08:00
Frank Praznik
e62d6a95b9
events: Raise keyboard keys before sending the focus lost message
...
Otherwise, the key raises may end up being ignored.
2026-01-15 15:02:43 -05:00