|
be5356af
|
2021-05-14T14:44:13
|
|
winrt: Fix support for multiple simultaneous mouse button presses
|
|
62a562de
|
2021-05-12T23:37:18
|
|
X11: use x11sym loaded functions (see bug #3978)
|
|
531d83bf
|
2021-05-12T23:13:48
|
|
X11: allow using touchscreen, while pointer is grabbed (see bug #3978)
|
|
ddc6be35
|
2021-05-12T20:43:10
|
|
KMSDRM on Dragonfly BSD doesn't work without being root
|
|
9e1d7bae
|
2021-05-12T17:43:39
|
|
Added T300RS to known wheel list
|
|
e1db4b82
|
2021-05-11T14:08:17
|
|
egl: Don't crash if we failed halfway through SDL_CreateWindow.
|
|
f2f451a5
|
2021-05-10T13:29:54
|
|
wayland: Call SetWindowBordered at the end of ShowWindow
|
|
c5dd9964
|
2021-04-07T12:14:16
|
|
Copied X11 error handler code from SDL_x11opengl.c
Avoids needing to malloc to hold the error string.
|
|
b3b4677e
|
2021-04-07T11:17:52
|
|
(X11) Set _NET_WM_NAME properly, fixes Unicode window titles
Removes deprecated code meant to support extremely ancient, pre-UTF-8
versions of Xorg. Uses new xlib API's for doing this same thing.
Closes #4288.
|
|
f4ab1c94
|
2021-05-10T13:08:34
|
|
gamecontrollerdb: Add entry for the 8BitDo Receiver for Linux.
Fixes #3048.
|
|
bedc509a
|
2021-05-10T13:04:59
|
|
gamecontrollerdb: added entry for PowerA XBox One Controller for Linux.
Fixes #3910.
|
|
efbb6ff9
|
2021-05-10T12:42:28
|
|
wayland: Create the server decorations after the toplevel has been configured
|
|
9dc97afa
|
2021-05-08T12:39:50
|
|
cocoa: Report an error if SDL_SetClipboardText() isn't using UTF-8 encoding.
Fixes #4110.
|
|
107db2d8
|
2021-05-07T12:43:35
|
|
Enable TV game mode by default on Android
|
|
9231f1f1
|
2021-05-07T12:29:03
|
|
Added support for the PS5 controller on iOS and tvOS
|
|
2ad73db6
|
2021-05-07T12:28:57
|
|
Merge commit '889cebb7c20d4195e5d4ac344a2175f2490354cc' into main
|
|
e589810c
|
2021-05-07T12:28:55
|
|
Merge commit '31637ddeea1e302c77193341b2006d45dc54de98' into main
|
|
6d4991b8
|
2021-05-07T12:28:53
|
|
Merge commit 'f309d0649d37022ad49bc468c77dd87bf82f261b' into main
|
|
e8eb0b15
|
2021-05-07T12:28:51
|
|
Merge commit '58884e4c1bb455db90a35df3f7480cfd355eb8c6' into main
|
|
19a9e81c
|
2021-05-07T12:28:50
|
|
Merge commit 'c69fde348fafcb90200a148b711137c464ffa7de' into main
|
|
71e45a0b
|
2021-05-07T12:28:48
|
|
Merge commit '006378b9213e3e04ea2b9c591afe2a44e75e6867' into main
|
|
981532fb
|
2021-05-07T12:28:47
|
|
Merge commit '424bbaec069f0d94857095dcdfacba6246282936' into main
|
|
95b7b879
|
2021-05-07T12:28:45
|
|
Merge commit '20928550350d4d4c5d78f98b61e7e08d219a5475' into main
|
|
8b8956da
|
2021-05-07T12:28:43
|
|
Merge commit '3d47ddc422de1a4209525a759b3bc46a4ac69116' into main
|
|
069a68a5
|
2021-05-07T12:28:42
|
|
Merge commit '7b284dbb34a8c34f5d6f79c58c860c9f7894fd56' into main
|
|
12b7b821
|
2021-05-07T12:28:40
|
|
Merge commit '9161f95166f3d8e42248c1156e35255d4ebdc6a0' into main
|
|
2b203add
|
2021-05-07T12:28:38
|
|
Merge commit 'c54c16d353f206162cdbb125c0847b4645e096a3' into main
|
|
1e208c64
|
2021-05-07T12:28:37
|
|
Merge commit '227021b6470d07f86e209d89f176ec8e6d952a17' into main
|
|
f1fa836b
|
2021-05-07T12:28:35
|
|
Merge commit '13472cec6764aec2e06a3c66ec1b139baa680aa3' into main
|
|
cf1e8503
|
2021-05-07T12:28:33
|
|
Merge commit 'a74f888ff9ed1254e9b9965a27d68e0526e2c0f8' into main
|
|
63015e44
|
2021-05-07T12:28:32
|
|
Merge commit '8ac0fb52cb13e5856aa7f4a3fd0598d3ec58283f' into main
|
|
0ebf56b5
|
2021-05-07T12:28:30
|
|
Merge commit '1f3df900f919e7177e480e63c07447db232564a1' into main
|
|
5a95ff80
|
2021-05-07T12:28:28
|
|
Merge commit 'fcbf19b764a9f6fed1db6a1d79a2f2f3fa1338d6' into main
|
|
572dfb4f
|
2021-05-07T12:28:27
|
|
Merge commit 'c93e3b36074ddb2ed986cbacc5e9d4f3a60db343' into main
|
|
a734ccec
|
2021-05-07T12:28:25
|
|
Merge commit 'b62642974595976a0c47c5b854eea51b2703fbeb' into main
|
|
4c7f8a74
|
2021-05-07T12:28:23
|
|
Merge commit 'f8695185331460106f34286ebe466cb605f85bb6' into main
|
|
9cf1b391
|
2021-05-07T12:28:22
|
|
Merge commit '21349901ea250483600cbe4771d865cc06f6b538' into main
|
|
889cebb7
|
2021-05-05T14:08:30
|
|
Wayland touch inputs send normalized coords
Resolves #4361
|
|
31637dde
|
2021-05-04T14:59:29
|
|
Generic check for desktop GL and EGL on Linux systems
|
|
f309d064
|
2021-05-04T11:23:54
|
|
include: Document timing issue with SDL_GetWindowBordersSize
|
|
58884e4c
|
2021-05-04T00:23:40
|
|
SDL_audiocvt.c: fixed MSVC double->float conversion warnings.
|
|
c69fde34
|
2021-05-02T16:43:01
|
|
wayland: Maximize/Restore should set the relevant window flags.
Also, Maximize should be ignored for fixed-size windows.
|
|
006378b9
|
2021-05-02T18:30:32
|
|
fix NULL frame_callback access
|
|
424bbaec
|
2021-05-01T18:53:12
|
|
wayland: destroy frame callback when window is destroyed
|
|
20928550
|
2021-05-01T09:00:24
|
|
wayland: Guard surface_frame_listener for OpenGL, document why it exists
|
|
3d47ddc4
|
2021-05-01T08:57:37
|
|
wayland: Use refresh_rate to calculate max_wait in SwapWindow
|
|
7b284dbb
|
2021-04-30T22:01:48
|
|
EglChooseConfig: choose an accelerated configuration
- especially because we can be promoted to true color 888
make sure we don't select a potentially software implementation
- hopefully fix bug #1482 (EGL ChooseConfig selects software renderer on Android)
|
|
9161f951
|
2021-04-27T02:25:57
|
|
egl: Reject attempts to set negative swap intervals
|
|
c54c16d3
|
2021-04-30T13:19:36
|
|
wayland: don't hang in SDL_GL_SwapBuffers if the compositor is ghosting us.
If you hide a window on Mutter, for example, the compositor never requests
new frames, which will cause Mesa to block forever in eglSwapBuffers to
satisfy the swap interval.
We now always set the swap interval to 0 and manage this ourselves, handing
the frame to Wayland when it requests a new one, and timing out at 10fps just
to keep apps moving if the compositor wants no frames at all.
My understanding is that other protocols are coming that might improve upon
this solution, but for now it solves the total hang.
Fixes #4335.
|
|
227021b6
|
2021-04-30T11:25:20
|
|
SDL_windowsmessagebox.c (MessageBoxDialogProc): fix calling convention.
|
|
13472cec
|
2021-04-30T09:48:29
|
|
Fixed bug #4228: move from jcenter() to mavenCentral()
SDL can use relinker. If it's enabled on your project, you need to update to version 1.4.3
|
|
a74f888f
|
2021-04-29T22:25:00
|
|
Fixed bug #4337 - compilation of 'SDL_vulkan_utils' fails with 'VK_ERROR_INCOMPATIBLE_VERSION_KHR' undeclared
|
|
8ac0fb52
|
2021-04-29T09:29:02
|
|
OpenSLES: CloseDevice() is called at higher level, if OpenDevice() fails
- explicit initialization of static variables
|
|
1f3df900
|
2021-04-28T23:40:26
|
|
Error missing 'flags' initialization (see bug #2881)
|
|
fcbf19b7
|
2021-04-28T21:04:47
|
|
AAudio: make sure stream is not null to prevent crash in RequestStop (see #3710)
|
|
c93e3b36
|
2021-04-28T10:43:28
|
|
Fixed bug #2881 - SDL_RLEsurface may encode RGB888 if it has no color key (Thanks Simon Hug)
To encode with BLEND mode, it needs a valid alpha channel
|
|
b6264297
|
2021-04-27T11:10:41
|
|
Merge remote-tracking branch 'refs/remotes/origin/main'
|
|
f8695185
|
2021-04-27T11:07:51
|
|
Audio: normalize conversion Stereo to 5.1, Quad to 7.1, 5.1 to 7.1 (bug #4104)
|
|
21349901
|
2021-04-27T10:57:48
|
|
Audio: convert 5.1 to 7.1, use right-surround for r-front and r-back (see #4104)
|
|
8527c583
|
2021-04-27T01:36:23
|
|
cocoa: Fix recreated windows that are both borderless and resizable.
These would accidentally get a titlebar because the "borderless" style mask
is zero but the resizable attribute adds a bit. I assume this happens because
you used to need window decoration to resize a window in macOS, but this
changed in later releases.
This only caused problems when recreating a window (you had an
SDL_WINDOW_OPENGL window and tried to create a Metal SDL_Renderer on it, etc).
Fixes #4324.
|
|
40210f89
|
2021-04-26T15:54:14
|
|
winrt: Always use a thread for joystick support
|
|
2fdbae22
|
2021-04-26T18:43:28
|
|
cocoa: Remove mouse event tap.
It doesn't appear to work anymore, and was disabled by default anyhow, since
the needed APIs are forbidden on the Mac App Store.
A better solution to lock the mouse to the window on macOS would still be
welcome. CGAssociateMouseAndMouseCursorPosition() works fine for relative
mouse mode, this was just a question of SDL_SetWindowGrab(). As it stands
now, a grabbed mouse can briefly break out of the window, causing varying
degrees of chaos.
|
|
9727655b
|
2021-04-26T14:22:19
|
|
SDL_test_common: add other window flags: --shown, --hidden, --input-focus, --mouse-focus
|
|
d62ebec2
|
2021-04-26T14:10:39
|
|
SDL_test_common: replace 'resize' by 'resizable'
|
|
1f482174
|
2021-04-25T12:44:35
|
|
x11: Mark backing_store as NotUseful when creating windows.
This can give some performance boost, and save some resources, as there's no
reason to keep a copy of an SDL window's contents on the server: most SDL
apps are redrawing completely every frame, and the API allows for expose
events to tell an app a redraw is needed anyhow.
(And compositors are free to ignore this setting if it makes sense to do so,
according to the Xlib docs.)
Reference Issue #3776.
|
|
9c063468
|
2021-04-24T19:47:10
|
|
x11: call XSync before XSetInputFocus during SDL_ShowWindow.
This only happens when using a non-NET_WM window manager, as we might try to
set the focus before the window is mapped.
Fixes #3949.
|
|
89a2980a
|
2021-04-23T01:56:10
|
|
CMake: fixes to pthreads detection.
changes unnecessary check_c_source_runs to check_c_source_compiles,
removes the reduntant cross-compile check, and defines _GNU_SOURCE
for PTHREAD_MUTEX_RECURSIVE checks just like the autotools version.
Fixes: https://github.com/libsdl-org/SDL/issues/4262
Closes: https://github.com/libsdl-org/SDL/pull/4282
|
|
ca969eb2
|
2021-04-24T10:29:52
|
|
Remove gles2 vita render
|
|
058bbe02
|
2021-04-24T10:17:03
|
|
Set volume on device open
|
|
e3ea5b64
|
2021-04-24T10:16:21
|
|
Migrate to lightweight mutexes
|
|
f1ad942a
|
2021-04-22T17:24:05
|
|
SDL_windows_main: use HeapAlloc/HeapFree for command line arguments
If a developer uses SDL_SetMemoryFunctions, we can't rely on SDL_free()
working when SDL_main() returns.
Signed-off-by: Steven Noonan <steven@valvesoftware.com>
Signed-off-by: Sam Lantinga <slouken@libsdl.org>
|
|
17d8479d
|
2021-04-22T15:44:01
|
|
hidapi/libusb: maintain in-memory cache of vendor/product strings
The get_usb_string call is rather expensive on some USB devices, so we
cache the vendor/product strings for future lookups (e.g. when
hid_enumerate is invoked again later).
This way, we only need to ask libusb for strings for devices we haven't
seen since before we started.
Signed-off-by: Steven Noonan <steven@valvesoftware.com>
Signed-off-by: Sam Lantinga <slouken@libsdl.org>
|
|
4535d654
|
2021-04-22T14:35:59
|
|
HIDAPI_UpdateDiscovery: only treat "add" and "remove" events as relevant
I have a buggy system which reports a udev "change" event for an empty
USB-C port every 0.14 seconds, which causes annoying frame hitches
because SDL decides that means it needs to do a libusb hid_enumerate,
which is slow (~25ms!) because of the get_usb_string() calls in there.
We only need to re-enumerate if we've seen a device added or removed, so
let's filter out the change event first.
Signed-off-by: Steven Noonan <steven@valvesoftware.com>
Signed-off-by: Sam Lantinga <slouken@libsdl.org>
|
|
b15bbd4e
|
2021-04-22T16:11:13
|
|
SDL_udev: check for NULL return value from udev_device_get_action
Signed-off-by: Steven Noonan <steven@valvesoftware.com>
Signed-off-by: Sam Lantinga <slouken@libsdl.org>
|
|
cf05a5eb
|
2021-04-22T21:40:57
|
|
eglChooseConfig: only add EGL_DEPTH_SIZE if non 0
and fix static / shadowed variables warnings for dump configs
|
|
98a966d1
|
2021-04-22T18:06:17
|
|
Android: don't need to set the SurfaceHolder format from java code
It's already set with ANativeWindow_setGeometry, and eventually set/changed also by eglCreateWindowSurface.
- avoid issues with older device where SurfaceView cycle create/changed/destroy appears broken:
calling create/changed/changed, and leading to "deuqueBuffer failed at server side, error: -19", with black screen.
- re-read the format after egl window surface is created, to report the correct one (sometimes, changed from RGBA8888 to RGB24)
|
|
8e3ec34d
|
2021-04-20T12:40:40
|
|
wayland: Refactor toplevel mapping, implement HideWindow
|
|
0838f53d
|
2021-04-21T11:41:08
|
|
Implement SDL_SetWindowAlwaysOnTop for X11
|
|
a5825576
|
2021-04-21T13:39:31
|
|
Fix error handling of wayland message box
Zenity return a small integer on success which may be the same as EXIT_FAILURE. Use a bigger integer for error reporting from child process.
|
|
12dd412b
|
2021-04-21T13:31:15
|
|
Fix icon of wayland message box
Also add some comments and silence a warning.
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com>
|
|
d0cf3b75
|
2021-04-20T18:26:02
|
|
Return correct button id
|
|
1fd95c53
|
2021-04-20T18:15:09
|
|
Disable pango markup in wayland massage box
Zenity support pango markup, add --no-markup to disable it.
|
|
0cd0e9ba
|
2021-04-20T17:49:21
|
|
Reimplement wayland message box function with execvp.
Previous version used 'popen' which required to sanitize user provided text. Not
sanitizing text could cause failure if user provided text included a " or command
injection with `cmd`.
|
|
99ef03b9
|
2021-04-21T01:22:22
|
|
KMSDRM: Only use OpenBSD-specific defines on pre-6.9 releases
|
|
a0a5da5d
|
2021-04-19T07:13:38
|
|
Add SDL_SetWindowAlwaysOnTop()
|
|
6be9c009
|
2021-04-20T13:46:25
|
|
Android: prevent error EGL_BAD_DISPLAY while getting egl version without display
There is an error "E libEGL : validate_display:91 error 3008 (EGL_BAD_DISPLAY)"
that occurs when calling "eglQueryString(display, EGL_VERSION)", with EGL_NO_DISPLAY.
Khronos says "EGL_BAD_DISPLAY is generated if display is not an EGL display connection, unless display is EGL_NO_DISPLAY and name is EGL_EXTENSIONS."
but this was added in SDL with "EGL 1.5 allows querying for client version"
( https://github.com/libsdl-org/SDL/commit/56363ebf6124b345e1cfbd14fb6c0e654837910c )
In fact:
- it actually doesn't work on Android that has 1.5 egl client
- it works on desktop X11 (using SDL_VIDEO_X11_FORCE_EGL=1)
The commit moves the version call where it's used, eg inside the "if (platform) {"
and checks that "eglGetPlatformDisplay" has been correctly loaded.
|
|
03503423
|
2021-04-19T23:31:23
|
|
filesystem: Better OpenBSD support for SDL_GetBasePath().
Fixes #3752.
|
|
de6d2902
|
2021-04-19T21:48:11
|
|
Fix keymap updating for X11 backend
|
|
509228c4
|
2021-04-18T22:26:27
|
|
wayland: Implement GetDisplayDPI
|
|
fcbfe33c
|
2021-04-18T09:45:22
|
|
wayland: Implement SetWindowModalFor
|
|
213bfc19
|
2021-04-18T09:36:54
|
|
wayland: Implement RestoreWindow for xdg/zxdg
|
|
0f518002
|
2021-04-18T09:33:57
|
|
wayland: Removed unused GetDisplayModes/SetDisplayMode functions
|
|
46df195b
|
2021-04-18T09:33:06
|
|
wayland: Implement GetDisplayBounds
|
|
ed24c345
|
2021-04-16T21:35:50
|
|
wayland: Implement basic window move events via wl_surface_listener.
This unearthed an unspeakably large amount of bugs in the wl_output enumerator,
notably the fact that the wl_output user pointer was to temporary memory!
This was "fixed" in e862856, and was then pointed out as a leak in 4183211,
which was undone in d9ba204. The busted fix was correct that the malloc was an
issue, but wrong about _why_; SDL_AddVideoDisplay copies by value and does not
reuse the pointer, so generally you want your VideoDisplay to be on the stack,
but of course the callbacks don't allow that, so a malloc was a workaround. But
we can do better and just host our temporary display inside WaylandOutputData
because that will be persistent while also not leaking.
Wait, wasn't I talking about move events? Right, that: wl_surface_listener does
at least give us the ability to know what monitor we're on, even though we have
no idea where we are on the monitor. All we need to do is check the wl_output
against the display list and then push a move event that both indicates the
correct display while also not being _too_ much of a lie (but enough of a lie
to where our event doesn't get discarded as "undefined" or whatever). The index
check for the video display is what spawned the great nightmare you see before
you; aside from the bugfix this is actually a really basic patch.
|
|
859230ec
|
2021-04-16T13:04:36
|
|
Android: add AAudio entry in CMake SDL_config
|
|
d4e96e11
|
2021-04-16T09:44:07
|
|
Android: enable audio driver OpenSLES when building with CMake
|
|
b4f89c56
|
2021-04-15T21:16:10
|
|
AAudio: add aaudio pause/resume function to android events loop
|
|
02b1ebc9
|
2021-04-15T21:13:17
|
|
Android: add openslES and AAudio compilation to CMakeLists
|
|
146656cf
|
2021-04-15T21:03:10
|
|
AAudio: add compilation to Android.mk, but not activated in SDL_config_android.h
|
|
f1fab24e
|
2021-04-15T21:00:00
|
|
AAudio: add bootstrap in SDL_audio.c
|