Sam Lantinga
ce329d60e4
Added support for alpha blending using palette alpha
...
Fixes https://github.com/libsdl-org/SDL_image/issues/409
2023-12-28 09:33:02 -08:00
Frank Praznik
9c3e831e33
uikit: Send fullscreen enter/leave events
...
Send fullscreen enter/leave events, which will implicitly update the fullscreen flag. Manually setting the flag will suppress attempts to send the events later, as the flag is used for deduplication purposes in the event code.
2023-12-27 17:23:49 -05:00
SDL Wiki Bot
5df3eac925
Sync SDL3 wiki -> header
2023-12-27 20:21:11 +00:00
Sam Lantinga
0dfdf1f3f2
Fixed crash if joystick functions are passed a NULL joystick
2023-12-27 11:25:54 -08:00
Reilly Brogan
4ce935b910
Fix static build with libdecor 0.2.0
2023-12-26 16:29:36 -08:00
Susko3
5d6d149862
Allow passing in `extrainfo` value to `GetMouseMessageSource()`
...
This saves a syscall in WM_INPUT handling
2023-12-26 13:42:19 -08:00
Susko3
e0df963ef0
Fix wrong bit count in comment
...
If we're counting bits from 0, then the MSB is bit 31!
2023-12-26 13:42:19 -08:00
Susko3
c2a55cd2c5
Add missing `(void)` in functions params
2023-12-26 13:42:19 -08:00
Susko3
a3c8f2f6cb
Consolidate mouse-touch event checking logic
...
Saves one `GetMessageExtraInfo()` syscall when handling WM_INPUT events.
Will provide consistent results across various event types.
2023-12-26 13:42:19 -08:00
Susko3
d747daf03d
Use correct touch check flag
...
Matches the one in `GetMouseMessageSource()`.
From my testing on Windows 11, the lower 8 bits in touch events cycle
trough the values 0x8c-0x95 in order.
2023-12-26 13:42:19 -08:00
Susko3
a961066d0b
Add basic touch/finger support to `testpen.c`
...
Reuses the pen code as much as possible.
Seems like the right place, see
https://github.com/libsdl-org/SDL/pull/8749#issuecomment-1869671334 .
2023-12-26 13:42:19 -08:00
Sam Lantinga
a3b5eb07b2
Removed extern "C" linkage from main() declaration
...
According to the C++ spec, main() should not have any linkage specifier:
https://en.cppreference.com/w/cpp/language/main_function
Fixes https://github.com/libsdl-org/SDL/issues/8738
2023-12-26 10:19:22 -08:00
Sam Lantinga
50e309bb17
Include SDL_events.h in SDL_main.h
...
Applications shouldn't need to include it separately if they want to process events using the main callbacks.
Fixes https://github.com/libsdl-org/SDL/issues/8746
2023-12-26 10:11:48 -08:00
Alynne
cae657140c
Add Access Controller
2023-12-26 09:58:09 -08:00
Sam Lantinga
74418e1aa8
Made the cursor list check a compile time assert instead of a runtime one
...
This will catch this being out of date more quickly in the future
2023-12-26 09:57:11 -08:00
Sam Lantinga
d6fb0d91d8
Added testpen to the Visual Studio solution
2023-12-26 09:55:09 -08:00
Susko3
bbdd41f287
Fix windows touch using wrong axis for normalisation
...
Regressed with 9302d7732d
2023-12-26 09:12:17 -08:00
Susko3
a28ac29aa0
Add missing cursor types
...
The flowing assert would trip:
SDL_assert(SDL_arraysize(cursorNames) == SDL_NUM_SYSTEM_CURSORS)
2023-12-26 09:12:17 -08:00
Tyson Whitehead
6daf2e943f
Try SDL_UDEV_deviceclass to detect joysticks even if in a container
...
The udev container issue is mostly to do with device notifications
and netlink. The device classification stuff just pokes file in /sys
and /run/udev. Doesn't hurt to try it first for classifying joysticks
and then fall to the guess heuristics if it fails.
2023-12-24 22:39:16 -08:00
Sam Lantinga
1bf78ed544
We get a resize event when the view enters fullscreen mode on iOS
...
The call stack is:
We want to use this instead of the desktop mode because the view may be in a different orientation than the device orientation, which the desktop mode is based on.
2023-12-24 17:45:35 -08:00
Sam Lantinga
e3b5999bb4
Use the application requested size to determine automatic orientation on iOS
...
Fixes https://github.com/libsdl-org/SDL/issues/8201
2023-12-24 17:14:16 -08:00
Sam Lantinga
278e3f9184
Whoops, fixed setting fullscreen flag
2023-12-24 17:12:01 -08:00
Sam Lantinga
69e60e0f1b
Fixed setting fullscreen mode on iOS
...
Needed to update the actual window flags based on the requested state (@Kontrabant)
2023-12-24 16:24:22 -08:00
Sam Lantinga
0e5ea3cc4b
Fixed infinite recursion when adding an accelerometer as joystick on iOS
...
Fixes https://github.com/libsdl-org/SDL/issues/8716
2023-12-24 11:19:16 -08:00
Sam Lantinga
c3d84c3342
Record the initial input report mode and only restore simple mode if that's what we started with
...
Fixes https://github.com/libsdl-org/SDL/issues/8108
Closes https://github.com/libsdl-org/SDL/pull/8115
2023-12-24 08:12:14 -08:00
Julian Uy
10a8b750a0
Use common generic syscond for platforms with no cond implementation
2023-12-24 06:52:42 -08:00
Julian Uy
4914e5bb78
PS2 use WaitSemaEx for waiting for semaphore with timeout
2023-12-24 06:52:27 -08:00
Sam Lantinga
bb0e0ae080
Added a runtime check for BLUETOOTH_CONNECT in addition to BLUETOOTH (thanks @perepujal!)
...
Fixes https://github.com/libsdl-org/SDL/issues/8731
2023-12-24 06:50:42 -08:00
Sylvain
312f98c2a1
Make sure the string is terminated, fixed invalid read in SDL_PrivateParseGamepadConfigString()
2023-12-23 12:55:21 -08:00
Frank Praznik
199f7cc3b1
x11: Ignore border extents when the border hint is unset
...
Old extent events can arrive after the border hint has been unset. Ignore the reported values in this case to avoid reporting bogus border sizes.
2023-12-22 12:19:28 -05:00
SDL Wiki Bot
07e9603398
Sync SDL3 wiki -> header
2023-12-22 17:14:22 +00:00
Sylvain
ffd82fb7c4
Add scaleMode to SDL_SoftStretch(), remove SDL_SoftStretchLinear().
2023-12-22 09:13:21 -08:00
Sylvain
5dba04b29b
Remove SDL_{Set,Get}SurfaceScale().
...
Add Scale parameter to SDL_BlitSurfaceScaled() and SDL_BlitSurfaceScaledUnchecked()
(see #8732 )
2023-12-22 02:08:49 -08:00
Frank Praznik
e66896406d
cocoa: Set appropriate flags on fullscreen spaces windows
...
Don't mark fullscreen windows as having a title bar if the window is borderless, or it can end up in a weird, pseudo-decorated state when leaving fullscreen if the borders were toggled back on while the window was fullscreen.
Setting the window styling when about to leave fullscreen caused issues with this as well and is no longer needed, as it is ensured that the window's resizable state won't change while in a fullscreen space, or in a transition period.
2023-12-21 17:44:23 -05:00
Frank Praznik
57fcb9044c
video: Remove more assumptions about window state in the video layer
...
Don't check the fullscreen flag when toggling resizable, bordered, always on top, minimum size and maximum size, as the flag doesn't reflect pending async changes that may be in progress.
These properties can be made to be safely toggled while the window is in fullscreen mode and applied when returning to windowed mode, which ensures that requested window settings aren't lost if calling these functions while async fullscreen changes are in flight.
2023-12-21 17:44:23 -05:00
Dimitriy Ryazantcev
cb90653695
win32: use USER_DEFAULT_SCREEN_DPI instead of explicit 96 value
2023-12-21 08:32:10 -08:00
Lukas Senionis
a2e05480d6
Use crc16 return value when calculating GUID
...
Fixes the regression introduced by 919cd56b20c59249bdde3bb005aeeb8f6550f3e3
2023-12-21 07:00:13 -08:00
Sam Lantinga
2ad50e9675
Make the SDL3 surface ABI compatible with SDL2
...
We'll use properties for new data associated with a surface, which lets us preserve ABI compatibility with SDL2 and any surfaces created by applications and passed in to SDL functions.
2023-12-21 06:58:22 -08:00
Sam Lantinga
f72d6a7fd9
Use more verbose names for properties, to match upcoming public property names
2023-12-21 06:58:22 -08:00
Sam Lantinga
1f1ee6f77c
Use the original manufacturer and product strings for the joystick CRC
...
This allows the most information possible for the CRC string, which is used to differentiate controllers with the same VID/PID.
Fixes https://github.com/libsdl-org/SDL/issues/8724
2023-12-20 19:22:37 -08:00
Sam Lantinga
4bb5e1f0f9
Added migration notes for migrating Steam Input support from SDL2 to SDL3
2023-12-20 14:15:09 -08:00
Sylvain
56f111dffc
Fix compilation / same as sdl2-compat
...
testautomation_platform.c:351:28: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
351 | result = SDL_SetError("%s", testError);
| ^~
/home/slvn/release/Release_SDL/sdl2-compat/test/testautomation_platform.c:364:64: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
364 | "SDL_GetError(): expected message '%s', was message: '%s'",
2023-12-20 22:28:50 +03:00
Sam Lantinga
72c366bf3d
Fixed whitespace
2023-12-20 11:06:34 -08:00
Dimitriy Ryazantcev
3152b98e87
win32: minor fixup in WIN_UpdateKeymap()
...
Remove unused defines in SDL_windowsevents.c
2023-12-20 11:01:45 -08:00
SDL Wiki Bot
2c4360ce8f
Sync SDL3 wiki -> header
2023-12-20 18:41:23 +00:00
Sam Lantinga
c981a597dc
Added Steam Input API support for game controllers
...
Added support for getting the real controller info, as well as the function SDL_GetGamepadSteamHandle() to get the Steam Input API handle, from the virtual gamepads provided by Steam.
Also added an event SDL_EVENT_GAMEPAD_STEAM_HANDLE_UPDATED which is triggered when a controller's API handle changes, e.g. the controllers were reassigned slots in the Steam UI.
2023-12-20 10:40:28 -08:00
Vicki Pfau
a8f4f40d08
Sync more Steam Controller header definitions for the Steam Deck
2023-12-19 20:18:37 -08:00
Sam Lantinga
e6e54b22c8
Ignore all surface comparison output files in the testautomation directory
2023-12-19 08:48:44 -08:00
Sam Lantinga
9d13be743b
Make sure we're rendering whenever the activity might be visible, even if we don't have focus.
...
This fixes rendering when a system dialog is over the application
2023-12-18 19:21:00 -08:00
Frank Praznik
69ec0322d3
win32: Make leaving fullscreen when the window already isn't fullscreen a no-op
...
Otherwise, the styling on external windows may end up being overridden.
2023-12-18 11:47:59 -05:00