# SDL changelog > Cross-platform access to audio, input, and graphics hardware for games and media. - Vendor: SDL - Category: Frameworks & Libraries - Official site: https://www.libsdl.org - Tracked by: What's New (https://whatsnew.fyi/product/sdl) - Harvested from: GitHub (libsdl-org/SDL) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### release-3.4.14 — 3.4.14 - Date: 2026-08-03 - Version: release-3.4.14 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.14 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.14 - **added** — GPU buffers and textures can have multiple read usages - **fixed** — Fixed X11 crash if the IME service was shutdown in the background - **fixed** — Fixed hang when hiding an X11 window on some window managers - **fixed** — Fixed being unable to get clipboard text on older versions of macOS - **fixed** — Fixed the 8BitDo Pro 3 controller showing up twice on macOS - **fixed** — Fixed Xbox controllers not being detected if SDL is built with GameInput support - **fixed** — Fixed pen creating phantom mouse events in relative mode on Android This is a stable bugfix release, with the following changes: * GPU buffers and textures can have multiple read usages * Fixed X11 crash if the IME service was shutdown in the background * Fixed hang when hiding an X11 window on some window managers * Fixed being unable to get clipboard text on older versions of macOS * Fixed the 8BitDo Pro 3 controller showing up twice on macOS * Fixed Xbox controllers not being detected if SDL is built with GameInput support * Fixed pen creating phantom mouse events in relative mode on Android ### release-3.4.12 — 3.4.12 - Date: 2026-07-01 - Version: release-3.4.12 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.12 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.12 - **fixed** — Fixed an assert on Windows in SDL_SetWindowOpacity() - **changed** — Improved support for external surfaces under Wayland - **fixed** — Fixed visual artifacts when switching render targets with the Vulkan renderer - **fixed** — Fixed crash rendering YUV textures on NVIDIA drivers with the Vulkan renderer - **added** — Added SDL_HINT_ENABLE_STEAM_SCREEN_KEYBOARD to customize behavior on Steam Deck and Steam Machine - **changed** — Improved support for gamepads under Emscripten - **added** — Added hotplug detection support when using libusb for HIDAPI controllers - **fixed** — Fixed flipped Xbox 360 controller axes on macOS - **fixed** — Fixed truncated long text input sequences when using sdl2-compat This is a stable bugfix release, with the following changes: * Fixed an assert on Windows in SDL_SetWindowOpacity() * Improved support for external surfaces under Wayland * Fixed visual artifacts when switching render targets with the Vulkan renderer * Fixed crash rendering YUV textures on NVIDIA drivers with the Vulkan renderer * Added SDL_HINT_ENABLE_STEAM_SCREEN_KEYBOARD to customize behavior on Steam Deck and Steam Machine * Improved support for gamepads under Emscripten * Added hotplug detection support when using libusb for HIDAPI controllers * Fixed flipped Xbox 360 controller axes on macOS * Fixed truncated long text input sequences when using sdl2-compat ### release-3.4.10 — 3.4.10 - Date: 2026-05-31 - Version: release-3.4.10 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.10 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.10 - **added** — Allow depth texture arrays in the GPU API - **fixed** — Fixed a crash when copying to the Vulkan swapchain with the GPU API - **added** — Added support for packed 16-bit texture formats in the Metal renderer - **fixed** — Fixed rare cursor corruption on Windows - **fixed** — Fixed the text edit cursor position when using the Korean IME on Windows - **added** — Added controller sensor support for GameInput v3 - **added** — Added support for gamepad motion sensors on Android - **changed** — Release wired controllers back to the OS when the application is in the background on Android - **fixed** — Fixed Ipega controllers being ignored in keyboard mode - **added** — Added support for GameCube rumble when the adapter is in PC mode and has the latest firmware - **fixed** — Fixed rumble on the new Steam Controller - **added** — Added support for the GameSir Super Nova in Xbox 360 mode - **added** — Added support for the PDP Afterglow Wave Wireless Controller for Switch - **fixed** — Fixed several second hang when changing focus on X11 in some situations - **changed** — Disable the X Synchronization Extension by default, can be enabled with SDL_HINT_VIDEO_X11_ENABLE_XSYNC_EXT - **fixed** — Fixed SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH on X11 - **fixed** — Fixed a rare crash on Raspberry Pi when creating a window This is a stable bugfix release, with the following changes: * Allow depth texture arrays in the GPU API * Fixed a crash when copying to the Vulkan swapchain with the GPU API * Added support for packed 16-bit texture formats in the Metal renderer * Fixed rare cursor corruption on Windows * Fixed the text edit cursor position when using the Korean IME on Windows * Added controller sensor support for GameInput v3 * Added support for gamepad motion sensors on Android * Release wired controllers back to the OS when the application is in the background on Android * Fixed Ipega controllers being ignored in keyboard mode * Added support for GameCube rumble when the adapter is in PC mode and has the latest firmware * Fixed rumble on the new Steam Controller * Added support for the GameSir Super Nova in Xbox 360 mode * Added support for the PDP Afterglow Wave Wireless Controller for Switch * Fixed several second hang when changing focus on X11 in some situations * Disable the X Synchronization Extension by default, can be enabled with SDL_HINT_VIDEO_X11_ENABLE_XSYNC_EXT * Fixed SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH on X11 * Fixed a rare crash on Raspberry Pi when creating a window ### release-3.4.8 — 3.4.8 - Date: 2026-05-02 - Version: release-3.4.8 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.8 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.8 - **fixed** — Controller related crash on Windows introduced in 3.4.6 - **fixed** — Crash when showing a dialog on Unix if zenity is not installed This is a hotfix release, with the following changes: * Fixed a controller related crash on Windows, introduced in 3.4.6 * Fixed a crash when showing a dialog on Unix if zenity isn't installed ### release-3.4.6 — 3.4.6 - Date: 2026-05-01 - Version: release-3.4.6 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.6 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.6 - **fixed** — Xbox controllers being unresponsive on preview release of Windows 11 - **fixed** — Enumerating subdirectories in the application assets on Android - **fixed** — On-screen keyboard being hidden while shown on Android - **fixed** — Text input being canceled when the on-screen keyboard goes away on iOS - **fixed** — Pen hover getting a stale position when lifting off the iPad on iOS - **fixed** — Menu button state on controllers on Apple platforms - **fixed** — Scaled cursor image selection on Wayland - **fixed** — Horizontal touchpad scrolling direction on X11 - **fixed** — Crash on exit when using KMSDRM in atomic mode - **fixed** — Multi-threaded crashes using SDL GPU on Vulkan and Metal - **fixed** — Building for GDK on Windows This is a stable bugfix release, with the following changes: * Fixed Xbox controllers being unresponsive on preview release of Windows 11 * Fixed enumerating subdirectories in the application assets on Android * Fixed the on-screen keyboard being hidden while shown on Android * Fixed text input being canceled when the on-screen keyboard goes away on iOS * Fixed pen hover getting a stale position when lifting off the iPad on iOS * Fixed the menu button state on controllers on Apple platforms * Fixed scaled cursor image selection on Wayland * Fixed horizontal touchpad scrolling direction on X11 * Fixed crash on exit when using KMSDRM in atomic mode * Fixed multi-threaded crashes using SDL GPU on Vulkan and Metal * Fixed building for GDK on Windows ### release-3.4.4 — 3.4.4 - Date: 2026-04-04 - Version: release-3.4.4 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.4 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.4 - **fixed** — Fix crash when calling SDL_RenderGeometryRaw() with both texture and uv set to NULL - **changed** — Default SDL_GL_FRAMEBUFFER_SRGB_CAPABLE back to zero to fix brightness issues with existing applications - **fixed** — Prevent the window from growing when scale to display is used on Wayland - **changed** — Scale custom cursors with the pointer scale on Wayland - **fixed** — Fix missing mouse cursor on KMSDRM - **fixed** — Remove the window shape when SDL_SetWindowShape() is passed NULL - **fixed** — Fix sending duplicate key down events when reconciling X11 modifier state - **fixed** — Fix backspace handling on Android with API 30+ - **added** — Add SDL_HINT_WINDOWS_RAW_KEYBOARD_INPUTSINK to add the RIDEV_INPUTSINK flag for raw input on Windows - **fixed** — Fix Print Screen key capture during keyboard grab - **fixed** — Fix pipewire audio output hanging under heavy load - **fixed** — Fix DirectSound buffer creation failure with >200kHz - **added** — Implement support for SDL_HINT_AUDIO_DEVICE_STREAM_ROLE on Android - **fixed** — Fix crash when setting framerate for a camera on macOS - **fixed** — Fix out of memory issue opening a V4L2 camera with FRMIVAL_TYPE_CONTINUOUS - **changed** — Disable system gesture state for game controllers on macOS - **added** — Add support for SL/SR on Switch 2 controllers in mini-controller mode - **added** — Add battery status for newer FlyDigi controllers - **added** — Add support for the Flydigi Vader 5 Pro in Xbox 360 mode - **added** — Add support for battery status on third-party DualSense controllers This is a stable bugfix release, with the following changes: * Fixes a crash when calling SDL_RenderGeometryRaw() with both texture and uv set to NULL * Default SDL_GL_FRAMEBUFFER_SRGB_CAPABLE back to zero, to fix brightness issues with existing applications * Prevent the window from growing when scale to display is used on Wayland * Scale custom cursors with the pointer scale on Wayland * Fixed missing mouse cursor on KMSDRM * Remove the window shape when SDL_SetWindowShape() is passed NULL * Fixed sending duplicate key down events when reconciling X11 modifier state * Fixed backspace handling on Android with API 30+ * Added SDL_HINT_WINDOWS_RAW_KEYBOARD_INPUTSINK to add the RIDEV_INPUTSINK flag for raw input on Windows * Fixed Print Screen key capture during keyboard grab * Fixed pipewire audio output hanging under heavy load * Fixed DirectSound buffer creation failure with >200kHz * Implemented support for SDL_HINT_AUDIO_DEVICE_STREAM_ROLE on Android * Fixed a crash when setting framerate for a camera on macOS * Fixed an out of memory issue opening a V4L2 camera with FRMIVAL_TYPE_CONTINUOUS * Disabled system gesture state for game controllers on macOS * Added support for SL/SR on Switch 2 controllers in mini-controller mode * Added battery status for newer FlyDigi controllers * Added support for the Flydigi Vader 5 Pro in Xbox 360 mode * Added support for battery status on third-party DualSense controllers * Added support for accelerometers on third-party PS3 controllers * Fixed opening the wrong controller index on PS2 * Added support for the ZUIKI EVOTOP controller * Added support for persistent storage with Emscripten (see SDL_EMSCRIPTEN_PERSISTENT_PATH) * Fixed several issues with globbing directories * Fixed the Windows file dialog calling the callback twice in some cases ### release-3.4.2 — 3.4.2 - Date: 2026-02-21 - Version: release-3.4.2 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.2 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.2 - **added** — Enable Vulkan support on OpenBSD - **changed** — Don't include KHR_portability_enumeration by default on macOS - **added** — Add support for GPU ARGB1555 (B5G5R5A1_UNORM) textures with Direct3D11 - **fixed** — Fix D3D12 DSV creation for array/cube/cube-array depth textures - **added** — Add SDL_PROP_GPU_DEVICE_CREATE_METAL_ALLOW_MACFAMILY1_BOOLEAN to allow using the GPU API with older Mac hardware - **added** — Add SDL_HINT_OPENGL_FORCE_SRGB_FRAMEBUFFER to force specific sRGB behavior for OpenGL and OpenGL ES - **fixed** — Fix long startup time on Windows when some non-compliant input devices are present - **fixed** — Fix a crash at startup when the broken EZFRD64.DLL is present - **added** — Add support for the Razer Raiju V5 Pro - **fixed** — Fix a divide by zero when using Nintendo Switch 2 controllers - **fixed** — Fix hang sending output reports to the NVIDIA SHIELD Controller on macOS - **fixed** — Fix various controllers showing up twice on macOS - **fixed** — Fix handling GameCube adapters in PC mode on Linux and macOS - **added** — Add share button mapping to Xbox Series X controller on Android - **added** — Add support for the third stylus button on Android - **fixed** — Fix high audio latency on Android - **fixed** — Fix only one mouse button being usable at a time on Emscripten - **fixed** — Fix SDL_SetWindowIcon on single-threaded Emscripten builds - **fixed** — Fix SDL_GlobDirectory on iOS and Android - **fixed** — Fix some textures rendering too small on the PSP This is a stable bugfix release, with the following changes: * Enabled Vulkan support on OpenBSD * Don't include KHR_portability_enumeration by default on macOS * Added support for GPU ARGB1555 (B5G5R5A1_UNORM) textures with Direct3D11 * Fixed D3D12 DSV creation for array/cube/cube-array depth textures * Added SDL_PROP_GPU_DEVICE_CREATE_METAL_ALLOW_MACFAMILY1_BOOLEAN to allow using the GPU API with older Mac hardware * Added SDL_HINT_OPENGL_FORCE_SRGB_FRAMEBUFFER to force specific sRGB behavior for OpenGL and OpenGL ES * Fixed long startup time on Windows when some non-compliant input devices are present * Fixed a crash at startup when the broken EZFRD64.DLL is present * Added support for the Razer Raiju V5 Pro * Fixed a divide by zero when using Nintendo Switch 2 controllers * Fixed hang sending output reports to the NVIDIA SHIELD Controller on macOS * Fixed various controllers showing up twice on macOS * Fixed handling GameCube adapters in PC mode on Linux and macOS * Added share button mapping to Xbox Series X controller on Android * Added support for the third stylus button on Android * Fixed high audio latency on Android * Fixed only one mouse button being usable at a time on Emscripten * Fixed SDL_SetWindowIcon on single-threaded Emscripten builds * Fixed SDL_GlobDirectory on iOS and Android * Fixed some textures rendering too small on the PSP ### release-3.4.0 — 3.4.0 - Date: 2026-01-01 - Version: release-3.4.0 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.4.0 - **added** — SDL_CreateAnimatedCursor() to create animated color cursors - **added** — SDL_HINT_MOUSE_DPI_SCALE_CURSORS to automatically scale cursors based on the display scale - **added** — SDL_SetWindowProgressState(), SDL_SetWindowProgressValue(), SDL_GetWindowProgressState(), and SDL_GetWindowProgressValue() to show progress in the window's taskbar icon on Windows and Linux - **added** — GPU device creation properties SDL_PROP_GPU_DEVICE_CREATE_FEATURE_CLIP_DISTANCE_BOOLEAN, SDL_PROP_GPU_DEVICE_CREATE_FEATURE_DEPTH_CLAMPING_BOOLEAN, SDL_PROP_GPU_DEVICE_CREATE_FEATURE_INDIRECT_DRAW_FIRST_INSTANCE_BOOLEAN, SDL_PROP_GPU_DEVICE_CREATE_FEATURE_ANISOTROPY_BOOLEAN, and SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN to enable the GPU API on older hardware - **added** — SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER to enable configuring Vulkan features when creating a GPU device - **added** — SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN to allow requiring Vulkan hardware acceleration when creating a GPU device - **added** — SDL_GetGPUDeviceProperties() to query information from a GPU device - **added** — SDL_GetPixelFormatFromGPUTextureFormat() and SDL_GetGPUTextureFormatFromPixelFormat() - **added** — SDL_CreateGPURenderer() and SDL_GetGPURendererDevice() to create a 2D renderer for use with GPU rendering - **added** — SDL_CreateGPURenderState(), SDL_SetGPURenderStateFragmentUniforms(), SDL_SetGPURenderState(), and SDL_DestroyGPURenderState() to use fragment shaders with a GPU 2D renderer - **added** — SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_POINTER to create a 2D texture from an existing GPU texture - **added** — SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER to get the GPU texture from a 2D texture when using the GPU 2D renderer - **added** — Support for YUV textures and HDR colorspaces to the GPU 2D renderer - **added** — Support for textures with palettes, and SDL_GetTexturePalette() and SDL_SetTexturePalette() to interact with them - **added** — SDL_RenderTexture9GridTiled() to do tiled instead of stretched 9-grid texture rendering - **added** — SDL_GetDefaultTextureScaleMode() and SDL_SetDefaultTextureScaleMode() to set the texture scale mode for new textures - **added** — SDL_GetRenderTextureAddressMode() and SDL_SetRenderTextureAddressMode() to change the texture addressing mode - **added** — SDL_TEXTURE_ADDRESS_WRAP to allow wrapping of textures if the renderer has SDL_PROP_RENDERER_TEXTURE_WRAPPING_BOOLEAN set Thanks to all the people who have contributed, SDL 3.4.0 is now available! In addition to lots of bug fixes and general system improvements, this release has some major themes of improved interoperability between the 3D GPU API and the 2D rendering API, improved Emscripten support, improved pen handling, and native support for PNG images. Here is a full list of the API changes since the last release: General: * Added SDL_CreateAnimatedCursor() to create animated color cursors * Added SDL_HINT_MOUSE_DPI_SCALE_CURSORS to automatically scale cursors based on the display scale * Added SDL_SetWindowProgressState(), SDL_SetWindowProgressValue(), SDL_GetWindowProgressState(), and SDL_GetWindowProgressValue() to show progress in the window's taskbar icon on Windows and Linux * Added GPU device creation properties to enable the GPU API on older hardware if you're not using these features: - SDL_PROP_GPU_DEVICE_CREATE_FEATURE_CLIP_DISTANCE_BOOLEAN - SDL_PROP_GPU_DEVICE_CREATE_FEATURE_DEPTH_CLAMPING_BOOLEAN - SDL_PROP_GPU_DEVICE_CREATE_FEATURE_INDIRECT_DRAW_FIRST_INSTANCE_BOOLEAN - SDL_PROP_GPU_DEVICE_CREATE_FEATURE_ANISOTROPY_BOOLEAN - SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN * Added SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER to enable configuring Vulkan features when creating a GPU device * Added SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN to allow requiring Vulkan hardware acceleration when creating a GPU device * Added SDL_GetGPUDeviceProperties() to query information from a GPU device: - SDL_PROP_GPU_DEVICE_NAME_STRING - SDL_PROP_GPU_DEVICE_DRIVER_NAME_STRING - SDL_PROP_GPU_DEVICE_DRIVER_VERSION_STRING - SDL_PROP_GPU_DEVICE_DRIVER_INFO_STRING * Added SDL_GetPixelFormatFromGPUTextureFormat() and SDL_GetGPUTextureFormatFromPixelFormat() * Added SDL_CreateGPURenderer() and SDL_GetGPURendererDevice() to create a 2D renderer for use with GPU rendering. * Added SDL_CreateGPURenderState(), SDL_SetGPURenderStateFragmentUniforms(), SDL_SetGPURenderState(), and SDL_DestroyGPURenderState() to use fragment shaders with a GPU 2D renderer * Added SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_POINTER to create a 2D texture from an existing GPU texture * Added SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER to get the GPU texture from a 2D texture when using the GPU 2D renderer * Added support for YUV textures and HDR colorspaces to the GPU 2D renderer * Added support for textures with palettes, and SDL_GetTexturePalette() and SDL_SetTexturePalette() to interact with them * Added SDL_RenderTexture9GridTiled() to do tiled instead of stretched 9-grid texture rendering * Added SDL_GetDefaultTextureScaleMode() and SDL_SetDefaultTextureScaleMode() to set the texture scale mode for new textures * Added SDL_GetRenderTextureAddressMode() and SDL_SetRenderTextureAddressMode() to change the texture addressing mode * Added SDL_TEXTURE_ADDRESS_WRAP to allow wrapping of textures if the renderer has SDL_PROP_RENDERER_TEXTURE_WRAPPING_BOOLEAN set * The default YUV colorspace is BT.601 limited range, for compatibility with SDL2 * Added SDL_SCALEMODE_PIXELART as an improved scaling algorithm for pixel art without introducing blurring * Added SDL_FLIP_HORIZONTAL_AND_VERTICAL to flip a surface both horizontally and vertically * Added SDL_LoadPNG(), SDL_LoadPNG_IO(), SDL_SavePNG(), and SDL_SavePNG_IO() to load and save PNG images * Added SDL_LoadSurface() and SDL_LoadSurface_IO() to detect BMP and PNG formats and load them as surfaces * Added SDL_PROP_SURFACE_ROTATION_FLOAT to indicate the rotation needed to display camera images upright * Added SDL_RotateSurface() to create a rotated copy of a surface * SDL_EVENT_WINDOW_EXPOSED now sets data1 to true if it is sent during live resizing * Added SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED, which is sent when the usable desktop bounds change * Added SDL_EVENT_SCREEN_KEYBOARD_SHOWN, which is sent when the on-screen keyboard _[Truncated at 4000 characters — full notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.4.0]_ ### release-3.2.30 — 3.2.30 - Date: 2026-01-01 - Version: release-3.2.30 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/release-3.2.30 - Permalink: https://whatsnew.fyi/product/sdl/releases/release-3.2.30 - **fixed** — Crash in UploadToTexture() when using the direct3d12 renderer - **fixed** — Crash on Android upon returning from the background when using the GPU API - **fixed** — Abort on startup under Wayland when the application is setuid() or setgid() - **changed** — Pass the window along with evdev touch events This is a stable bugfix release, with the following changes: * Fixed a crash in UploadToTexture() when using the direct3d12 renderer * Fixed a crash on Android upon returning from the background when using the GPU API * Fixed abort on startup under Wayland when the application is setuid() or setgid() * Pass the window along with evdev touch events ### prerelease-3.3.6 — 3.3.6 - Date: 2025-12-16 - Version: prerelease-3.3.6 - Original notes: https://github.com/libsdl-org/SDL/releases/tag/prerelease-3.3.6 - Permalink: https://whatsnew.fyi/product/sdl/releases/prerelease-3.3.6 - Labels: Pre-release - **added** — Added SDL_HINT_MOUSE_DPI_SCALE_CURSORS hint with default value of "0" to prevent cursors from unexpectedly changing size - **changed** — Replaced SDL_PROP_SURFACE_ROTATION_NUMBER with SDL_PROP_SURFACE_ROTATION_FLOAT - **changed** — Replaced SDL_HINT_EMSCRIPTEN_FILL_DOCUMENT and related properties with SDL_WINDOW_FILL_DOCUMENT flag and SDL_SetWindowFillDocument() This is an SDL 3.4.0 release candidate, so please [let us know](https://github.com/libsdl-org/SDL/issues) if you run into any issues with it! In addition to bug fixes since the last release candidate, we've made the following API changes: * Added SDL_HINT_MOUSE_DPI_SCALE_CURSORS and changed the default to "0", so cursors don't unexpectedly change size. * SDL_PROP_SURFACE_ROTATION_NUMBER has been replaced with SDL_PROP_SURFACE_ROTATION_FLOAT * SDL_HINT_EMSCRIPTEN_FILL_DOCUMENT and related properties have been replaced with the SDL_WINDOW_FILL_DOCUMENT flag and SDL_SetWindowFillDocument()