Ryan C. Gordon
c45c4a5e51
render: SDL_HINT_RENDER_DRIVER now accepts a comma-separated list.
...
Fixes #11077 .
2025-01-21 11:29:00 -05:00
Sam Lantinga
8526868563
dialog: cleaned up D-Bus portal implementation
...
Fixes https://github.com/libsdl-org/SDL/issues/12036
2025-01-20 22:57:42 -08:00
Ryan C. Gordon
071bebf235
coreaudio: Add a note about why this uses 3 buffers instead of 2.
2025-01-20 23:29:53 -05:00
Katelyn Gadd
c0a9d220b9
vulkan: Fixes for swapchain resize crash on X11.
...
Fixes #11075 .
2025-01-20 23:17:38 -05:00
Ryan C. Gordon
6d5815db52
vulkan: Deal with VK_ERROR_OUT_OF_DATE_KHR returns from vkAcquireNextImageKHR.
...
Fixes #11075 .
2025-01-20 22:32:23 -05:00
Katelyn Gadd
6b7dad7d82
vulkan: move temporary pointer to its own field to prevent a bad dereference.
...
Reference Issue #11075 .
2025-01-20 22:32:23 -05:00
Tomasz Pakuła
10c9fbf411
Use proper polar direction when creating FF_RUMBLE effect
...
Uses proper polar direction of 90 degrees. Previous value probably came from mistakenly using spherical system default.
2025-01-20 16:52:40 -08:00
Tomasz Pakuła
c6c7469708
Translate conditional effect direction instead of hardcoding it to 0
...
Provious code wrongly assumed that direction is not an important part
of conditional effect. Moreover, if there's need to hardcode polar
direction, the default should be 0x4000 (north).
For one axis affects, a direction of 0 means complete lack of force, if
a FFB-enabled device takes direction into force calculation. A sine function
graph can be used to represent the resulting forces where X is the input
direction and Y is the force multiplier (360 degrees equals to 1).
This fixes conditional effect playback on Moza Racing devices, which do
not ignore direction field.
2025-01-20 16:52:40 -08:00
Sam Lantinga
b476695e67
Call the windows message hook while inside a modal message loop
...
Fixes https://github.com/libsdl-org/SDL/issues/12029
2025-01-20 15:56:23 -08:00
Ryan C. Gordon
b6d0bc0431
coreaudio: Use three buffers for the audioqueue, not two.
...
This doesn't affect latency much, but it makes the system usable if the system
drops you down from the bluetooth a2dp profile (headphones) to the handsfree
(I think...?) profile because the bluetooth audio device is also recording,
which would be extremely common in a VoIP app, but also if you're talking
in a different app while also playing audio.
Fixes #8192 .
2025-01-20 18:35:04 -05:00
Ryan C. Gordon
aa10e51c74
audio: Added some minor missing comments in struct SDL_AudioDevice.
2025-01-20 18:35:04 -05:00
Frank Praznik
10a5b388df
win32: Retain the WS_MAXIMIZEDBOX style while in fullscreen
...
This needs to be preserved while in fullscreen, or leaving fullscreen for the maximized state can cause the taskbar to disappear with borderless windows.
2025-01-20 17:01:58 -05:00
Frank Praznik
6449339ae3
win32: Restore the base size of a window when leaving fullscreen
...
Always restore the base floating size of a window before possibly entering the maximized state, as base size can be lost during the fullscreen transition, resulting in the window de-maximizing to the wrong size.
2025-01-20 17:01:58 -05:00
Sam Lantinga
075c0337cd
Removed debug print statement
2025-01-20 13:11:19 -08:00
Sam Lantinga
a036aeda3b
The Vulkan renderer doesn't actually support RGB texture formats
...
Fixes https://github.com/libsdl-org/SDL/issues/10400
2025-01-20 13:09:49 -08:00
Sam Lantinga
9b454a762c
Revert "testautomation: don't validate alpha values on XRGB formats"
...
This reverts commit 759e01bd64 .
It's better to return the expected format from SDL_RenderReadPixels() than skip alpha testing.
2025-01-20 12:57:48 -08:00
Ryan C. Gordon
dcadd23ba1
render: Prevent division by zero if logical presentation is 0 pixels.
2025-01-20 15:52:33 -05:00
Ryan C. Gordon
adb91fd3db
process: Don't use vfork() on Apple platforms.
...
They want you to use fork(), which is almost-identical in their implementation.
They mark vfork() usage with a big scary deprecation warning.
2025-01-20 15:51:02 -05:00
Sam Lantinga
c698c61f03
renderer: initialize the surface colorspace correctly
...
Fixes https://github.com/libsdl-org/SDL/issues/12027
2025-01-20 10:48:13 -08:00
Sam Lantinga
c975f77b0f
Update joysticks and so forth during live resize
...
Fixes https://github.com/libsdl-org/SDL/issues/12022
2025-01-20 10:11:31 -08:00
Sam Lantinga
f8040b2e01
Use UIKeyboardTypeDecimalPad for number fields on iOS
...
Fixes https://github.com/libsdl-org/SDL/issues/12025
2025-01-20 09:09:57 -08:00
Ryan C. Gordon
642262e30e
cocoa: Fix mousegrab when going fullscreen.
...
When going into a fullscreen space, update mouseConfinementRect once the
transition is done. When going exclusive fullscreen, force a window sync so
the transition is complete before we do the update.
Fixes #9088 .
2025-01-20 01:02:30 -05:00
William Hou
7133969e3a
Feature add hint to remap option as alt key ( #12021 )
2025-01-19 20:34:04 -08:00
Sam Lantinga
5f2dd5f04e
tray: fixed multi-threading issues with GTk implementation
...
GTK+ documentation states that all GDK and GTK+ calls should be made from the main thread.
Fixes https://github.com/libsdl-org/SDL/issues/11984
2025-01-19 18:53:55 -08:00
Sam Lantinga
dfdc120268
tray: document thread-safety
2025-01-19 18:53:55 -08:00
Sam Lantinga
d4cda51057
tray: renamed SDL_HasNoActiveTrays() to SDL_HasActiveTrays()
2025-01-19 18:53:55 -08:00
Sam Lantinga
a974888aad
tray: fixed icon colors on Windows
2025-01-19 18:53:55 -08:00
Sam Lantinga
7570ab106d
tray: improved error checking
...
Also clean up any existing trays when the program quits
Fixes https://github.com/libsdl-org/SDL/issues/11893
2025-01-19 18:53:55 -08:00
Sam Lantinga
3afd1e7eaa
windows: use WIN_UTF8ToStringW() for dialog titles
2025-01-19 18:53:55 -08:00
Semphris
43b54b3d72
Fix Windows dialog folder titles
...
Same fix as in cf946e32ba , which was not done for the folder implementation.
2025-01-19 08:19:40 -08:00
Ryan C. Gordon
32965b4bf1
pen: Send virtual mouse motion without a button press when a pen is hovering.
...
Fixes #11470 .
2025-01-18 21:51:03 -05:00
Ryan C. Gordon
5da9d4ecc2
cocoa: Slightly better display hotplugging detection.
...
Fixes #12016 .
2025-01-18 17:02:37 -05:00
Semphris
19f42094bb
Fix Windows fie dialog args freeing
2025-01-18 13:53:56 -08:00
Semphris
721fc7de0b
Correct spacing of pointers ('a* b;' -> 'a *b;')
2025-01-18 13:53:56 -08:00
Semphris
cd269730eb
Fix Windows dialog memory management
2025-01-18 13:53:56 -08:00
Sam Lantinga
049a8f0e52
Use SDL_calloc() instead of SDL_malloc()
...
This automatically initializes memory to zero so you don't have uninitialized memory bugs
2025-01-18 13:41:23 -08:00
Semphris
354d2c390c
Initialize invalid parent_{tray,entry} to NULL
...
The API states that the related functions must return NULL if the function
called (get the parent tray, or get the parent entry) is invalid for this
menu. Initialising the fields to NULL makes that API correct for Windows.
2025-01-18 16:17:16 -05:00
Semphris
b79ada6aa5
Windows trays: Fix ParentEntry & Enabling
...
The test/testtray program would crash on Windows when adding any item and then removing it, because a submenu's parent_entry field was not set.
Additionally, I noticed that some extraneous code copied from the {G,S}etTrayEntryChecked made {G,S}etTrayEntryEnabled work only for checkboxes, which is not the desired behavior.
Both issues were fixed in this commit.
2025-01-18 16:17:16 -05:00
Sam Lantinga
ba95c54f99
macOS: get the correct display name on macOS 10.15+
2025-01-18 09:42:37 -08:00
Frank Praznik
42e0fb10f8
wayland: Set the mouse state before calling the hit test callback
...
Update the mouse state before entering the hit test, in case the global state is queried, or the system menu opened, while in the client hit testing callback.
2025-01-18 12:10:25 -05:00
Sam Lantinga
cd0db8d35e
Added Linux evdev mappings for the Wireless HORIPAD For Steam
2025-01-18 08:09:25 -08:00
Ryan C. Gordon
1d7a681e4d
Revert "emscripten: resizable windows take whole page, resize with browser window."
...
This reverts commit d317fc9c08 .
This has some issues, we'll revisit it for 3.4.0.
Reference Issue #11949 .
2025-01-18 10:15:43 -05:00
Sam Lantinga
c7d1fd90ea
Added support for the 8BitDo Ultimate 2C Wireless in Bluetooth mode
...
Closes https://github.com/libsdl-org/SDL/pull/11415
2025-01-18 07:06:46 -08:00
Sam Lantinga
923123a527
emscripten: Let SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT accept "#none"
...
This is used to say "don't even try to listen for keypresses," for apps that
are managing this outside of SDL.
Fixes #10292 .
2025-01-18 06:19:27 -08:00
Sam Lantinga
c603a9c94a
Moved flag documentation
2025-01-18 06:16:10 -08:00
Sam Lantinga
90b7174a7d
Respect the SDL_BORDERLESS_RESIZABLE_STYLE hint, but default it to true.
2025-01-18 06:07:06 -08:00
Ryan C. Gordon
6a72d32d41
emscripten: Let SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT accept "".
...
This is used to say "don't even try to listen for keypresses," for apps that
are managing this outside of SDL.
Fixes #10292 .
2025-01-18 08:43:55 -05:00
Ryan C. Gordon
f3a39074b0
windows: use WS_THICKFRAME style on borderless windows.
...
This is apparently necessary in newer Windows releases (Windows 10 and later?)
to allow hit-testing to resize the window.
Fixes #8406 .
2025-01-18 08:38:49 -05:00
Ryan C. Gordon
010f27dc70
storage: enumerate and glob on storage can accept a NULL path.
...
This will be treated as the root of the storage tree.
2025-01-17 20:11:50 -05:00
Ryan C. Gordon
a6a8598b98
storage: deal with paths with Windows '\\' path separators appended.
...
Reference Issue #11986 .
2025-01-17 20:11:50 -05:00