22497 Commits

Author SHA1 Message Date
Vlad Zahorodnii
5e8eb0d4e7 x11: Skip announcing WM_TAKE_FOCUS in WM_PROTOCOLS
By putting the WM_TAKE_FOCUS atom in the WM_PROTOCOLS property, SDL
chooses either the "Locally Active" or "Globally Active" input model
depending on the input flag in WM_HINTS.

In order to assist the window manager with making the right decision,
for example, skip this window when choosing what window to activate
next, it will be better if the WM knows right away that the window
accepts or doesn't accept focus (in other words, have either both
the input flag set in WM_HINTS + WM_TAKE_FOCUS or none).

Since the WM_TAKE_FOCUS atom is placed in the WM_PROTOCOLS property, the
WM wanting to adhere to the spec has no choice but send a client message
asking to activate the window and hope for the better.

At quick glance, it appears that the WM_TAKE_FOCUS atom is leftover from
SDL_WINDOWEVENT_TAKE_FOCUS, which was dropped a while ago, and is not
used anymore. So this change removes the WM_TAKE_FOCUS atom to help
window managers such as kwin work better.
2026-08-25 12:41:30 -04:00
Sam Lantinga
452c3634d4 Fixed two cases where joystick/haptic objects should be marked invalid on error during open. 2026-08-24 16:31:46 -07:00
muzikbike
40e1357e29 Add Wake Up key code for Windows
deduced experimentally via experimentation with consumer hardware
2026-08-24 15:36:53 -07:00
Sam Lantinga
6648b7966c Added a Windows mapping for the Gamesir-G5
Fixes https://github.com/libsdl-org/SDL/issues/16190
2026-08-24 13:14:22 -07:00
Sam Lantinga
05a0cb5894 Added detection for Turtle Beach Xbox 360 controllers 2026-08-24 13:08:06 -07:00
Frank Praznik
9d2579db26 wayland: Don't presume that the window is non-resizable when hidden
Don't presume that the window requires fixed size handling until a configure event sets the state. Fixes setting an initial size on a hidden window (regression from fcb5ef8a9c).
2026-08-24 14:07:46 -04:00
Eri the Switch
fb8a32cc75 joystick: Accept partial user calibration for sticks on Switch controllers
This allows user stick calibration to be applied on JoyCons and possibly
partially user calibrated Pro controllers.
2026-08-24 09:53:47 -07:00
quasar32
be51a15ba2 Hit test no longer executes when destroying wayland window
Signed-off-by: quasar32 <fontejam32@gmail.com>
2026-08-24 10:48:05 -04:00
muzikbike
9712c2c7fc Add some missing Microsoft keyboard codes
Deduced experimentally using https://git.stary.pc.pl/Grzesiek11/w32ev
2026-08-24 07:40:39 -07:00
SDL Wiki Bot
75ff9ae9a1 Sync SDL3 wiki -> header
[ci skip]
2026-08-24 07:00:49 +00:00
SDL Wiki Bot
75c35b8cce Sync SDL3 wiki -> header
[ci skip]
2026-08-24 04:52:59 +00:00
SDL Wiki Bot
b0827a48ab Sync SDL3 wiki -> header
[ci skip]
2026-08-24 04:38:07 +00:00
SDL Wiki Bot
bf889aaed5 Sync SDL3 wiki -> header
[ci skip]
2026-08-23 22:01:09 +00:00
SDL Wiki Bot
0dce67c74a Sync SDL3 wiki -> header
[ci skip]
2026-08-23 21:57:14 +00:00
Ryan C. Gordon
0932b559e8 wikisync: Testing wikiheaders bridge, disregard. 2026-08-23 16:29:53 -04:00
SDL Wiki Bot
36488c6257 Sync SDL3 wiki -> header
[ci skip]
2026-08-23 20:28:45 +00:00
SDL Wiki Bot
ae78aee61b Sync SDL3 wiki -> header
[ci skip]
2026-08-23 20:25:01 +00:00
SDL Wiki Bot
39333eb07b Sync SDL3 wiki -> header
[ci skip]
2026-08-23 20:00:06 +00:00
SDL Wiki Bot
a3d215933a Sync SDL3 wiki -> header
[ci skip]
2026-08-23 19:49:06 +00:00
Sam Lantinga
58702e533f GPU: D3D12: set MultisampleEnable for multisampled pipelines (thanks @sailro!)
Closes https://github.com/libsdl-org/SDL/pull/16183
2026-08-23 10:51:48 -07:00
Dario Binacchi
e721af3baf Fix build on PowerPC with uClibc
PPC_FEATURE_HAS_ALTIVEC is not defined by all C libraries. The following
error was raised while testing SDL3 in Buildroot with a PowerPC toolchain
using uClibc-ng:

  src/cpuinfo/SDL_cpuinfo.c: In function 'SDL_GetAltiVecFeatures':
  src/cpuinfo/SDL_cpuinfo.c:351:37: error: 'PPC_FEATURE_HAS_ALTIVEC' undeclared (first use in this function)
    351 |     altivec = getauxval(AT_HWCAP) & PPC_FEATURE_HAS_ALTIVEC;
        |                                     ^~~~~~~~~~~~~~~~~~~~~~~

Provide a fallback definition when it is not defined.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
2026-08-23 10:35:08 -07:00
Sam Lantinga
8b1e4aa41b Show the child process wait code instead of turning it into an error string
The exit code of the child process may not fit in 8 bits, it's more useful to provide the full child process status.

Fixes https://github.com/libsdl-org/SDL/issues/16188
2026-08-23 10:32:18 -07:00
Dav999-v
85260aa180 Fix SDL_PLATFORM_UNI typo in migration guide
SDL_PLATFORM_UNI doesn't actually exist, it seems like it's supposed to
be SDL_PLATFORM_UNIX.
2026-08-23 10:10:11 -07:00
Sam Lantinga
4601c46a68 Rebuilt test shader headers 2026-08-23 10:08:59 -07:00
momoko-h
902484f65c Update testgpurender_effects_grayscale.frag.hlsl
The formular did not use blue at all but red twice and the factor intended for blue was off.
2026-08-23 10:02:00 -07:00
Sam Lantinga
38aace9359 Fixed typo 2026-08-22 11:49:58 -07:00
Jaan Soulier
a2b27528db fix SDL_gpu_vulkan validation warning 2026-08-22 08:43:21 -07:00
Sam Clegg
f0b84476f9 [emscripten] Use keyEvent->key instead of deprecated charCode
keyEvent->charCode is deprecated in DOM Level 3 and marked deprecated
in Emscripten's html5.h. Use keyEvent->key instead.
2026-08-22 07:33:14 -07:00
Anonymous Maarten
a0db66a718 cmake: add FFmpeg components as argument to find_package 2026-08-21 17:50:43 +02:00
Sam Lantinga
98ee449d6a Updated the link for lock free algorithms
Closes https://github.com/libsdl-org/sdlwiki/pull/982
2026-08-21 08:46:45 -07:00
Anonymous Maarten
eda0859c8b cpu is always SDL_CPU_ANY in SDL_GeneratedBlitFuncTable 2026-08-21 08:14:13 -07:00
Anonymous Maarten
36b7ce3b4e The spinning cube GPU example triggers a few parameter validation errors for an offscreen renderer 2026-08-21 07:44:30 -07:00
Anonymous Maarten
1b8c9dc477 Support numeric keypad in bytepusher example 2026-08-21 07:44:30 -07:00
Anonymous Maarten
b30cda60c1 Make interactive tests work on SDL3 built with disabled param checking (or assert on invalid) 2026-08-21 07:44:30 -07:00
SDL Wiki Bot
573862505d Sync SDL3 wiki -> header
[ci skip]
2026-08-21 14:27:01 +00:00
Sam Lantinga
0e6af9f4c6 Clarify that gamepad sensors are disabled by default 2026-08-21 07:24:41 -07:00
Anonymous Maarten
80ad29564c ci: vita's lame does not declare mpg123 dependency, so disable testffmpeg
[sdl-ci-filter *vita*]
2026-08-21 02:54:49 +02:00
Anonymous Maarten
d15e373576 ci: vitasdk/vitasdk Docker container switched from Alpine to Ubuntu
See 960c16ac23

[sdl-ci-filter *vita*]
2026-08-21 02:43:07 +02:00
Anonymous Maarten
9901fa42d4 Fix GDK download url
[sdl-ci-filter msvc-gdk-x64]
2026-08-21 01:29:21 +02:00
SDL Wiki Bot
f170b33f16 Sync SDL3 wiki -> header
[ci skip]
2026-08-20 22:42:09 +00:00
SDL Wiki Bot
8e8596b91a Sync SDL3 wiki -> header
[ci skip]
2026-08-20 22:25:10 +00:00
SDL Wiki Bot
f95af3d8e6 Sync SDL3 wiki -> header
[ci skip]
2026-08-20 19:47:08 +00:00
Ryan C. Gordon
8e22e4f916 wikiheaders: Report full path when dying for a doubly-defined section.
(cherry picked from commit 1d4b0337ac)
2026-08-20 15:26:25 -04:00
SDL Wiki Bot
80524ec40e Sync SDL3 wiki -> header
[ci skip]
2026-08-20 18:43:35 +00:00
SDL Wiki Bot
21e63449a4 Sync SDL3 wiki -> header
[ci skip]
2026-08-20 16:21:05 +00:00
Cameron Cawley
dca1503f00 examples: Disable quitting with the escape key in Emscripten builds 2026-08-20 08:18:29 -07:00
Cameron Cawley
741668ab12 examples/woodeneye: Use position independant key codes for keyboard input 2026-08-20 08:18:29 -07:00
Cameron Cawley
f78bdbd96c examples/snake: Use position dependant key codes for keyboard input 2026-08-20 08:18:29 -07:00
SDL Wiki Bot
1a17b7aaf9 Sync SDL3 wiki -> header
[ci skip]
2026-08-20 15:13:33 +00:00
SDL Wiki Bot
233cc9ce6a Sync SDL3 wiki -> header
[ci skip]
2026-08-20 15:05:54 +00:00