This reverts commit a326ebce61.
It turns out that 0 is an invalid touch ID for SDL2, per the documentation for SDL_GetTouchDevice()
(cherry picked from commit 5a25183b39)
Set thread name on Android the same way as we do on Linux.
Acording to Bionic source code this function is available since 2013 [1] and
hase the same signature.
[1] 2a1bb4e646
(cherry picked from commit e79b0ce2e4)
Apparently as of iOS 18.2, the deprecated API we were using just refuses to
work at all.
Fixes#11728.
(cherry picked from commit ffed1c50c0)
(cherry picked from commit c6e1806ba9)
This happens when the Razer Synapse software emulates a controller with a keyboard
(cherry picked from commit 7117d545a3)
(cherry picked from commit 7f880c9121)
In reality, this condition will never occur, since the index is checked before calling the display retrieval function, but aggressive LTO with jump threading can generate a warning if this isn't explicitly checked.
(cherry picked from commit 91bb1bb6fd)
The objfiles of different builds show various differences in
the calls to SDL_DYNAPI_entry elements. This is generated
dynamically by gendynapi.pl which uses an unordered opendir/readdir
pair. To make the build reproducible and thereby e.g. debugging
easier change this to be used in an ordered fashion.
Fixes#11565.
Fixes:
src/video/directfb/SDL_DirectFB_render.c: In function ‘DirectFB_CreateRenderer’:
src/video/directfb/SDL_DirectFB_render.c:1153:35: error: assignment to ‘void (*)(SDL_Renderer *, SDL_Texture *, SDL_ScaleMode)’ from incompatible pointer type ‘void (*)(void)’ [-Wincompatible-pointer-types]
1153 | renderer->SetTextureScaleMode = DirectFB_SetTextureScaleMode;
| ^
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
Notes:
- declaration was just recently changed by commit 'Fix warning for Android
NDK compiler: "function declaration without a prototype is deprecated in
all versions of C [-Wstrict-prototypes]"', see
ccade50587
(cherry picked from commit b64540dd66)
WIN_AddDisplay asserted that the returned index is the expected next
one in the list. This can be an unexpected number when displays are
add and removed in a batch (eg, Remote Desktop disconnect and reconnect).
Instead always just make use of the next index, even if it is not the
expected next index value. This fixes issue #9105
There are low-latency fixes in SDL3 that really need to be backported to SDL2
before AAudio will be nicer across a range of devices, so OpenSL ES is safer
in SDL2 at the moment. At least, we suspect as such.
Fixes#11457.
(cherry picked from commit 17b9ed7d82)
This reverts commit 1e016fd5ea.
In order to use low latency mode, you need to set low latency callbacks. This has always been recommended and is apparently required on Android 15. SDL3 has these implemented correctly but SDL2 does not, so we should revert this for now.
Fixes https://github.com/libsdl-org/SDL/issues/11376
(cherry picked from commit d2b9ecd281)
Viewports decouple the buffer from the window size and avoids the window geometry hacks used to prevent problems if a buffer with an old size in the pipeline ends up being committed.
Fixes an invalid geometry warning and incorrect overview size for fullscreen windows on GNOME, and avoids flicker when entering/exiting fullscreen or moving the window between scaled and non-scaled displays.
(cherry picked from commit 849c905d8c)
This reverts commit 120b8d4189.
The issue this was patching over in Vanilla-Conquer was the lack of an exposure event when showing a window, which has since been remedied.
Attaching EGL window objects can also cause protocol violations now that the explicit sync protocol is in use, if SDL creates one and then the client tries to attach one itself, so they really shouldn't be created unless the client specifically requested it.
(cherry picked from commit 643437f5b0)