Frank Praznik
b96bb152c2
wayland: Don't redundantly set the border state when showing a window
...
They are now set before the initial configure.
2025-01-16 13:54:39 -05:00
Frank Praznik
5a564a718d
wayland: Add a dummy function for the libdecor dismiss popup callback
...
This was never added, and we've been lucky that it's never called as libdecor doesn't check the function pointer for null before doing so.
2025-01-16 13:48:16 -05:00
Frank Praznik
9f6eeb1095
wayland: Set the border state before the initial configure
...
This allows the toplevel bounds to be set correctly on borderless windows.
2025-01-16 13:40:31 -05:00
Ethan Lee
326ce9bb8d
gpu: D3D12 buildfix for Xbox
2025-01-16 12:19:59 -05:00
Ethan Lee
c95b842b30
video: Xbox does not use CreateIconFromSurface
2025-01-16 12:19:46 -05:00
Frank Praznik
7ee2ab3830
wayland: Fix return value check from int-to-bool conversion
2025-01-16 11:52:16 -05:00
Sam Lantinga
1dd8fadca2
Updated to version 3.1.10 for the release candidate
2025-01-16 08:33:18 -08:00
Ryan C. Gordon
3ffb1a8cbd
storage: generic title storage allows override paths without '/' appended.
...
Fixes #11299 .
2025-01-16 08:19:28 -05:00
Ryan C. Gordon
874c07f8de
storage: Don't allow "." and ".." paths, enforce '/' dir separators.
...
Also clarify what characters are valid for Storage paths in the category docs.
Fixes #11079 .
Fixes #11370 .
Fixes #11369 .
2025-01-16 08:19:28 -05:00
Ryan C. Gordon
eb793dede7
filesystem: SDL_GetCurrentDirectory() should add a path separator at the end.
2025-01-16 08:19:28 -05:00
Ryan C. Gordon
87e1b0eb89
filesystem: SDL_EnumerateDirectory() gives dirs with path seperators appended.
...
Fixes #11065 .
Fixes #11427 .
2025-01-16 08:19:28 -05:00
Ramez Ragaa
e98ee9bb04
Adjust testgl.c to test gl_release_behavior
2025-01-16 08:19:05 -05:00
Ryan C. Gordon
3424ec948c
video: SDL_GL_GetAttribute gets correct SDL_GL_CONTEXT_RELEASE_BEHAVIOR value.
...
Original patch was from @ramezgerges (thanks!).
Fixes #11697 .
2025-01-16 08:19:05 -05:00
Ryan C. Gordon
4d63a2b882
io: Renamed src/file to src/io
...
Fixes #11980 .
2025-01-16 08:18:40 -05:00
Sam Lantinga
ea642fe9ff
cocoa: clear mouse focus based on NSEventTypeMouseExited events ( #11991 )
...
We can't directly set the mouse focus since we may get spammed by entered/exited events,
but we can process the current focus later in the mouseMoved handler in line with the
mouse motion event sequence.
Fixes https://github.com/libsdl-org/SDL/issues/8188
2025-01-15 23:34:20 -08:00
Sam Lantinga
2c7b7d1d33
Keep the lifecycle observer active while there are windows active
...
Fixes https://github.com/libsdl-org/SDL/issues/11627
2025-01-15 17:10:49 -08:00
cosmonaut
355f69ebfe
GPU: Ensure thread safety of Vulkan resource creation
2025-01-15 13:45:43 -08:00
Frank Praznik
c9d602307c
cocoa: Only process hit tests on left clicks
...
Otherwise, right-click events over drag areas will be eaten.
2025-01-15 15:44:01 -05:00
Frank Praznik
dd0bdc2561
win32: Pass through non-left mouse button presses when over draggable areas
...
Returning anything other an HTCLIENT result will cause windows to eat the button press, so ensure that non-left presses are passed through to the client over draggable areas.
2025-01-15 15:44:01 -05:00
Ryan C. Gordon
84d35587ee
filesystem: SDL_SYS_EnumerateDirectory inexplicably takes the same arg twice.
2025-01-15 14:09:33 -05:00
Sam Lantinga
fc9b2478d8
windows: don't set focus click pending if SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH is set
...
Fixes https://github.com/libsdl-org/SDL/issues/11976
2025-01-15 10:54:12 -08:00
Sam Lantinga
18d21b36fe
windows: use the initial rect to anchor fixed aspect ratio resizing
...
Fixes https://github.com/libsdl-org/SDL/issues/11688
2025-01-15 10:33:22 -08:00
Sam Lantinga
1995471927
cocoa: fixed resizing windows with fixed aspect ratio
...
The existing algorithm works well for min-max ratios, but didn't allow edge expansion of fixed aspect ratio windows. Use NSWindow setContentAspectRatio instead.
2025-01-15 10:05:34 -08:00
Sam Lantinga
67382e9c83
Fixed detection of function keys on Emscripten
...
Fixes https://github.com/libsdl-org/SDL/issues/11973
2025-01-15 08:07:38 -08:00
Sam Lantinga
23410debf7
SDL_GetKeyboardNameForID(): Set an error message for invalid keyboard IDs
2025-01-15 00:01:06 -08:00
Petar Popovic
8ce176b59a
SDL_GetMouseNameForID(): Set an error message for invalid mouse IDs.
2025-01-14 23:59:49 -08:00
Sam Lantinga
51fa076fdc
Don't send normal keyboard events if no application window has focus
...
This can happen if all the windows shown have the SDL_WINDOW_NOT_FOCUSABLE flag. We'll still accept modifier state changes though, so you can do Control-click actions.
2025-01-14 23:44:43 -08:00
Sam Lantinga
a446381ea9
Tooltips and unfocusable windows can't become main windows
2025-01-14 23:44:43 -08:00
Ryan C. Gordon
ebb24eedc8
mouse: Clean up virtual touch devices as appropriate.
2025-01-15 02:19:59 -05:00
Ryan C. Gordon
dabc93a631
pen: Send virtual mouse and touch events for pen input.
...
Fixes #11948 .
2025-01-15 02:19:59 -05:00
ImThour
169c8d5140
Fix incorrect hotspot calculation for cursor positioning
...
Corrected the calculation of the vertical hotspot position in the `GetCachedCursor` function.
Changed the variable from `data->hot_x` to `data->hot_y` to ensure the correct vertical position of the cursor's hotspot is used when scaling.
2025-01-14 22:37:24 -08:00
Sam Lantinga
8e9c44bc3b
Fixed accidental removal of optional delegate interface check
...
Fixes https://github.com/libsdl-org/SDL/issues/11970
2025-01-14 22:35:13 -08:00
Sam Lantinga
4dd585fb62
coreaudio: convert MPEG channel layout to WAVE channel layout
2025-01-14 22:26:16 -08:00
Sam Lantinga
81e57147f8
Child windows shouldn't take focus if the parent window is in relative mouse mode
...
Fixes https://github.com/libsdl-org/SDL/issues/11807 on Windows
2025-01-14 21:27:06 -08:00
Sam Lantinga
1ab61635a9
Use SDL_Log() for keyboard debugging.
2025-01-14 19:05:07 -08:00
Sam Lantinga
0eaa6197c5
Removed unnecessary __builtin_available check
2025-01-14 17:00:30 -08:00
Sam Lantinga
ffe194c52e
Fixed build when SDL_JOYSTICK_MFI isn't enabled
2025-01-14 17:00:30 -08:00
Sam Lantinga
49dd24e195
Fixed potentially overlapping memcpy() to use memmove()
2025-01-14 14:31:20 -08:00
Green Sky
191a6417d5
events: use SDL_memmove instead of SDL_memcpy for overlapping memory
2025-01-14 14:20:32 -08:00
Ryan C. Gordon
9e60a8994f
audio: Allow streams to change the device-side channels maps.
...
Fixes #11881 .
2025-01-14 16:42:53 -05:00
Sam Lantinga
5ca735b40f
Only use WAVE surround sound channel layouts on macOS 10.15+
2025-01-14 12:03:07 -08:00
Sam Lantinga
cdde6dd7bb
Bumped deployment requirements for Apple platforms
...
We require at least Xcode 12.2 and macOS SDK 11 to build. We support deploying to macOS 10.13, iOS 11.0, and tvOS 11.0.
This cleans up the code significantly
2025-01-14 12:03:07 -08:00
cosmonaut
4294c06836
GPU: Check texture format support in pipeline creation
2025-01-14 10:16:20 -08:00
Scrooge86x
0aa319e4f9
Added support for custom tray icon on Windows via SDL hints.
...
SDL_CreateTray now respects SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL
and SDL_HINT_WINDOWS_INTRESOURCE_ICON hints and uses the specified icon
as the tray icon.
2025-01-13 18:35:49 -08:00
cosmonaut
d590e1f122
GPU: Align D3D12 clear properties to naming convention
2025-01-13 17:38:21 -08:00
Evan Hemsley
fb6df93384
GPU: Add name properties to resources ( #11946 )
2025-01-13 17:29:08 -08:00
Ryan C. Gordon
3766a39409
emscripten: double the audio buffer size.
...
Some systems seem to not keep up with the smaller buffer.
Reference Issue #11930 .
2025-01-13 16:26:18 -05:00
Ryan C. Gordon
4bddf521dd
emscripten: Override emscripten's fullscreen button with SDL's implementation.
...
Fixes #6798 .
Fixes #7913 .
Fixes #9044 .
2025-01-13 14:17:36 -05:00
Sam Lantinga
e5a4f09363
Call SDL_UDEV_Quit() if we don't end up using it
2025-01-13 10:22:10 -08:00
Frank Praznik
b4562c0243
cocoa: Add a hint to control menu visibility in fullscreen spaces windows
...
Adds SDL_HINT_VIDEO_MAC_FULLSCREEN_MENU_VISIBILITY to control whether or not the menu can be accessed when the cursor is moved to the top of the screen when a window is in fullscreen spaces mode.
The three values are true, false, and 'auto' (default), with auto resulting in a hidden menu if fullscreen was toggled programmatically, and the menu being accessible if fullscreen was toggled via the button on the window title bar, so the user has an easy way back out of fullscreen if the client app/game doesn't have a readily available option to toggle it.
2025-01-13 12:37:16 -05:00