Bartłomiej Dach
df65a2385d
Fix Xcode project not building due to missing header
...
Both `SDL3/SDL.h` and `SDL3/SDL_events.h` attempt to `#include
<SDL3/SDL_notification.h>` and that header was not added to Xcode,
leading to compilation failures.
2026-06-24 10:28:07 -07:00
Ryan C. Gordon
179e66f1fe
docs: Improved SDL_CommonEvent documentation.
2026-06-24 13:15:53 -04:00
SDL Wiki Bot
135a9457f3
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-23 18:34:01 +00:00
Frank Praznik
5471f4c3de
notification: Fix old function names in documentation
2026-06-23 14:31:01 -04:00
Frank Praznik
a7ade74cf1
notification: Check the icon string before duplicating
...
Fixes #15877
2026-06-23 14:28:17 -04:00
Ryan C. Gordon
0b692f64b0
docs: warn not to destroy an SDL_AudioStream during its callback.
...
Fixes #15871 .
2026-06-23 13:49:46 -04:00
Sam Lantinga
7be5990089
Removed redundant check for VK_SUCCESS
...
Fixes https://github.com/libsdl-org/SDL/issues/15157
2026-06-23 08:59:16 -07:00
Sam Lantinga
284afc2c9a
Set SDL_PROP_TEXTURE_GPU_TEXTURE_V_POINTER to the correct texture
...
Fixes https://github.com/libsdl-org/SDL/issues/15157
2026-06-23 08:57:49 -07:00
Frank Praznik
e26370810b
gpu/vulkan renderer: Reconfigure the window on renderer creation if it has the OpenGL flag
...
In some cases, conflicts can occur at the platform or driver level if a window initially configured for OpenGL is then used with a Vulkan-based renderer. Try to reconfigure or recreate the window in the unlikely event that it has the OpenGL flag set when initializing the Vulkan or GPU renderer to remove any platform or driver-specific OpenGL objects and properties.
2026-06-23 11:03:05 -04:00
Sam Lantinga
a45ef5dc64
Added RIDEV_NOLEGACY to improve performance in mouse relative mode (thanks @whrvt!)
...
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
This change also makes it so relative mode doesn't kick in until the mouse enters the window client area. This prevents relative mode from kicking in while clicking and dragging on the title bar, etc.
2026-06-23 07:10:25 -07:00
SDL Wiki Bot
e300b87e35
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-23 07:25:14 +00:00
SDL Wiki Bot
1a21db244c
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-23 02:18:50 +00:00
Ryan C. Gordon
4f778d56fd
.wikiheaders-options: Fix Notification category.
2026-06-22 22:17:12 -04:00
Ryan C. Gordon
c1918f0817
docs: SDL_Locale is a struct, not a function.
2026-06-22 22:13:21 -04:00
Sam Lantinga
07ecc125cf
Added SDL_PIXELFORMAT_P408 and SDL_PIXELFORMAT_P416
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
2026-06-22 17:01:54 -05:00
SDL Wiki Bot
0bb539314d
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-22 03:32:20 +00:00
Brent Page
65091012b4
Add more information for pinch gestures on mobile ( #15092 )
2026-06-21 20:30:50 -07:00
SDL Wiki Bot
941dda1ccd
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-21 18:52:43 +00:00
Semphriss
e52dbf4442
Add basic Ubuntu Touch functions #12543
...
This adds support for:
* System theme
* Sandbox detection
* Device form factor detection
Many things aren't properly supported yet, but changes and upgrades will happen on the Ubuntu Touch side, so SDL should automatically support more Ubuntu Touch features as time goes.
2026-06-21 11:51:15 -07:00
ripdog
35ebc3db89
Android: honor suggested filename in ShowSaveFileDialog
2026-06-21 11:09:36 -05:00
Christian Semmler
a0b7ea0304
timer: drop unused mach_base_info on Apple
...
The Apple counter uses clock_gettime_nsec_np(CLOCK_UPTIME_RAW) and the
frequency is SDL_NS_PER_SECOND, so the mach timebase is no longer used.
2026-06-21 10:44:37 -05:00
SDL Wiki Bot
da8ee4d5cc
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-21 15:34:46 +00:00
Semphriss
d474769878
Detect device form factor ( #12584 )
2026-06-21 08:33:13 -07:00
klirktag
5317703567
Android: hide system bars via WindowInsetsController on API 30+
...
The immersive-fullscreen code hid the status and navigation bars with the
deprecated View.setSystemUiVisibility() flags plus FLAG_FULLSCREEN. On
Android 15+ (API 35), edge-to-edge is enforced for apps targeting SDK 35+
and those flags are ignored, so the bars never hide (e.g. on a Samsung
S25). Android 14 and below still honour them, which is why older devices
were unaffected.
Hide/show the system bars with WindowInsetsController on API 30+ (using
BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE for sticky-immersive), keeping the
legacy setSystemUiVisibility() path for API < 30. The minimum supported
version is unchanged.
(cherry picked from commit a442367706 )
2026-06-21 08:26:48 -07:00
Caleb Cornett
3561f81400
gpu: Metal fence fixes
2026-06-21 10:08:01 -05:00
Christian Semmler
e575093c83
Fix Apple performance frequency to match nanosecond counter
...
Build (All) / Create test plan (push) Has been cancelled
Build (All) / level1 (push) Has been cancelled
Build (All) / level2 (push) Has been cancelled
The counter returns ns via clock_gettime_nsec_np, so the frequency must be SDL_NS_PER_SECOND.
2026-06-20 23:01:33 -04:00
Gabriel Ford
49879ba0d6
free capacitive sensors on joystick close
...
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
Fixes : #15856
2026-06-19 20:05:28 -05:00
Ryan C. Gordon
d7e25c92c0
examples/input/03-gamepad-polling: Render axes in blue.
...
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
It's easier to see against white than yellow was.
2026-06-19 14:35:10 -04:00
Ryan C. Gordon
3a1cfbc147
main: If SDL_MAIN_CALLBACK_RATE="waitevent", have at least one iteration run.
...
This way apps can at least draw an initial image to their windows before going
into a deep, blocking wait for user interaction.
Fixes #15027 .
2026-06-19 14:14:13 -04:00
Ryan C. Gordon
e63b247738
io_uring: Annotate for ThreadSanitizer, since the ring is serializing access.
...
This doesn't _suppress_ the warnings, it annotates our memory access pattern
so ThreadSanitizer knows that threads aren't in conflict, since TSan doesn't
know about io_uring's mechanisms.
Fixes #15083 .
2026-06-19 13:42:10 -04:00
Frank Praznik
b3f8367134
wayland: Make external window reconfiguration more robust
...
External window surfaces can't be destroyed and recreated, so try our best to reconfigure them when switching between GL profiles, or between GL and Vulkan.
2026-06-19 13:07:16 -04:00
Frank Praznik
4c28a67cd5
gles: Try to reconfigure the window instead of recreating it
...
SDL_ReconfigureWindow will fall back to recreation if necessary.
2026-06-19 10:25:39 -04:00
Ryan C. Gordon
f8dc19e65a
examples/storage/01-user: Set up for web builds.
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
2026-06-19 00:10:56 -04:00
Ethan Lee
e19a6544a2
examples: Add an example for SDL_Storage user data
2026-06-18 20:44:15 -04:00
Ryan C. Gordon
d5dca1ec3d
dos: Don't do parameter validation in SDL_SYS_GetPrefPath.
...
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
The higher level did it already.
2026-06-18 13:46:13 -04:00
Ryan C. Gordon
7134ed5c1c
wikiheaders: Fix links in manpage generation.
...
Fixes #15665 .
2026-06-18 13:46:13 -04:00
Frank Praznik
06795b00ad
wayland: Attach EGL objects to custom and external surfaces during reconfiguration
...
They are required when using EGL with an external surface.
2026-06-18 10:56:20 -04:00
Frank Praznik
dbfddb6409
wayland: External windows are never hidden
...
Needed for the GPU renderer to function properly.
2026-06-18 10:56:20 -04:00
Anonymous Maarten
9b230dfb36
cmake: add SDL_LIBUDEV_SHARED option
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
2026-06-18 03:47:07 -07:00
Christmas-Missionary
c3e29282b3
updated Raw Mouse Input section in docs
2026-06-18 00:45:49 -04:00
Christmas-Missionary
2536a22012
Enforce the minimum version of macOS to be 10.12
...
- clock_gettime_nsec_np is not defined until 10.12
2026-06-18 00:45:49 -04:00
Christmas-Missionary
225001b53b
replaced mach_absolute_time()
...
- Addresses issue #15115
- mach_absolute_time can be misused for fingerprinting. This is bad.
- Apple docs prefer clock_gettime_nsec_np(CLOCK_UPTIME_RAW) in time.h
- Since HAVE_NANOSLEEP is defined, time.h is included
2026-06-18 00:45:49 -04:00
Vicki Pfau
ca67f19c8f
Fix discrete Joy-Con mappings on Linux
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
2026-06-17 20:49:28 -07:00
SDL Wiki Bot
ae429cf5ee
Sync SDL3 wiki -> header
...
[ci skip]
2026-06-17 23:50:18 +00:00
Sam Lantinga
c9b6581210
Added SDL_HINT_ENABLE_STEAM_SCREEN_KEYBOARD
2026-06-17 16:48:54 -07:00
stahta01
3686cbdca2
cmake: correctly report SDL_LEAN_AND_MEAN state at end of configuration
Build (All) / Create test plan (push) Waiting to run
Build (All) / level1 (push) Blocked by required conditions
Build (All) / level2 (push) Blocked by required conditions
2026-06-17 20:35:37 +02:00
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