Simon McVittie
ef1fdf11bd
tray: Create tray icons for libappindicator securely
...
If we write directly to filenames in /tmp, we're subject to
time-of-check/time-of-use symlink attacks on most systems (although
recent Linux kernels mitigate these by default). We can avoid these
attacks by securely creating a directory owned by our own uid,
and doing all our file I/O in that directory. Other uids cannot create
symbolic links in that directory, so we are protected from symlink
attacks.
This does not protect us from an attacker that is running with the same
uid, but if such an attacker exists, then we have already lost.
Resolves: https://github.com/libsdl-org/SDL/issues/11887
Signed-off-by: Simon McVittie <smcv@collabora.com>
2025-01-08 07:26:02 -08:00
Sam Lantinga
e6bb50a710
Updated to version 3.1.9 for development
2025-01-07 17:51:00 -08:00
SDL Wiki Bot
6b34c9fe7f
Sync SDL3 wiki -> header
...
[ci skip]
2025-01-08 01:50:36 +00:00
Sam Lantinga
22422f7748
Fixed ABI compatibility with 3.1.6
2025-01-07 17:32:59 -08:00
Sam Lantinga
d7b10d05b1
Updated to version 3.1.8 for the preview release
2025-01-07 17:04:05 -08:00
Simon McVittie
4290fc8bda
tray: Load GTK and libappindicator by versioned names, except on OpenBSD
...
We are expecting a specific ABI (we can see that from the declarations
listed in this file) and the whole point of SONAME versioning is to
say that the library conforms to a specific ABI. If the SONAME is not
the one we expect, then calling its functions is likely to crash.
As usual, an exception to this is that OpenBSD does not use SONAME
versioning.
Signed-off-by: Simon McVittie <smcv@collabora.com>
2025-01-07 14:02:01 -08:00
Simon McVittie
6b38d250aa
tray: Don't try to use GTK 2 versions of libappindicator
...
We use GTK 3 functions in this file, so we cannot load a libappindicator
whose SONAME indicates that it is using GTK 2.
Signed-off-by: Simon McVittie <smcv@collabora.com>
2025-01-07 14:02:01 -08:00
Simon McVittie
bba066c44c
tray: Don't call g_object_unref(NULL)
...
g_object_unref() only accepts valid object instances.
Signed-off-by: Simon McVittie <smcv@collabora.com>
2025-01-07 14:01:08 -08:00
ritalat
0bc370dfba
Android doc cleanup
2025-01-07 16:56:29 -05:00
Ryan C. Gordon
6934c910b3
opengl: use GL_UNSIGNED_BYTE instead of GL_UNSIGNED_INT_8_8_8_8_REV.
...
This seems to be significantly more efficient on some modern platforms, but if
this turns out to be a widespread disaster, we can revert it.
2025-01-07 16:08:56 -05:00
Sam Lantinga
0176a19aee
Fixed platform define condition for Windows phone
...
Fixes https://github.com/libsdl-org/SDL/issues/11876
2025-01-07 08:47:54 -08:00
Ryan C. Gordon
0180ca541e
windows: Catch WM_POINTERCAPTURECHANGED events.
...
Fixes #11844 .
2025-01-07 10:22:15 -05:00
Ozkan Sezer
8ec576ddab
tray, windows: fix logic error from commit 1167cf54e1
2025-01-07 10:15:40 +03:00
Sam Lantinga
748f0b3201
Improved Steam Controller detection on iOS
2025-01-06 17:16:23 -08:00
Frank Praznik
ba1a980535
wayland: Only apply the toplevel bounds when initially mapping the window
...
The size shouldn't be clamped to the bounds after the window is mapped, or an explicitly requested user size may be overwritten.
2025-01-06 17:07:16 -05:00
Frank Praznik
28389f1c38
wayland: Apply toplevel bounds to windows
...
Apply the supplied xdg-toplevel bounds to resizable windows during initial mapping. Libdecor functionality will have to be added separately, as the functionality needs to be added to the library first.
2025-01-06 16:06:03 -05:00
Sam Lantinga
ef52a4d4df
Fixed warning C4389: '==': signed/unsigned mismatch
2025-01-06 12:03:45 -08:00
Sam Lantinga
8d8649b33f
Fixed error: returning 'SDL_TrayEntry **' from a function with incompatible return type 'const SDL_TrayEntry **'
2025-01-06 11:35:54 -08:00
Sam Lantinga
f8b13dadd7
Enabled warning level 4 on Visual Studio
...
This catches uninitialized variables, etc. and matches Steam's warning level
2025-01-06 11:30:36 -08:00
Sam Lantinga
1167cf54e1
Fixed warning C4706: assignment within conditional expression
2025-01-06 11:30:28 -08:00
Sam Lantinga
8a9b7ae8d1
Switched nEntries to int, to avoid signed/unsigned comparison warnings
...
Also standardized memory allocation calls to match SDL style
2025-01-06 11:29:28 -08:00
Sam Lantinga
fb4ec07119
Fixed warning C4701: potentially uninitialized local variable 'previous_context' used
2025-01-06 11:18:45 -08:00
Ryan C. Gordon
b674b715f5
fix integer overflow ub in testautomation_sdltest
...
(cherry-picked from commit f804293a27
)
2025-01-06 13:18:03 -05:00
Ryan C. Gordon
1e1442ed4a
README-migration.md: Note the GL/EGL library environment variable removals.
2025-01-06 13:12:31 -05:00
Ryan C. Gordon
d8c7006a42
README-migration.md: Removed obsolete documentation.
...
Fixes #11434 .
2025-01-06 13:07:21 -05:00
Ryan C. Gordon
6473de59b7
SDL_keyboard.h: Note that SDL_GetKeyName() returns uppercase letters.
...
Reference Issue #11434 .
2025-01-06 12:47:44 -05:00
SDL Wiki Bot
c7584df999
Sync SDL3 wiki -> header
...
[ci skip]
2025-01-06 16:17:26 +00:00
Ryan C. Gordon
1f54b228ff
video: Convert some EGL environment variables to SDL hints.
...
Fixes #10479 .
2025-01-06 11:15:26 -05:00
Sam Lantinga
7c9f6c6313
Remove debug logging
2025-01-05 20:06:50 -08:00
SDL Wiki Bot
19ddb29d2d
Sync SDL3 wiki -> header
...
[ci skip]
2025-01-06 02:54:14 +00:00
Ryan C. Gordon
d16f76e3d4
wasapi: Don't crash/hang if transitioning to/from a Remote Desktop Connection.
...
Fixes #9673 .
2025-01-05 21:53:35 -05:00
Ryan C. Gordon
742f2a2fad
SDL_render.h: Improve SDL_ConvertEventToRenderCoordinates documentation.
...
Fixes #9424 .
2025-01-05 20:55:42 -05:00
Frank Praznik
2b375d9704
wayland: Don't enable the text-input protocol when using Fcitx
...
Otherwise, key repeat will be broken. Enabling it under Wayland isn't recommended anyway.
2025-01-05 17:53:58 -05:00
Semphris
dcc645e413
Fix HTML examples template tabs
...
Tab labels now follow their drawer again. Also, to avoid tabs covering
up code or debugging logs, the tab label that's on top (and therefore
not automatically hidden behind the other drawer when that drawer
opens) will now automatically hide itself when the other drawer is
opened.
2025-01-05 11:39:20 -08:00
SDL Wiki Bot
ece6a6ed8f
Sync SDL3 wiki -> header
...
[ci skip]
2025-01-05 19:12:20 +00:00
Ryan C. Gordon
7f9ee31024
include: Fill in more category documentation.
...
Reference Issue #11874 .
2025-01-05 14:11:11 -05:00
Anonymous Maarten
16ad3e5af6
cmake: consider X11 as not available when xext.h is not found
...
This is user friendlier than straight up erroring
2025-01-05 16:05:25 +01:00
David Gow
0ae57f1d90
tray: unix: Shutdown the GTK thread when not in use
...
When using the libappindicator/gtk/unix Tray backend, the background
thread which calls gtk_main() is never destroyed. This means that we
detect a leaked thread as SDL_Quit().
Instead, tell gtk to shut down its main loop when no tray icons are
active. This fixes the issue here: SDL notices no leak, and repeatedly
creating / destroying tray icons seems to work fine.
Signed-off-by: David Gow <david@ingeniumdigital.com>
2025-01-05 02:51:12 -08:00
Ryan C. Gordon
6a0405b933
testautomation: Added a test to stdlib_swprintf that previously would fail.
2025-01-05 02:45:15 -05:00
Kim Giseo
9f2186ad52
Removed outdated comment in AndroidManifest.xml
2025-01-04 19:25:00 -08:00
Ryan C. Gordon
181995b44f
stdlib: Reworked SDL_vswprintf to be more efficient and return correct values.
...
Fixes #11729 .
2025-01-04 21:55:07 -05:00
Erik Soma
8509041a09
video: Fix SDL_GL_GetAttribute depth/stencil size when 0
2025-01-04 18:57:48 -05:00
Ryan C. Gordon
344e394bf4
camera: Favor v4l2 over pipewire, for now.
...
Reference Issue #11473 .
Reference Issue #9776 .
Reference Issue #11819 .
Reference Issue #9989 .
Reference Issue #10842 .
2025-01-04 16:11:57 -05:00
SDL Wiki Bot
d8c679416b
Sync SDL3 wiki -> header
...
[ci skip]
2025-01-04 19:04:41 +00:00
Semphris
b6dc44b133
Support dark theme for tray menus on Windows
2025-01-04 11:04:21 -08:00
Semphris
7673b84f52
Make SDL_GetTrayEntires() NULL-terminated
2025-01-04 10:56:19 -08:00
Katelyn Gadd
a58bc3eaf4
[GPU] Fix crash in nvidia user-mode win32 driver when game window is minimized during swapchain resize ( #11848 )
2025-01-04 10:25:08 -08:00
Susko3
0a5d2f3da2
Handle pen eraser button as a second button
2025-01-04 05:27:06 -05:00
Ryan C. Gordon
3519ef3b3b
SDL_asyncio.h: Fixed various datatype's \since
documentation.
2025-01-04 04:10:15 -05:00
Ryan C. Gordon
56d7cc7a02
SDL_video.h: Added a note about platform quirks to SDL_DestroyWindow docs.
...
Fixes #10081 .
2025-01-04 03:48:10 -05:00