Sam Lantinga
93c289b475
Increased precision for PS4 sensor data conversion
...
(cherry picked from commit 3340864786
)
2023-03-27 14:33:56 -07:00
Pierre Wendling
ed5a343d25
SDL_hidapi_steam.c: Fix compilation under c2x.
...
When N2935 is implemented, the enum breaks compilation. Use a #define of
the SDL booleans instead.
(cherry picked from commit 975039ce0d
)
2023-03-27 09:02:46 -07:00
Anonymous Maarten
cd64e0b6e3
SDL_blit_copy: Don't call potentially FPU using SDL_memcpy in SDL_memcpyMMX
2023-03-27 06:13:28 +00:00
Anonymous Maarten
d1dc195208
Implement _intel_fast_(memcpy|memset)
...
The classic Intel compiler generates calls to these functions when
building the SDL library with SDL_LIBC=OFF.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
5aa76de35f
cpuinfo: use __cpuidex instead of __cpuid
...
The classic Intel Compiler does not clear the ecx register prior
to executing the cpuid opcode.
2023-03-27 06:13:28 +00:00
Frank Praznik
c0824cd49a
events: Increase the size of the name buffer when logging events
...
Event names have grown in length and are occasionally truncated when being logged (e.g. SDL_EVENT_WINDOW_PIXEL_SIZE_CHA). Increase the event name buffer size to handle the longer names.
(cherry picked from commit 203a2a76fc
)
2023-03-26 22:01:17 -07:00
Bartłomiej Dach
b970dd1beb
Android: Fix mismatching JNI method signature
...
Another regression from commit dca3fd8307
,
which was a backport of commit de3909a190
from SDL3 to SDL2. This time the regression is much less apparent,
however, due to two reasons:
- It only appears when the SDL project is ran on an actual device
due to magic stringage.
- More importantly, the regression was partially hidden due to
the nature of de3909a190
.
The commit which was backported added a single `I` to the JNI method
signature in `SDL_android.c`, representing the added `int axis_mask`
parameter. The parameter was added to both SDL2 and SDL3.
However, notably, that `I` was added *after* commit
fcafe40948
, which removed the
`int nballs` parameter from the joystick API, but only from the SDL3
branch.
Therefore, in totality, what should really have been a merge conflict,
was obscured by the fact that the SDL3 branch ended up having
a net-identical JNI signature to the SDL2 branch, due to having
one bool param removed and one added - while, in fact, the SDL2 branch
needed one bool param added and none removed.
2023-03-25 15:08:33 -07:00
Sylvain
2dddaa7dc9
backport x11/sdl2 fixes
...
4b1378f
X11: fix size/position (test video_setWindowCenteredOnDisplay)
this fix x11 backend to correctly pass video_setWindowCenteredOnDisplay()
get border values early (eg status bar)
wait for size/position change to get valid values
d4d26e0
testautomation_video: if SDL_SetWindowSize/Position isn't honored, we should check there is an event
x11: send the events if various occasions
2023-03-25 10:27:17 +01:00
Sam Lantinga
b57a6a1adf
Added gamepad mapping for Flydigi Vader 2 with the latest firmware (6.0.4.9)
...
(cherry picked from commit ed0937598e
)
2023-03-18 11:36:50 -07:00
Ivan Mogilko
d78072fcd4
Fixed SDL_RenderSetVSync does not update flags if simulated vsync is on
...
This lets the user to correctly detect current vsync state by reading SDL_RendererInfo.
Also fixes SetVSync's return value check (it may be positive for error too).
2023-03-17 14:55:04 -07:00
Ryan C. Gordon
446e0943da
wasapi: Force WIN_CoInitialize duing device open.
...
Otherwise this won't work if you open a device on a background thread.
Fixes #7478 .
2023-03-17 08:44:19 -07:00
Sylvain
23bce27b26
Change SDL_BLENDMODE_MUL for gl renderers
...
Add FIXME for PSP and DirectFB
2023-03-16 20:27:09 +01:00
Sylvain
c078dfcf6b
Refresh generation of SDL_blit_auto.c after simplifying sdlgenblit.pl
2023-03-16 20:27:09 +01:00
Sylvain
18c4db678b
Simplify SDL_BLENDMODE_MUL in sdlgenblit.pl
2023-03-16 20:27:09 +01:00
Sylvain
7d26ba754a
Simplify SDL_BLENDMODE_MUL
2023-03-16 20:27:09 +01:00
Sylvain
bd70ce7f94
Refresh generation of SDL_blit_auto.c
2023-03-16 20:27:09 +01:00
Sam Lantinga
57ae9f466d
Ignore the PS4 packet CRC if it's not being set correctly
...
This fixes handling the 8BitDo SN30 Pro with the 2.00 firmware in PS4 mode
Fixes https://github.com/libsdl-org/SDL/issues/7270
(cherry picked from commit 3951cae4a5
)
2023-03-13 20:00:19 -07:00
Rudolf Polzer
dca3fd8307
Android: indicate gamepaddb entries where axis order changed.
...
Axis order was changed in 6f1f586086
to improve
default mappings.
(cherry picked from commit de3909a190
)
2023-03-11 13:01:50 -08:00
Sam Lantinga
ab1670386f
Added support for the trigger buttons on the Victrix Pro FS for PS5
...
(cherry picked from commit 8d7e61ea42364c256b76e7f6f2b6d6f90742bcb7)
2023-03-10 15:46:22 -08:00
Sam Lantinga
76e9d64b36
Removed space between sizeof and parentheses
2023-03-10 08:13:51 -08:00
Sam Lantinga
e9f9cb29fc
Fixed build warning on Android
...
(cherry picked from commit 2af6f4a3e4
)
2023-03-10 08:12:28 -08:00
Qrox
ef347776c2
Uses integer arithmetics in SDL_ResampleAudio
...
- Avoids precision loss caused by large floating point numbers.
- Adds unit test to test the signal-to-noise ratio and maximum error of resampler.
- Code cleanup
(cherry-picked from commit 20e17559e5
)
2023-03-10 18:37:00 +03:00
Sam Lantinga
71dc7169d9
Added header for SDL_Delay()
2023-03-09 17:18:40 -08:00
Sam Lantinga
1e6ffc6294
Removed a duplicate delay accidentally added during code refactor
...
(cherry picked from commit 926db1bd54
)
2023-03-09 16:13:19 -08:00
Sam Lantinga
3f00fa16c6
Wait for the GCController framework to see IOKit devices
...
It occasionally takes a few millseconds for the GCController framework to handle the device notification and set up the device
Fixes the duplicate controller issue in https://github.com/libsdl-org/SDL/issues/6686
(cherry picked from commit 645823fc90
)
2023-03-09 16:13:19 -08:00
Sam Lantinga
0d76380042
Code style: changed "sizeof foo" to "sizeof(foo)" (thanks @sezero!)
...
(cherry picked from commit c6443d86c9
)
2023-03-09 15:23:59 -08:00
Sam Lantinga
46d143376a
If the client rect is empty, use the last known window size
...
This happens on Windows 11 with fullscreen desktop windows when the desktop is brought up with the Windows+D shortcut.
Fixes https://github.com/libsdl-org/SDL/issues/7419
(cherry picked from commit 2ca727aec6
)
2023-03-09 10:39:43 -08:00
Deve
1c2f825230
Fixed incorrect modifier keys handling on macOS
...
(cherry-picked from commit 45a58b7882
)
2023-03-09 20:28:51 +03:00
Frank Praznik
8f7427c158
tests: Always set valid dimensions for the fullscreen mode
2023-03-08 19:46:37 -05:00
Frank Praznik
6a999d16fa
wayland: Always use a scale factor of 1 for exclusive fullscreen emulation
2023-03-08 19:46:37 -05:00
Lokathor
cfd6b34b8f
Make mappings for "Retrolink SNES Controller" with SDL_GAMECONTROLLER_USE_BUTTON_LABELS
both on and off
...
I've only tested this on windows, but I went ahead and made the same changes for linux and mac because I assumed it's the same there and that we'd want to keep the three platforms in sync.
(cherry picked from commit b8bc4a234b
)
2023-03-08 16:44:30 -08:00
Ozkan Sezer
a70964aaf4
fix SDL_FindFreePlayerIndex so it can really return -1.
2023-03-08 20:00:50 +03:00
Sam Lantinga
35c13196f0
Fixed uninitialized variable
2023-03-08 08:40:38 -08:00
Sam Lantinga
f5c0760c6b
Disassociate the SDLOpenGLContext from the view before deleting it
...
If we don't do this, the view will be blanked even if another context is current and rendering from that context won't be visible.
Fixes https://github.com/libsdl-org/SDL/issues/4986
2023-03-08 01:15:21 -08:00
Sam Lantinga
63e6c19b7d
Use SDL_GL_DeleteContext instead of Cocoa_GL_DeleteContext for context cleanup
...
That will make the current context NULL before deleting the context.
2023-03-08 01:13:00 -08:00
Sam Lantinga
1bd9ebf533
If we're not the current fullscreen window and we don't want to be fullscreen, don't touch the current video mode
...
Fixes an assertion in qemu on macOS, which creates multiple hidden windows:
2023-03-07 09:56:55.304 qemu-system-i386[9931:2984587] *** Terminating app due to uncaught exception 'NSGenericException', reason: 'NSWindowStyleMaskFullScreen cleared on a window outside of a full screen transition. Called from (
0 AppKit 0x00000001968f77ac __25-[NSWindow setStyleMask:]_block_invoke + 140
1 AppKit 0x00000001968f76cc NSPerformVisuallyAtomicChange + 108
2 AppKit 0x00000001968f7580 -[NSWindow setStyleMask:] + 188
3 libSDL2-2.0.0.dylib 0x0000000106531328 Cocoa_SetWindowFullscreen + 568
4 libSDL2-2.0.0.dylib 0x0000000106501700 SDL_UpdateFullscreenMode + 1316
5 libSDL2-2.0.0.dylib 0x0000000106504270 SDL_SetWindowFullscreen_REAL + 328
6 libSDL2-2.0.0.dylib 0x000000010650117c SDL_FinishWindowCreation + 100
7 libSDL2-2.0.0.dylib 0x0000000106500998 SDL_CreateWindow_REAL + 1812
8 libSDL2-2.0.0.dylib 0x00000001063efd54 SDL_CreateWindow + 76
9 qemu-system-i386 0x00000001050aa600 sdl2_window_create + 192
10 qemu-system-i386 0x00000001050a9fa0 sdl2_2d_switch + 196
11 qemu-system-i386 0x0000000104e9c784 displaychangelistener_display_console + 524
12 qemu-system-i386 0x0000000104e9e36c register_displaychangelistener + 264
13 qemu-system-i386 0x00000001050ab6d0 sdl2_display_init + 304
14 qemu-system-i386 0x000000010505c870 qemu_init + 13380
2023-03-07 10:10:43 -08:00
Sam Lantinga
e0e79419b6
Fixed which window we check flags for when updating fullscreen mode
2023-03-07 10:08:55 -08:00
Sam Lantinga
8fc10ac95c
Added mapping for the Xbox Elite Core controller connected via Bluetooth on Android
...
(cherry picked from commit d08338ddc5
)
2023-03-06 15:37:52 -08:00
divVerent
91ad208d18
Fix Xbox One gamepad axis assignment on SDL_JOYSTICK_ANDROID API ( #7405 )
...
(cherry picked from commit 6f1f586086
)
2023-03-06 15:37:41 -08:00
Michal Suchanek
96a2a6b945
evdev_kbd: Use current keymap
...
keymap can change over time, caching the keymap causes wrong keys
returned when user changes keymap during runtime
Signed-off-by: Michal Suchanek <msuchanek@suse.de >
2023-03-03 14:30:02 -08:00
Ozkan Sezer
fd4bb4154b
dynapi: replace uses of deprecated SDL_assert_state and SDL_assert_data
2023-03-03 03:01:02 +03:00
Ryan C. Gordon
46945354cc
dataqueue: Make thread safe.
...
Each data queue gets its own mutex and each function obtains it.
Fixes #7390 .
(cherry picked from commit 8b9a938413
)
2023-03-02 16:43:44 -05:00
Ryan C. Gordon
f5bb286b76
dataqueue: Removed non-public SDL_ReserveSpaceInDataQueue function
...
This wasn't used, and it was just asking for trouble.
(cherry picked from commit f833e005e1
)
2023-03-02 16:41:58 -05:00
Sam Lantinga
f47a08ab84
Fixed typo in previous cherry-pick
2023-03-01 16:47:48 -08:00
Sam Lantinga
660fc89967
Don't clobber an existing entry with a different version when adding a gamepad mapping
...
(cherry picked from commit 727c7d4e2f
)
2023-03-01 16:41:44 -08:00
Sam Lantinga
6ff3e49b6f
Follow the same pattern for releasing the window data in the UIKit driver
...
Possible fix for https://github.com/libsdl-org/SDL/issues/7361
(cherry picked from commit ebdb320651
)
2023-02-28 16:15:01 -08:00
Sam Lantinga
031348d377
Fixed SDL windows getting the maximized state after leaving fullscreen on macOS
...
(cherry picked from commit 2df08fb1b27b721998a1380a2acdbe1494b5591e)
2023-02-28 09:03:10 -08:00
Sam Lantinga
c0fb092425
Fixed locking up the Logitech F310 with the PlayStation controller detection
...
(cherry picked from commit da134a3039
)
2023-02-28 08:37:18 -08:00
Sam Lantinga
715749f578
Added mapping for DualSense Edge Wireless Controller on Linux
...
This is a mapping when using evdev, not the more advanced HIDAPI support.
(cherry picked from commit 206fa4dafb
)
2023-02-27 15:21:04 -08:00
David Carlier
0c7346ec3e
USE_DEV_RANDOM close the file descriptor even in the rare case it can't read it
2023-02-26 14:00:32 +03:00