Commit graph

21617 commits

Author SHA1 Message Date
Ozkan Sezer
afbbfc6e98 wasapi: workaround that AudioClientProperties->Options not being available in old SDKs
Closes: https://github.com/libsdl-org/SDL/issues/15641.

(cherry picked from commit bf03728873)
2026-05-18 18:56:52 +03:00
7aGiven
7a4cce82eb WM_IME_SETCONTEXT not set 0
(cherry picked from commit 296231e999)
2026-05-18 07:05:26 -07:00
Kuratius
d147bb2a06 Fix Steam Controller 2 touchpad finger detection (#15644)
(cherry picked from commit a20530cf15)
2026-05-18 07:04:16 -07:00
Sam Lantinga
85d86dd72c Fixed deadlock introduced by 7222c04fbf
It turns out this change causes a deadlock:
The main UI thread calls synchronized handleMotionEvent() which then calls SDL_LockJoysticks()
The main app thread calls SDL_LockJoysticks() and then synchronized pollInputDevices()

(cherry picked from commit 8c89a076a7)
2026-05-17 12:22:37 -07:00
Sam Lantinga
da76e438be Reapply "Change controller sensor state on the main UI thread on Android"
This reverts commit 02975994c1.

Accidentally reverted the wrong commit

(cherry picked from commit b19ecb4032)
2026-05-17 12:16:07 -07:00
Sam Lantinga
59b38dfe85 Revert "Change controller sensor state on the main UI thread on Android"
This reverts commit c362f1341f.

It turns out this change causes a deadlock:
The main UI thread calls synchronized handleMotionEvent() which then calls SDL_LockJoysticks()
The main app thread calls SDL_LockJoysticks() and then synchronized pollInputDevices()

(cherry picked from commit 02975994c1)
2026-05-17 12:12:20 -07:00
Ozkan Sezer
2e8567bdeb SDL_render_d3d11.c: fix another bad use of SDL_FUNCTION
(cherry picked from commit cbd2917324)
2026-05-17 21:37:00 +03:00
Ozkan Sezer
f689caed82 SDL_render_d3d12.c: revert an unintended change from commit d70578b9aa
(cherry picked from commit f76b736e28)
2026-05-17 20:29:28 +03:00
Frank Praznik
bf7c5e2df2
wayland: Implement Wayland_AcceptDragAndDrop()
This simply toggles a flag that rejects DnD offers if false. Events were previously dropped silently, but rejecting the offer makes some desktops display a proper icon when the drop will not work.

(cherry picked from commit 336d07c2b7)
2026-05-17 11:52:58 -04:00
Ozkan Sezer
e03ee2f0d9 SDL_opengl_glext.h, src/video/directx/d3d12.h: revert unintended changes from commit d70578b9aa
(cherry picked from commit 75c94e9b31)
2026-05-17 16:30:30 +03:00
Tap
273eeebe71 Correct steam triton haptic commands
The listed report IDs are incorrect - there is no skipped ID

(cherry picked from commit 1f7a42a7b9)
2026-05-17 06:24:22 -07:00
Christian Semmler
581c18f693 emscripten: Fix crash on Safari when probing gamepad rumble support
Safari's older Gamepad API exposes `vibrationActuator` with `playEffect`
and `reset` but no `effects` enumeration array. The probe added in
651136ac7 dereferences `vibrationActuator['effects']['includes']`
unconditionally, throwing `TypeError: undefined is not an object` on
every Safari client that opens a connected gamepad. Add the missing
`['effects']` null check so the probe returns false on Safari instead
of aborting.

(cherry picked from commit db7ac820f9)
2026-05-16 15:48:06 -07:00
ceski
f30c0e4ee2 Add Steam Deck capacitive touch sticks, trackpad clicks, and mapping (#15612)
(cherry picked from commit 2ebf23014f)
2026-05-16 09:04:44 -07:00
ceski
cdbc651f65 Add Steam Controller mapping (#15601)
Also fixed Hori QAM button mapping

(cherry picked from commit c00d7b4bf5)
2026-05-15 19:18:56 -07:00
John Schoenick
b8547af466 unix: Fix infinite looping in SDL_FriBidi_Process if len > 127
start/end should be FriBidiStrIndex here -- using FriBidiLevel makes
them `signed char` and the loop here will become infinite if `end` is
> 127.

(cherry picked from commit 0ffb0bdd87)
2026-05-15 15:40:55 -07:00
Rachel Blackman
819bb962fa Add Gamesir Supernova in Xinput mode to controller list
(cherry picked from commit d83e7bf79e)
2026-05-15 13:26:10 -07:00
Evan Hemsley
f3281f6e3d GPU: Set missing fields on Vulkan swapchain texture (#15606)
(cherry picked from commit 86296ac8f0)
2026-05-15 11:44:33 -07:00
Sam Lantinga
a7f93c5c55 Detect the GameSir Super Nova in Xbox 360 mode
(cherry picked from commit a95ce7e734)
2026-05-15 10:13:53 -07:00
Anthony
e5246aaa6a Update showFileDialog in proguard-rules.pro
to match changes in 439ffd1

(cherry picked from commit bd146867e4)
2026-05-15 08:59:51 -07:00
Anthony
b87c1101e0 Add joystickSetSensorsEnabled to proguard-rules.pro
(cherry picked from commit c94b1435c7)
2026-05-15 08:44:19 -07:00
Anonymous Maarten
f00b0291b3 surface: cannot set a palette to a non-indexed surface
This fixes a UBSAN warning later in this function where it calculates
(1 << SDL_BITSPERPIXEL(surface->format)). The bpp might be >= 32 and
out of range for a bit shift.

(cherry picked from commit d5af35e3fb)
2026-05-14 20:55:02 -07:00
Rachel Blackman
b84e981ed8 Fix HIDAPI support for Flydigi Vader 5 Pro (#15594)
(cherry picked from commit eb340388fc)
2026-05-14 17:33:36 -07:00
Evan Hemsley
ee49e69ed7 GPU: Refactor Vulkan barriers to fix defrag segfault (#15593)
(cherry picked from commit f286e420af)
2026-05-14 17:02:13 -07:00
ceski
1226f4a56d Add Steam Controller touchpads, capacitive touch for sticks, and grip sense (#15528)
(cherry picked from commit f3faf67c64)
2026-05-14 16:30:02 -07:00
Brenton Bostick
775a8d0ef7 make sure #endif comment matches the macro name
(cherry picked from commit 3ac4e684ab)
2026-05-14 16:29:53 -07:00
Sam Lantinga
2e7bd8902c Use the correct report format for BLE Steam Controller reports
(cherry picked from commit 79f5f674bd)
2026-05-14 16:29:26 -07:00
Cameron Cawley
c9bdfd8fed Replace custom NEON cast macros with vreinterpret_*_*
(cherry picked from commit a3376acc2e)
2026-05-14 09:16:46 -07:00
Vlad-Florin Ilie
f35b77c417 Fix Steam Controller 2026 (triton) rumble (#15558)
(cherry picked from commit b333c04ccc)
2026-05-13 23:42:14 -07:00
Sam Lantinga
f55416bf00 Added controller sensor support for GameInput v3
Verified working with the DualSense controller

(cherry picked from commit 0defb4ddfc)
2026-05-13 23:41:39 -07:00
Sam Lantinga
f37f4f06d5 Fixed windows getting the wrong size when setting size and aspect ratio back to back
(cherry picked from commit 0e5e772ba9)
2026-05-13 20:40:09 -07:00
Sam Lantinga
c02d2b8c73 Added SDL_SendGamepadEffect() support for the new Steam Controller
(cherry picked from commit 4884dbbe56)
2026-05-13 20:15:43 -07:00
Joel Auterson
a8442d38be Add libusb-1.0-0-dev to Linux deps doc
libusb-1.0-0 is needed to enable SDL_HIDAPI_LIBUSB. It does not work with the `libusb-dev` package on Ubuntu, which is for the older version.

(cherry picked from commit c247f06f01)
2026-05-13 18:36:16 -07:00
RaceTheMaSe
3e3d045cf1 hidapi, windows: Fix -Wjump-misses-init warning (#14990)
Clang: jump from this goto statement to its label is incompatible with C++ [-Wjump-misses-init]

(cherry picked from commit ba3274e3a1)
2026-05-13 19:32:50 +03:00
Max Seidenstücker
088a0fc91c Static at beginning
GCC: 'static' is not at beginning of declaration [-Wold-style-declaration]

(cherry picked from commit 0c7d4d5a89)
2026-05-13 19:32:50 +03:00
RaceTheMaSe
9363ecc764 Fix warning: strict prototypes (#14992)
clang: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]

(cherry picked from commit 4f183506f6)
2026-05-13 19:32:50 +03:00
RaceTheMaSe
a7e5870b88 Fix -Wnewline-eof warnings (#14989)
(cherry picked from commit 9fda8f2669)
2026-05-13 19:32:50 +03:00
RaceTheMaSe
5400cdd307 PS2, VITA: Fix void pointer arithmetic warnings (#14995)
(cherry picked from commit 863912aa03)
2026-05-13 19:32:50 +03:00
Sam Lantinga
9848c32d9a Return the touch device name for SDL_TOUCH_MOUSEID
(cherry picked from commit 3dbd3e43e2)
2026-05-13 09:07:51 -07:00
Cameron Cawley
17cf746550 Allow formats with alpha channels for window textures
Because the blend mode is explicitly set to SDL_BLENDMODE_NONE, it doesn't matter if there's a transparency channel in the texture format or not for opaque windows. This ensures that a 32-bit format is used with Metal instead of SDL_PIXELFORMAT_RGB565.

(cherry picked from commit b1f390255a)
2026-05-13 08:52:51 -07:00
Sam Lantinga
a7482a1acb Document that you may receive mouse events with SDL_PEN_MOUSEID
(cherry picked from commit 716c767b7e)
2026-05-13 08:12:42 -07:00
Sam Lantinga
a979d8d060 Use predefined names for constant keyboard and mouse IDs
Fixes https://github.com/libsdl-org/SDL/issues/15563

(cherry picked from commit fcaf5bbf8c)
2026-05-13 08:12:42 -07:00
Anonymous Maarten
2499e1a4c2 stb_image: use SDL_HasSSE2 and <SDL3/SDL_intrin.h> macro's for SSE2 detection
(cherry picked from commit 0457891d50)
2026-05-13 18:10:02 +03:00
Max Seidenstücker
1d8673a885 Void function return
Clang: void function should not return void expression [-Wpedantic]

(cherry picked from commit 144ab4ba99)
2026-05-13 18:10:02 +03:00
Sam Lantinga
ecc33ac29a Change controller sensor state on the main UI thread on Android
Fixes https://github.com/libsdl-org/SDL/issues/15565

(cherry picked from commit c362f1341f)
2026-05-13 08:02:45 -07:00
Sam Lantinga
dfc0e4bb4f Synchronize controller access on the Java side on Android
(cherry picked from commit 7222c04fbf)
2026-05-13 08:02:42 -07:00
Cameron Cawley
08c33bb861 Fix switching modes on RISC OS
(cherry picked from commit 7071efb6a3)
2026-05-12 20:18:26 -07:00
Sam Lantinga
90c68dce38 Removed Wooting 60HE (ARM) from the controller blacklist
Fixes https://github.com/libsdl-org/SDL/issues/15555

(cherry picked from commit f30ec9940a)
2026-05-11 22:11:01 -07:00
Al. Lopez
98ed044509 added additional examples of paddle/misc buttons for Steam Controller (#15544)
(cherry picked from commit 4940345a2e)
2026-05-11 21:45:39 -07:00
Sam Lantinga
ef3196bedd Fixed a crash if we get a HID device with no path
This can happen on Linux if udev_device_get_devnode() fails.

(cherry picked from commit bb4eedd67d)
2026-05-11 16:48:43 -07:00
Rachel Blackman
717bb2dcef Correctly support OG Steam Controller when connected via USB on Android (#15561)
(cherry picked from commit e4a327709d)
2026-05-11 15:23:50 -07:00