Anonymous Maarten
5cbdeab799
Rename SDL_mslibc_x64.asm -> SDL_mslibc_x64.masm
...
The .masm suffix should give meson sufficient info about the file
being MASM instead of NASM/YASM.
2024-01-04 17:46:07 +01:00
Frank Praznik
ed62d6e7de
cocoa: Set the titled flag on fullscreen space windows
...
For some reason, fullscreen space windows won't get any mouse button events unless the NSWindowStyleMaskTitled flag is set when entering fullscreen, even though they successfully become key and receive mouse motion events. Make sure the flag is always set when entering fullscreen space state.
2024-01-03 21:12:34 -05:00
Sam Lantinga
31851a50d2
Fixed dropping raw input because of mixing GetRawInputBuffer() and WM_INPUT handling
...
It turns out that when you enable raw input and then process Windows messages, you'll get the currently pending input in GetRawInputBuffer(), and you'll get any new input that occurs while processing messages as WM_INPUT.
The fix for this is to create a dedicated thread to handle raw input and only use GetRawInputBuffer() in that thread. A nice side effect of this is that we'll get mouse input at the lowest latency possible, but raw mouse events will now occur on a separate thread, outside of the normal event loop processing.
Improved fix for https://github.com/libsdl-org/SDL/issues/8756
2024-01-03 02:20:23 -08:00
Nour Fouad
987744aae8
Fix Duplicated includes
2024-01-02 16:34:11 -08:00
Sam Lantinga
2b369a14ab
Fixed allocation and alignment of raw input buffers
2024-01-02 09:25:28 -08:00
Vicki Pfau
bec1b8f849
Add basic rumble support to Steam Deck
2024-01-01 21:46:38 -08:00
Sam Lantinga
8fe4a45edf
Use GetRawInputBuffer() instead processing raw input one at a time
...
This is a huge performance improvement for high polling rate mice, like the Razer Viper 8K mouse.
Fixes https://github.com/libsdl-org/SDL/issues/8756
2024-01-01 20:41:15 -08:00
Sam Lantinga
87b8f09657
Fixed warning: no previous prototype for function 'SDL_PrivateGetGamepadButtonFromString' [-Wmissing-prototypes]
2024-01-01 14:56:55 -08:00
Sam Lantinga
c2951655ff
Fixed warning: missing field 'window' initializer [-Wmissing-field-initializers]
2024-01-01 14:55:42 -08:00
Sam Lantinga
5b3ee51c6c
Updated copyright for 2024
2024-01-01 13:15:26 -08:00
Sam Lantinga
a7b79c483c
Remove unused 'window' variable from -[Cocoa_WindowListener windowWillExitFullScreen]
2024-01-01 13:15:39 -08:00
Sam Lantinga
44c2f344d6
Fixed build
2023-12-30 11:47:56 -08:00
Sam Lantinga
e3d50619f8
Fixed fatal error: SDL_pen.h: No such file or directory
2023-12-29 20:04:40 -08:00
Sam Lantinga
dfe1a37bab
Fixed error: 'static' is not at beginning of declaration [-Werror=old-style-declaration]
2023-12-29 19:40:45 -08:00
Sam Lantinga
423b1fafcd
Fixed warning C4047: 'function': '__x_ABI_CWindows_CGaming_CInput_CIRawGameController **' differs in levels of indirection from '__x_ABI_CWindows_CGaming_CInput_CIRawGameController *'
...
This warning happens with old and buggy versions of the Windows SDK
2023-12-29 18:07:30 -08:00
Frank Praznik
5d0c893723
wayland: Remove bitfield specifiers from boolean values
...
If SDL_bool is no longer unsigned, this won't work as the valid values are only 1 and -1.
2023-12-29 14:18:55 -05:00
Sam Lantinga
530b41d531
Fixed warnings in SDL_pen.c
2023-12-29 10:37:28 -08:00
Sam Lantinga
9906d6d3bc
Fixed warning C4244: '=': conversion from 'SDL_bool' to 'Uint8', possible loss of data
2023-12-29 10:37:28 -08:00
Sam Lantinga
dc1c27885e
Fixed warning C4389: '!=': signed/unsigned mismatch in SDL_blit.c
2023-12-29 09:26:36 -08:00
Sam Lantinga
e813c72b3c
Fixed warning C4245: 'return': conversion from 'int' to 'SDL_JoystickID', signed/unsigned mismatch
2023-12-29 09:25:57 -08:00
Sam Lantinga
dce626f469
Fixed warning C4244: 'function': conversion from 'int' to 'Uint16', possible loss of data
2023-12-29 09:24:52 -08:00
Sam Lantinga
7f376277e5
Fixed warning C4244: 'initializing': conversion from 'SDL_bool' to 'Uint8', possible loss of data
2023-12-29 09:24:22 -08:00
Sam Lantinga
d71454da17
Store the surface properties in the reserved pointer of a surface
...
This prevents us from exposing the properties publicly and allows us to repurpose the pointer later if necessary.
Fixes https://github.com/libsdl-org/SDL/issues/8758
2023-12-29 08:17:06 -08:00
Frank Praznik
b6a92c113f
wayland: Don't apply old libdecor window dimensions
...
Don't overwrite the current dimensions unless they've actually changed, or programmatically set dimensions can be overwritten.
2023-12-29 08:59:45 -05:00
Sam Lantinga
ffb8515c21
Use the Valve code name for the Steam Deck controller
2023-12-28 15:41:02 -08:00
Sam Lantinga
43c40d30a2
Added comment for the BDA Pro Ex controller
2023-12-28 15:22:28 -08:00
Sam Lantinga
c24b33d8d9
Fixed building with older Windows SDK
2023-12-28 15:14:34 -08:00
Sam Lantinga
70ba3f2830
Report the D-Pad for HIDAPI gamepads as a hat
...
This makes it easier for games that don't use the gamepad API to handle D-Pad navigation, and is consistent with many other non-HIDAPI mappings.
Fixes https://github.com/libsdl-org/SDL/issues/8754
2023-12-28 14:14:51 -08:00
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
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
Alynne
cae657140c
Add Access Controller
2023-12-26 09:58:09 -08:00
Susko3
bbdd41f287
Fix windows touch using wrong axis for normalisation
...
Regressed with 9302d7732d
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
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