Skip to content

Conversation

antheas
Copy link
Contributor

@antheas antheas commented Aug 1, 2025

There is a bug where SInput checks for player led capability before setting RGB. This means that if a controller does not have a player led, RGB commands are not sent.

cc @mitchellcairns

There is a bug where SInput checks for player led capability before
setting RGB. This means that if a controller does not have a player led,
RGB commands are not sent.
@slouken slouken merged commit d04899f into libsdl-org:main Aug 1, 2025
@slouken
Copy link
Collaborator

slouken commented Aug 1, 2025

Merged, thanks!

thatcosmonaut pushed a commit to Kontrabant/SDL that referenced this pull request Aug 1, 2025
There is a bug where SInput checks for player led capability before
setting RGB. This means that if a controller does not have a player led,
RGB commands are not sent.
eafton pushed a commit to eafton/SDL that referenced this pull request Sep 2, 2025
commit 8dcbafb
Author: eafton <[email protected]>
Date:   Tue Sep 2 20:47:00 2025 +0300

    X11TK

commit a3d377e
Author: eafton <[email protected]>
Date:   Tue Sep 2 20:41:45 2025 +0300

    X11TK

commit 578768f
Author: eafton <[email protected]>
Date:   Tue Sep 2 15:28:30 2025 +0300

    pejfgpıgjerıgj

commit 210fa81
Author: eafton <[email protected]>
Date:   Sat Aug 30 18:59:59 2025 +0300

    Cleanup

commit 6cf99a0
Author: eafton <[email protected]>
Date:   Sat Aug 30 18:35:03 2025 +0300

    Menus

commit 11c33a5
Author: eafton <[email protected]>
Date:   Sat Aug 30 18:34:08 2025 +0300

    Menus

commit 1848f52
Merge: f8ac722 1fbed16
Author: eafton <[email protected]>
Date:   Tue Aug 26 10:07:15 2025 +0300

    Merge branch 'libsdl-org:main' into x11tk

commit 1fbed16
Author: Nintorch <[email protected]>
Date:   Sat Aug 16 16:08:22 2025 +0500

    Add Emscripten joystick rumble support

    Adds support for Emscripten (Web) joystick rumble support via EM_ASM_INT macros and HTML5's Gamepad API.

commit b13416d
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 25 11:47:18 2025 -0700

    Fixed relative motion having desktop mouse scale on Wayland

    Fixes libsdl-org#13753

commit 385715c
Author: Merlyn Morgan-Graham <[email protected]>
Date:   Sat Aug 16 02:36:09 2025 -0700

    Introduce enum for SDL_GetCameraPermissionState result

commit 5be0848
Author: Colin Kinloch <[email protected]>
Date:   Wed Aug 6 21:25:31 2025 +0100

    dialog: Print DBus errors where available

commit c79a18d
Author: Colin Kinloch <[email protected]>
Date:   Sun May 25 15:55:48 2025 +0100

    dialog: Fix save file chooser with xdg portal

    This correctly sets the xdg portal fields for targeting a specific
    new filename or existing file.

    "current_name" sets the dialogs placeholder name.
    "current_file" targets an existing file.
    "current_folder" for when the target is a folder.

commit 1af7dfb
Author: Nintorch <[email protected]>
Date:   Sat Aug 16 21:55:03 2025 +0500

    Allow Android to ignore unnecessary joysticks

    Previously, SDL_ShouldIgnoreJoystick wasn't being called for Android, and fingerprint sensors were recognized as joysticks.

commit 81920b5
Author: Colin Kinloch <[email protected]>
Date:   Sat Aug 16 16:13:52 2025 +0100

    testffmpeg: avutil queue family version check

    The `AVVulkanDeviceQueueFamily` struct was introduced by libavutil
    59.34.100

commit 8f04e4a
Author: Ryan C. Gordon <[email protected]>
Date:   Mon Aug 25 13:06:09 2025 -0400

    audio: Clean out all the bitshifting.

    Hide the implementation details in something human-readable.

commit 01d94ca
Author: Ryan C. Gordon <[email protected]>
Date:   Mon Aug 25 11:35:37 2025 -0400

    audio: Renamed device_hash_lock to subsystem_rwlock.

    It protects more than the device hashes!

commit 226fecf
Author: Ryan C. Gordon <[email protected]>
Date:   Mon Aug 25 11:31:12 2025 -0400

    audio: Split current_audio.device_hash into two separate hashtables.

    One for physical devices, one for logical devices.

    Fixes libsdl-org#13032.

commit 7bbbbb3
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 25 09:45:39 2025 -0700

    Fixed build

commit aab9589
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 25 08:54:43 2025 -0700

    Fixed crash if mouse functions are used after video quit

commit 2707375
Author: ceski <[email protected]>
Date:   Mon Aug 18 20:05:08 2025 -0700

    Fix vsync-off support for direct3d11

commit f8ac722
Author: eafton <[email protected]>
Date:   Sat Aug 23 19:42:10 2025 +0300

    X11TK: Fix build

commit 4c73c19
Author: eafton <[email protected]>
Date:   Sat Aug 23 19:21:41 2025 +0300

    X11TK: Respond to scale changes

commit 2dd56f9
Author: eafton <[email protected]>
Date:   Sat Aug 23 19:21:28 2025 +0300

    X11TK: Respond to scale changes

commit f43f0f1
Author: eafton <[email protected]>
Date:   Sat Aug 23 19:17:07 2025 +0300

    X11TK: Respond to scale changes

commit 0fcaf47
Author: Ethan Lee <[email protected]>
Date:   Fri Aug 22 14:32:28 2025 -0400

    gpu: D3D12 only requires feature level 11_0 with Resource Binding Tier 2.

    We previously thought this wasn't possible because constant buffer offsets and
    partial updates were unavailable, but we were reading the wrong table - this is
    only the case for D3D11...

    https://learn.microsoft.com/en-us/windows/win32/direct3d11/overviews-direct3d-11-devices-downlevel-intro

    ... while 12 doesn't list this feature at all:

    https://learn.microsoft.com/en-us/windows/win32/direct3d12/hardware-feature-levels

    We double checked and Jesse Natalie confirmed that this feature is required for
    D3D12 even for 11_0 drivers. (Thanks Jesse!)

    Additionally, D3D12 requires that UAVs are accessible from all shader stages,
    meaning Tier 2 is enough to support the number of UAVs we need. Tier 1 could be
    a property to lower the requirements, but that can be done later.

commit dee2414
Author: Merlyn Morgan-Graham <[email protected]>
Date:   Sat Aug 16 09:09:20 2025 +0000

    Fix typo in SDL_power doc comment

commit ee5e249
Author: arnau.nau <[email protected]>
Date:   Tue Aug 19 01:38:47 2025 +0200

    Docs fix for SDL_stdinc.h: floor,floorf,ceil,ceilf

commit ed608b2
Author: eafton <[email protected]>
Date:   Wed Aug 20 17:35:39 2025 +0300

    X11TK: Use ceil instead of round

commit 075e9c1
Author: eafton <[email protected]>
Date:   Wed Aug 20 12:15:01 2025 +0300

    X11TK: Implement arrow key navigation

commit 72908d6
Author: eafton <[email protected]>
Date:   Wed Aug 20 12:02:27 2025 +0300

    X11TK: Process Xsettings events

commit 264a3a1
Author: eafton <[email protected]>
Date:   Wed Aug 20 11:55:50 2025 +0300

    X11TK: Fix XDestroyImage fixme

commit 0b082b2
Author: SDL Wiki Bot <[email protected]>
Date:   Tue Aug 19 20:39:22 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 46fa43b
Author: eafton <[email protected]>
Date:   Tue Aug 19 22:14:22 2025 +0300

    X11TK: Fix leftover from debugging

commit 03b14f5
Author: Wilson Jallet <[email protected]>
Date:   Tue Aug 19 21:10:55 2025 +0200

    GPU: Fix Vulkan indexing error for resolve attachment refs (libsdl-org#13768)

commit d4b709d
Author: eafton <[email protected]>
Date:   Tue Aug 19 22:10:13 2025 +0300

    X11TK: Fix FreeBSD build

commit da6d874
Author: eafton <[email protected]>
Date:   Tue Aug 19 22:03:26 2025 +0300

    X11TK: Implement scaling (both integer and fractional)

commit 721398f
Author: eafton <[email protected]>
Date:   Tue Aug 19 16:02:23 2025 +0300

    X11TK: Add keyboard navigation/tabbing support

commit e3db7f8
Author: SDL Wiki Bot <[email protected]>
Date:   Tue Aug 19 04:41:07 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit bad7075
Author: suleyth <[email protected]>
Date:   Sun Aug 17 22:52:45 2025 +0200

    Only add VRAM to deviceRank if asking for a high performance device, and if the device already meets all the requirements.

commit 618f85f
Author: suleyth <[email protected]>
Date:   Sun Aug 17 22:48:02 2025 +0200

    Make deviceRank an Uint64 to avoid potential overflow issues in case of future GPUs with huge VRAM

commit c5b79e5
Author: suleyth <[email protected]>
Date:   Sat Aug 16 11:56:47 2025 +0200

    Pick dedicated GPU with highest VRAM

commit 923b94f
Merge: c86bd09 5f77da3
Author: eafton <[email protected]>
Date:   Sun Aug 17 11:50:44 2025 +0300

    Merge branch 'libsdl-org:main' into x11tk

commit 5f77da3
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 14 19:30:54 2025 -0700

    x11: use raw values for relative mouse motion

    Fixes libsdl-org#13743

commit fe16c62
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 14 14:49:04 2025 -0700

    Fix crash when enumerating Steam Controllers

    Closes libsdl-org#13746

commit 2d855e1
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 14 14:48:58 2025 -0700

    Fixed style

commit 20df88a
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 14 14:44:49 2025 -0700

    Fixed spacing

commit e111104
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 14 13:41:40 2025 -0700

    Fixed crash when reinitializing video on X11

    The keyboard keymap was left pointing at a freed keymap after X11_QuitKeyboard()

commit f053be2
Author: Joshua T. Fisher <[email protected]>
Date:   Thu Aug 14 08:19:14 2025 -0700

    Improve CMake for IDE Projects (Visual Studio) (libsdl-org#13704)

commit f934b3e
Author: Sam Lantinga <[email protected]>
Date:   Wed Aug 13 19:42:49 2025 -0700

    x11: fixed creating a window when all displays are disconnected

    The X server maintains the desktop, but XRandR sends disconnect notifications for all displays. In this case fall back to the generic X11 desktop as a display.

commit eeae484
Author: Sam Lantinga <[email protected]>
Date:   Wed Aug 13 19:42:28 2025 -0700

    Fixed crash if X11 initialization fails

commit 45feacf
Author: Petar Popovic <[email protected]>
Date:   Wed Aug 13 22:59:17 2025 +0200

    emscripten tests: fix warning: uninitialized variable

commit a743fb5
Author: ChaseKnowlden <[email protected]>
Date:   Wed Aug 13 14:17:51 2025 -0400

    Use PulseAudio fragsize buffer correctly

    Fixes broken microphone input in Sober

commit ec0e4e2
Author: Ryan C. Gordon <[email protected]>
Date:   Wed Aug 13 16:32:02 2025 -0400

    docs: Mark most of SDL_filesystem.h as thread-safe.

    Fixes libsdl-org#13738.

commit 29cff6e
Author: Salman Alshamrani <[email protected]>
Date:   Fri Jan 3 20:58:03 2025 -0500

    Work around password integrations hiding software keyboard and preventing autofill

commit bd7d470
Author: Salman Alshamrani <[email protected]>
Date:   Mon Dec 23 18:15:59 2024 -0500

    Fix text field resetting text when replaced with a short string

    Triggered by auto-filling a password with less than 16 characters from a
    password manager.

commit 10478c5
Author: ChaseKnowlden <[email protected]>
Date:   Tue Aug 12 18:29:22 2025 -0400

    Keep MSVC Flags Consistent across CMake runs

commit 62b9ac3
Author: Mitch Cairns <[email protected]>
Date:   Tue Aug 5 18:00:12 2025 -0700

    SEWN Button Convention

commit 87543ba
Author: Mitch Cairns <[email protected]>
Date:   Tue Aug 5 17:35:38 2025 -0700

    SInput: Mapping updates for GCUltimate/ProGCC

    - In previous firmwares for my gamepads, the buttons were sent in a static order for ABXY.
    - To better be 'transparent' to the driver and save myself from future fragmentation, I am updating the mappings to be consistent, where the HID report should always expect to receive the button inputs based on cardinal button directions rather than button labels.
    - This better aligns with the existing 'fallback' behavior of a generic device.
    - Coincides with firmware library update: HandHeldLegend/HOJA-LIB-RP2040#30

commit 7487880
Author: SDL Wiki Bot <[email protected]>
Date:   Tue Aug 12 17:05:23 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 4725213
Author: Sam Lantinga <[email protected]>
Date:   Tue Aug 12 09:53:41 2025 -0700

    Support the "ambient" value for SDL_HINT_AUDIO_CATEGORY

    Fixes libsdl-org#13732

commit 4b2a87a
Author: SDL Wiki Bot <[email protected]>
Date:   Tue Aug 12 16:53:08 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 970c0bf
Author: Sylvain <[email protected]>
Date:   Fri Aug 8 11:43:42 2025 +0200

    Fixed bug libsdl-org#13493: Assertion failure at SDL_AddTouch with Android API 28
    Java touch id should be -1 because it's reserved for internal SDL
    synthetic events.
    It should also not be 0, because this is SDL invalid value.

commit 6e422e5
Author: Chase Knowlden <[email protected]>
Date:   Tue Aug 12 10:45:57 2025 -0400

    Update NDK version to 28 (libsdl-org#13729)

    * Update NDK version to 28 and add 16kb page size linker flags to x86_64

    * Remove Android Linker Options

    16kb page size is now the default since NDK r28c

    * Update Android CI to use NDK 28

commit e699f3d
Author: Beyley Cardellio <[email protected]>
Date:   Sun Aug 10 00:13:14 2025 -0700

    GPU: Hold submit lock before waiting for device idle

commit f2df279
Author: SDL Wiki Bot <[email protected]>
Date:   Sun Aug 10 05:08:26 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 40ec959
Author: Sam Lantinga <[email protected]>
Date:   Sat Aug 9 22:07:14 2025 -0700

    Restored text missing during wiki sync (thanks @sezero!)

commit 3970acd
Author: SDL Wiki Bot <[email protected]>
Date:   Sun Aug 10 02:21:43 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 44ce826
Author: SDL Wiki Bot <[email protected]>
Date:   Sat Aug 9 18:34:27 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 43f3991
Author: Petar Popovic <[email protected]>
Date:   Sat Aug 9 18:00:04 2025 +0200

    linux/SDL_syshaptic.c:SDL_SYS_HapticStopAll(): Fix return on error

commit d4819db
Author: Petar Popovic <[email protected]>
Date:   Sat Aug 9 15:36:42 2025 +0200

    SDL_waylandvideo.c:display_remove_global(): Check pointer when removing mouse

commit 7017fba
Author: Anonymous Maarten <[email protected]>
Date:   Sat Aug 9 04:39:12 2025 +0200

    release: build aarch64 libraries with 16kiB page size

    [ci skip]

commit f4c124e
Author: Mohamed Shazan <[email protected]>
Date:   Sat Aug 9 04:50:59 2025 +0530

    SDL_TriggerBreakpoint() will default to __debugbreak() on MinGW toolchain on windows

commit aff1a48
Author: Frank Praznik <[email protected]>
Date:   Fri Aug 8 17:53:21 2025 -0400

    wayland: Cleanup and return if keymap allocation fails

commit d9c20cf
Author: Petar Popovic <[email protected]>
Date:   Fri Aug 8 20:52:24 2025 +0200

    SDL_SendJoystickVirtualSensorDataInner(): Fix max_sensor_events increment

commit de742e9
Author: Anonymous Maarten <[email protected]>
Date:   Fri Aug 8 04:55:32 2025 +0200

    cmake: detect RISCOS platform before GNU/Hurd

commit 1718850
Author: Pino Toscano <[email protected]>
Date:   Thu Aug 7 23:35:39 2025 +0200

    Add GNU/Hurd as platform

    SDL has been building on GNU/Hurd for a long time, using either drivers
    based on external libraries (e.g. X11, pulseaudio, sndio, etc) or dummy
    drivers. This commit introduces it explicitly as platform, so it can be
    recognized, and tweaked as needed. In particular:
    - introduce the SDL_PLATFORM_HURD define
    - tighten/improve the platform detection in cmake, and use "Hurd" as
      identifier
    - return the platform name in SDL_GetPlatform()
    - tweak the CFLAGS/LDFLAGS so pthreads can be used properly
    - implement SDL_GetExeName(), using /proc/self/exe as provided by the
      basic Linux-like procfs
    - enable GLES 2 in tests (mostly for consistency with Linux)

commit b63c32e
Author: Petar Popovic <[email protected]>
Date:   Fri Aug 8 19:50:12 2025 +0200

    SDL_SetRenderDrawBlendMode(): Remove redundant param check

commit 7252633
Author: Frank Praznik <[email protected]>
Date:   Fri Aug 8 11:10:53 2025 -0400

    video: Check the display origin when a fullscreen window is moved

    In certain cases when moving fullscreen windows in scaled desktop configurations, the window origin might overlap two displays at once. Check if the window is at the origin of a specific display before falling back to the generic window rectangle check.

    Fixes rare fullscreen window misplacement when moving fullscreen windows via a desktop shortcut while using the Wayland scale-to-display mode.

commit 248bcf6
Author: Pino Toscano <[email protected]>
Date:   Thu Aug 7 07:40:29 2025 +0200

    ime: fcitx: use SDL_GetExeName() in GetAppName()

    Use the existing SDL_GetExeName(), available for all the UNIX
    platforms, in the internal GetAppName(); this has few advantanges:
    - SDL_GetExeName() (and SDL_GetAppID() that builds on top of it) are
      used in various places already; since it caches the executable name,
      this may remove one extra read of the application name
    - SDL_GetExeName() has a non-dummy implementation in more OSes than
      GetAppName(), thus providing a small improvement for this IME

    As drive-by change: since SDL_GetExeName() provides a constant string,
    there is no more need to allocate a new string in GetAppName(), which
    is used as constant string anyway. Hence, return a constant string in
    GetAppName() too.

commit d83503f
Author: Simon McVittie <[email protected]>
Date:   Thu Aug 7 11:58:25 2025 +0100

    Fix some typos detected by Debian's lintian QA tool

    I assume the demoninator is a typo, rather than an indication that
    someone has been playing too much Doom :-)

    Signed-off-by: Simon McVittie <[email protected]>

commit 40b941c
Author: Simon McVittie <[email protected]>
Date:   Thu Aug 7 11:54:20 2025 +0100

    hints: Rephrase documentation to improve grammar

    "This thing allows to do something" is not really grammatically correct.
    The closest rephrasing would be "allows one to do something" or "allows
    the user to do something", but I think the passive voice reads more
    naturally here.

    Detected by Debian's lintian QA tool.

    Signed-off-by: Simon McVittie <[email protected]>

commit fe6b216
Author: cosmonaut <[email protected]>
Date:   Thu Aug 7 10:57:17 2025 -0700

    GPU: Fix uninitialized value in Vulkan command buffer structure

commit 6981522
Author: Sam Lantinga <[email protected]>
Date:   Thu Aug 7 11:44:45 2025 -0700

    Revert "Support Google Play 16 KB Page Size Requirement (libsdl-org#13470)"

    This reverts commit dc2c83c

    If you need to support the Google Play 16 kiB page size requirement, the recommendation is to use NDK r28c or newer, which automatically aligns binaries correctly.

commit 33c8998
Author: Frank Praznik <[email protected]>
Date:   Wed Aug 6 17:36:31 2025 -0400

    video: Use additional checks for determining on which display a window should be fullscreen

    Trying to determine where a window should be made fullscreen from the size and position can be unreliable if the window exceeds the display bounds. Add additional checks with the following priority:

    - If the window was positioned with a macro that explicitly passes a display ID, store and use the requested display as the explicit fullscreen target.
    - Check if the window position is an exact match for any display origins, and use that display if found, as positioning a fullscreen window by moving it to the origin of the destination display is common behavior.
    - Fall back to the existing center point check if the previous checks were not successful, as it is known behavior, and won't risk breaking existing clients that rely on it.

commit 561c99e
Author: Pino Toscano <[email protected]>
Date:   Wed Aug 6 23:40:02 2025 +0200

    SDL_endian.h: extend Linux way for GNU libc

    The currently used way to determine the endianness (i.e. include
    <endian.h> and use the __BYTE_ORDER macro) is provided in general by
    GNU libc. Thus, extend that to any platform/OS based on GNU libc.

commit f439e44
Author: Frank Praznik <[email protected]>
Date:   Thu Jul 24 15:11:20 2025 -0400

    x11: Modernize and optimize key handling

    - Use modern Xkb functions where appropriate and cleanly separate the modern and legacy paths.
    - Remove the deprecated XKeycodeToKeysym function in favor of directly querying the keymap on the legacy path.
    - Look up virtual modifiers by name on the Xkb path to better handle remapping (equivalent to the modifier handling under Wayland).
    - Optimize keymap creation on the Xkb path to cut keymap build times and enable fast group switching  (equivalent to keymap handling on Wayland).
    - Enable and handle Xkb events to handle changes to the group, mapping, and modifier states. This is more reliable than using the legacy events (group changes may not arrive if the window lacks pointer focus), and better handles cases where modifiers are latched, locked, or activated externally rather than physically pressed.

commit 67e5130
Author: Frank Praznik <[email protected]>
Date:   Mon Aug 4 19:43:42 2025 -0400

    x11: Check axis labels when searching for relative axes

    Prefer axes with the 'Rel X'/'Rel Y' labels, followed by 'Abs X'/'Abs Y', and only fall back to the old behavior of using the first two enumerated axes if no others are found.

    Fixes a FIXME when determining which axes to use for relative motion.

commit 91be1b0
Author: Sam Lantinga <[email protected]>
Date:   Wed Aug 6 09:22:33 2025 -0700

    x11: Fix xsettings pointer not being reset in X11_QuitXsettings

commit 31ba7ef
Author: Sam Lantinga <[email protected]>
Date:   Wed Aug 6 09:22:15 2025 -0700

    x11: Refactor dpi hooks, removing GTK dependency and fixing XSettings watcher

    - Removed GTK signal handler in x11settings. XSettings events are now properly dispatched to X11_XsettingsNotify.
      Previously events were not being passed to xsettings-client as no SDL xsettings_window was created. Now all events
      are filtered through xsettings_client_process_event allowing it to process the external window events that are selected.
      Global content scale is updated for changes to any recognized dpi settings.

    - X11_GetGlobalContent now reads the current RESOURCE_MANAGER prop off of the root window to ensure it sees the
      current value. XResourceManagerString is now only used if getting the current prop fails as it caches the current resource
      manager value per-display connection.

    - Clean up some warnings in SDL_gtk.

commit b139821
Author: A1029384756 <[email protected]>
Date:   Wed Aug 6 01:21:47 2025 -0400

    tray: linux - use `.cache` directory for temporary icon paths

commit cd0c660
Author: Frank Praznik <[email protected]>
Date:   Tue Aug 5 17:24:10 2025 -0400

    win32: Use the current flags to determine if NCCALCSIZE is required

    SDL_GetWindowFlags() also ORs in pending flags, whereas the current state is needed here, particularly when creating/showing a window.

commit 90a0230
Author: Frank Praznik <[email protected]>
Date:   Tue Aug 5 15:51:50 2025 -0400

    win32: Use STYLE_BORDERLESS when showing a pending fullscreen window

    In addition to hiding the border on bordered windows that will immediately become fullscreen, The combination of flags used in STYLE_BORDERLESS_WINDOWED will still show the borders on borderless windows if the initial window size exactly matches the desktop, so STYLE_BORDERLESS must be used instead.

commit aae7736
Author: Sam Lantinga <[email protected]>
Date:   Tue Aug 5 12:01:31 2025 -0700

    Added additional examples of paddle and misc buttons (thanks @AL2009man!)

commit f44a987
Author: Frank Praznik <[email protected]>
Date:   Mon Aug 4 23:54:40 2025 -0400

    cocoa: Wait for fullscreen spaces transitions to complete if switching to an exclusive mode

    If attempting to switch to an exclusive mode while a fullscreen spaces transition is active, wait until the transition is complete before trying to apply the changes, or the window can wind up in a weird, broken state if a mode switch occurs while in a fullscreen space.

commit 3163e0c
Author: Frank Praznik <[email protected]>
Date:   Mon Aug 4 23:49:15 2025 -0400

    Revert "cocoa: Don't re-enter a fullscreen space if leaving to enter an exclusive mode"

    This reverts commit ee8f286.

    It turns out that the problem is elsewhere, related to needing to block mode changes until spaces transitions are complete.

commit b6fa89e
Author: Alexander Batalov <[email protected]>
Date:   Mon Aug 4 19:51:37 2025 +0300

    Fix directory globbing on Android

commit a05aca5
Author: Mathieu Eyraud <[email protected]>
Date:   Mon Aug 4 11:14:52 2025 +0200

    Fix condition for setting HDR properties

commit ee8f286
Author: Frank Praznik <[email protected]>
Date:   Mon Aug 4 22:07:24 2025 -0400

    cocoa: Don't re-enter a fullscreen space if leaving to enter an exclusive mode

    Doing so can leave the window in a weird, offset state.

commit 293b8b9
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 4 16:53:09 2025 -0700

    x11: Fix regression reading GNOME content scale

    - Removed gtk-xft-dpi read from GetGlobalContentScale. Xrm either returns either the same value as gtk-xft-dpi or the integer
      scale value in cases where gtk-xft-dpi is 1.

    - Refactor SDL_x11settings handlers to defer to GetGlobalContentScale

    - GetGlobalContentScale is now exported and the XSettings and Gtk signal handlers now use it for consistency. This involves
      a bit of extra work reading from Xrm rather than the setting notification but ensures consistent handling based on signal
      origin and hints enabled.

    - Hook both gtk-xft-dpi in SDL_x11settings. This should generally result in only one being called based on which is updated.
      Since both signal handlers defer to X11_GetGlobalContentScale this will cause the same content scale to be applied multiple
      times. The gtk-xft-dpi signal is now only used to trigger content scale updates when the XSettings notification does not occur.

commit c86bd09
Merge: bd0edb4 7bb045c
Author: eafton <[email protected]>
Date:   Tue Aug 5 00:35:26 2025 +0300

    Merge branch 'libsdl-org:main' into x11tk

commit 7bb045c
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 4 13:04:17 2025 -0700

    Fixed Windows build

commit bd0edb4
Merge: b79d5ba 9a71e3f
Author: eafton <[email protected]>
Date:   Mon Aug 4 20:54:41 2025 +0300

    Merge branch 'libsdl-org:main' into x11tk

commit 9a71e3f
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 4 10:39:34 2025 -0700

    Revert "Add SDL_IsTraySupported"

    This reverts commit 47d8bdd.

    There are runtime reasons why creating a tray can fail, so the correct approach is not to assume that just because a platform supports a tray that trays are available. Instead, you should create a tray at application startup, for the lifetime of the application, and handle failures at that point.

    Closes libsdl-org#13632

commit bba6555
Author: Sam Lantinga <[email protected]>
Date:   Mon Aug 4 10:21:58 2025 -0700

    Enable background input when using Microsoft GameInput

commit 483b8d4
Author: Frank Praznik <[email protected]>
Date:   Sat Aug 2 17:31:41 2025 -0400

    x11: Implement precision/pixel scrolling

    Manual rebase of libsdl-org#5382 with some changes for SDL3 (thanks @wooosh).

commit 23e08f7
Author: Petar Popovic <[email protected]>
Date:   Sun Aug 3 17:58:02 2025 +0200

    SDL_LoadWAV_IO(): On error, set `*audio_buf` to NULL and `*audio_len` to 0

commit faf3bd9
Author: Petar Popovic <[email protected]>
Date:   Sun Aug 3 16:32:42 2025 +0200

    SDL_enabled_assert(): Use `NULL` istead of `0` to explicity initialize the pointer members of SDL_AssertData

commit 8dedf44
Author: Sam Lantinga <[email protected]>
Date:   Sun Aug 3 07:24:10 2025 -0700

    Fixed warning: initialization of pointer of type 'VkSampler' (aka 'struct VkSampler_T *') to null from a constant boolean expression

    Fixes libsdl-org#13628

commit cb54360
Author: Hayden Gray <[email protected]>
Date:   Sun Aug 3 10:22:32 2025 -0400

    tray: linux fix tray menu elements not running callbacks (libsdl-org#13626)

commit b79d5ba
Merge: 416cfd5 e1a623f
Author: eafton <[email protected]>
Date:   Sun Aug 3 16:18:46 2025 +0300

    Merge branch 'libsdl-org:main' into x11tk

commit e1a623f
Author: Ryan C. Gordon <[email protected]>
Date:   Sat Aug 2 22:53:34 2025 -0400

    SDL_migration.cocci: Fixed a few incorrect function names.

commit e8b5d90
Author: mitchellcairns <[email protected]>
Date:   Sat Aug 2 19:11:18 2025 -0700

    SInput: ABXY Style Application and Code Cleanup (libsdl-org#13624)

    ABXY Face Style Application

    - The abxy face style extraction now applies to any SInput device.
    - The use-case here is that gamepads that allow for changing styles can dynamically adjust the button labels firmware-side to have the physical location better represent the actual button being pressed.

    SInput Sub-Type Clarification

    - The code has been updated to better reflect the intention behind the sub-type field of the GUID byte 15.
    - Any SInput device may utilize the Sub-Type field to indicate variants of the same device (Same device that has rear paddles or additional physical features but is otherwise identical, etc.).

    "Firebird" Company Name Clarification

    - "Bonjiri" was a wrong translation. Got clarification from the company and official PID registration for the official English spelling (See raspberrypi/usb-pid@0c5234c).
    - Fixed this spelling for all references (official mapping strings still pending and this will return NULL until this is provided).

    Code Notes
    - Various notes have been updated to have more clear indications.
    - I have moved the face-type and sub-type debug messages to be paired with the extraction for easier location.
    - I've removed an incorrect note left-over from a previous commit regarding command response information.

commit 51ce3f8
Author: Frank Praznik <[email protected]>
Date:   Mon Jul 28 12:02:27 2025 -0400

    x11: Filter mouse wheel events from "Master" devices

    Discard wheel events from "Master" devices to avoid duplicates, as wheel events are stateless and can't be deduplicated.

commit 4246356
Author: Frank Praznik <[email protected]>
Date:   Thu Jul 31 19:56:46 2025 -0400

    GPU: Vulkan backend flags command buffer for cleanup when swapchain is requested

    When skipping presentation due to the window being hidden, presentDataCount is not incremented on the command buffer, and subsequently the submitted command buffers will not be cleaned up as long as the window is hidden. This results in a lag spike when showing the window due to all previously submitted command buffers suddenly being cleaned up at once, and lag at shutdown due to an equivalent number of fences needing to be destroyed.

    Instead of relying on presentDataCount to determine whether a command buffer should be cleaned up, use a flag, which is set under the appropriate circumstances.

commit ae5ce25
Author: Petar Popovic <[email protected]>
Date:   Sat Aug 2 15:42:09 2025 +0200

    Fix double-free warning in src/hidapi/linux/hid.c

commit 2b94062
Author: Antheas Kapenekakis <[email protected]>
Date:   Fri Aug 1 14:44:13 2025 +0200

    sinput: fix compiling with debug output on

commit 5dc8015
Author: Anonymous Maarten <[email protected]>
Date:   Sat Aug 2 03:39:38 2025 +0200

    ci: Haiku does not need -DSDL_UNIX_CONSOLE_BUILD=ON

    Haiku has a native video system

commit 2190705
Author: Anonymous Maarten <[email protected]>
Date:   Sat Aug 2 03:08:03 2025 +0200

    ci: configure with -DCMAKE_SYSTEM_NAME=Haiku for Haiku

    Fixes ci regression introduced in e8b69b0

commit 8796f0a
Author: Sam Lantinga <[email protected]>
Date:   Fri Aug 1 17:44:22 2025 -0700

    SDL_gtk: Prevent loading GTK-3 if a different version of GTK is already loaded

    - gtk_init_check claims it will not terminate the program on failure, however this is does
      not apply to the internal check it performs to see whether another GTK library is already
      loaded, the detection of which triggers a g_error which glib treats as fatal.

    - gtk_progress_get_type and gtk_misc_get_type are checked to match the checks done
      by _gtk_module_has_mixed_deps.

    - Clean up gtk/gdk loading. There are no library fallbacks so the one option available can
      be loaded rather than iterating through a list of one item.

commit f241e8e
Author: Ozkan Sezer <[email protected]>
Date:   Sat Aug 2 01:47:32 2025 +0300

    windows: replace shobjidl_core.h usage with shobjidl.h except for when targeting xbox

    Closes libsdl-org#13571

commit 1c5c3b1
Author: capehill <[email protected]>
Date:   Sun Jun 29 16:34:05 2025 +0300

    Fix SDL_BlitSurfaceScaled crash

    SDL_BlitSurfaceScaled could crash when passed large coordinates, due
    to final_dst.w or final_dst.h getting negative values.

commit d04899f
Author: Antheas Kapenekakis <[email protected]>
Date:   Fri Aug 1 19:15:54 2025 +0300

    Fix setting RGB without a player led (libsdl-org#13524)

    There is a bug where SInput checks for player led capability before
    setting RGB. This means that if a controller does not have a player led,
    RGB commands are not sent.

commit 1749aba
Author: Petar Popovic <[email protected]>
Date:   Sat Jul 26 19:35:06 2025 +0200

    Fixed a few "-Wredundant-decls" warnings

commit 550d95e
Author: Frank Praznik <[email protected]>
Date:   Fri Aug 1 10:33:55 2025 -0400

    wayland: Cleanup an outdated conditional and comment

    There may have been a reason for not attaching a null buffer when destroying a popup at some point in the past, but that is unnecessary now, as is the comment about ShowWindow crashing, as ShowWindow assures that a null buffer is attached before (re)creating the window.

commit 9034375
Author: A1029384756 <[email protected]>
Date:   Fri Aug 1 00:08:35 2025 -0400

    wayland: reorder surface destruction to avoid premature blanking

commit 83818ee
Author: Ozkan Sezer <[email protected]>
Date:   Fri Aug 1 06:28:02 2025 +0300

    tests: c90 fixes (#endif comments) for consistency after commit 9e37839

commit 9e37839
Author: Anonymous Maarten <[email protected]>
Date:   Fri Aug 1 02:27:54 2025 +0200

    Fix testnative C90 compatibility

commit 7b501ae
Author: Anonymous Maarten <[email protected]>
Date:   Fri Aug 1 02:00:08 2025 +0200

    Add a few include guards to private headers

commit 06cafa3
Author: Anonymous Maarten <[email protected]>
Date:   Fri Aug 1 01:59:15 2025 +0200

    cmake: explicitly disable UNITY_BUILD property for SDL3 libraries

commit 0922182
Author: Petar Popovic <[email protected]>
Date:   Fri Aug 1 00:33:54 2025 +0200

    Fix potential memory leak in SDL_render_gles2.c

commit dc2c83c
Author: Matthew Zavislak <[email protected]>
Date:   Thu Jul 31 16:12:54 2025 -0700

    Support Google Play 16 KB Page Size Requirement (libsdl-org#13470)

    - See: https://developer.android.com/guide/practices/page-sizes#update-packaging
    - Also, make min API uniform at 21 (from 16 and 23 in a few places)

commit c5edf4b
Author: cosmonaut <[email protected]>
Date:   Thu Jul 31 14:12:45 2025 -0700

    GPU: Bail out of aquiring Vulkan swapchain if window is hidden

commit 6d580d7
Author: mitchellcairns <[email protected]>
Date:   Thu Jul 31 15:36:10 2025 -0700

    Fix Axis Inputs for Generic SInput Device (libsdl-org#13489)

    - Implement correct SInput generic mapping string to map analog axes
    - Implement 6 axis count fallback for generic SInput Device

commit 2989d0c
Author: Sam Lantinga <[email protected]>
Date:   Thu Jul 31 09:41:35 2025 -0700

    Fixed build

commit b0cdb71
Author: Frank Praznik <[email protected]>
Date:   Thu Jul 31 12:13:07 2025 -0400

    wayland: Adjust popup adjoining check

    The previous calculation could result in a window whose original position was positioned exactly corner-to-corner with the parent not being adjusted to be adjoining, and thus subject to spurious closure.

commit 88cbe85
Author: Sam Lantinga <[email protected]>
Date:   Thu Jul 31 08:57:59 2025 -0700

    Added missing files

commit 26c41f3
Author: Sam Lantinga <[email protected]>
Date:   Thu Jul 31 08:49:40 2025 -0700

    Fix Android build

    - Android defines SDL_PLATFORM_UNIX but does not compile core/unix sources
      so add checks for SDL_PLATFORM_ANDROID where SDL_gtk is used.

    - Fix missing void parameter list in SDL_Gtk_EnterContext.

    - Remove unneeded SDL_gtk.h include in SDL_events.c

commit bf7b4d4
Author: Sam Lantinga <[email protected]>
Date:   Thu Jul 31 08:49:36 2025 -0700

    x11: Add GTK signal handler for gtk-xft-dpi and reader in GetGlobalContentScale

    - This is to support dynamic updates of content scale when running in XWayland. The GTK signal is
      preferred over the XSettings watcher and Xrm database if supported as it will trigger and update
      for both native X11 and XWayland on changes to Xft.dpi.

commit 3c369aa
Author: Sam Lantinga <[email protected]>
Date:   Thu Jul 31 08:49:31 2025 -0700

    unix: Refactor GTK bindings from SDL_tray to separate SDL_gtk module to allow shared usage

    - SDL creates and requires usage of a specific glib context. This context is set as the global
      glib context with SDL_Gtk_EnterContext and the previous context is restored with
      SDL_Gtk_ExitContext.

    - To avoid changing the behavior of SDL_tray, which is the only consumer of SDL_gtk currently,
      the SDL_UpdateTray function now unconditionally runs a single glib frame iteration and is
      responsible for dispatching glib events for all consumers in SDL_PumpEvents.

    - Cleaned up some error handling in SDL_tray.

commit d8ac518
Author: Cheney Wang <[email protected]>
Date:   Wed Jul 30 17:44:47 2025 -0400

    GPU: Fix wrong Vulkan swapchain size when retrying acquire

commit 3d1a28c
Author: Wouter Wijsman <[email protected]>
Date:   Wed Jul 30 21:06:13 2025 +0200

    psp: fix audio not playing

commit 3195980
Author: Thaddeus Crews <[email protected]>
Date:   Wed Jul 30 10:34:01 2025 -0500

    Define relevant macros when LACKS_ERRNO_H is true

commit 10458f2
Author: Stefan Schlosser <[email protected]>
Date:   Wed Jul 30 13:10:11 2025 +0200

    SDL_getenv.c: fix dynamic loading of environ symbol on FreeBSD

    The current implementation uses the returned address of the `dlsym` function
    directly to load the `environ` symbol. But this function doesn't return the
    address to the symbol itself, instead it returns the address to the location
    where the actual address is stored, i.e. it's an additional indirection.
    Consequently, the implementation fails to load and process the environment
    variables successfully.

    One example where this error shows up is in the `Dialog API`: in an `X11`
    environment, the `zenity` driver requires access to the user's `DISPLAY` and
    `XAUTHORITY` environment variables. Because these variables aren't transfered
    to the `zenity` process, no dialogs are shown. This can be exercised in the
    `test/testdialog.c` testprogram.

    The fix changes the indirection level of the `dlsym` call from `char **` to
    `char ***`, does a `NULL`-check in case the call failed, and returns the
    dereferenced actual adress to the `environ` symbol.

commit e239298
Author: SDL Wiki Bot <[email protected]>
Date:   Wed Jul 30 08:06:30 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit dec2104
Author: Ryan C. Gordon <[email protected]>
Date:   Wed Jul 30 00:52:29 2025 -0400

    docs: Slightly improve virtual joystick docs.

    Reference libsdl-org/sdlwiki#78

commit ea04bdb
Author: Ryan C. Gordon <[email protected]>
Date:   Wed Jul 30 00:42:57 2025 -0400

    docs: Added a note about virtual joysticks to CategoryJoystick.

    Fixes libsdl-org/sdlwiki#78

commit c663b6e
Author: Sam Lantinga <[email protected]>
Date:   Tue Jul 29 20:48:32 2025 -0700

    Don't leave garbage in output parameters

commit cd15893
Author: SDL Wiki Bot <[email protected]>
Date:   Wed Jul 30 03:30:05 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit acbe863
Author: Ryan C. Gordon <[email protected]>
Date:   Tue Jul 29 23:21:47 2025 -0400

    docs: Note SDL_EVENT_AUDIO_DEVICE_ADDED is sent for all devices at startup.

    Fixes libsdl-org/sdlwiki#721

commit 39794ae
Author: SDL Wiki Bot <[email protected]>
Date:   Wed Jul 30 03:13:02 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit d9b5783
Author: SDL Wiki Bot <[email protected]>
Date:   Wed Jul 30 03:04:38 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit 07af4b2
Author: Evan Hemsley <[email protected]>
Date:   Tue Jul 29 15:34:08 2025 -0700

    GPU: Fix incorrect block size when D3D12 uniform buffer is rotated (libsdl-org#13469)

commit f27dbb2
Author: Petar Popovic <[email protected]>
Date:   Tue Jul 29 19:51:44 2025 +0200

    Fix two use-after-free warnings

commit 774c0b3
Author: Ryan C. Gordon <[email protected]>
Date:   Tue Jul 29 12:14:04 2025 -0400

    android: Different approach to SDL_GetPathInfo() for assets.

    Reference Issue libsdl-org#13050.

commit beea8d6
Author: Petar Popovic <[email protected]>
Date:   Tue Jul 29 11:44:15 2025 +0200

    Replaced binary integer literals with hexadecimal integer literals

commit 5f4416b
Author: Vicki Pfau <[email protected]>
Date:   Mon Jul 28 20:03:51 2025 -0700

    joystick: Improve Xbox controller mapping with xpad quirks (libsdl-org#13305)

    xpad has a series of questionable design choices when it comes to button
    mapping. Notably, BTN_TRIGGER_HAPPY1-4 are used for the D-pad on dance mats
    instead of the typical BTN_DPAD_*, and maps the paddles to
    BTN_TRIGGER_HAPPY5-8. This commit plumbs through driver detection for a udev
    device and adds special exceptions for xpad's quirks.

    Newer kernels (6.17+) add the BTN_GRIP* mappings for paddles on controllers. We
    should prefer that if available, as its meaning and mapping is unambiguous.
    However, since it's only in new kernels, we need to maintain the older mappings
    where we know they exist.

    It also exposes KEY_RECORD as the share button regardless of vendor, which had
    previously been gated behind being a Microsoft controller. All Xbox Series
    controllers can include this button, and many third party ones do.

commit 416cfd5
Author: eafton <[email protected]>
Date:   Mon Jul 28 23:19:58 2025 +0300

    Implement suggest

    Co-authored-by: Sam Lantinga <[email protected]>

commit 25cf1a5
Author: Sam Lantinga <[email protected]>
Date:   Mon Jul 28 13:11:07 2025 -0700

    Map GameCube controller trigger clicks as misc3 and misc4

    This is for consistency with the GC Ultimate controller and allows binding in Steam

commit cab331c
Author: eafton <[email protected]>
Date:   Mon Jul 28 23:10:40 2025 +0300

    Implement suggested changes in X11 toolkit and messagebox code

commit b8e7428
Author: eafton <[email protected]>
Date:   Mon Jul 28 22:21:16 2025 +0300

    Fix X11 toolkit memory leak + improve Randr support in X11 toolkit

commit c8ebbb3
Author: SDL Wiki Bot <[email protected]>
Date:   Mon Jul 28 18:58:19 2025 +0000

    Sync SDL3 wiki -> header

    [ci skip]

commit b3ba1c1
Author: Xen <[email protected]>
Date:   Mon Jul 28 11:43:16 2025 -0700

    Update SDL_clipboard.h

    Typo fixes and a small addition to SDL_SetClipboardData about mime_type list usage clarity.

commit 30f0aeb
Author: Dan Andrus <[email protected]>
Date:   Wed Jul 23 16:31:59 2025 +0200

    Check NSWindow::isVisible before sending SDL_WINDOWEVENT_RESTORED during Cocoa_WindowListener::windowDidResize
eafton pushed a commit to eafton/SDL that referenced this pull request Sep 2, 2025
There is a bug where SInput checks for player led capability before
setting RGB. This means that if a controller does not have a player led,
RGB commands are not sent.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants