|
85b51e6c
|
2021-06-05T11:46:47
|
|
Fall back to polling normally if not operating the win32 message loop
In this condition, we cannot safely wait/wake on events.
|
|
e13d5df0
|
2021-06-05T11:41:55
|
|
Call SDL_SendWakeupEvent() directly from SDL_PeepEvent()
SDL_PeepEvent() is a documented public API, so we must properly support
waking a waiting thread in SDL_WaitEventTimeout() with SDL_PeepEvent().
|
|
d956636c
|
2021-06-04T18:39:47
|
|
wayland: Implement FlashWindow
|
|
64724db0
|
2021-06-04T19:55:30
|
|
Implement bare minimum for SDL_FlashWindow
|
|
64c40b90
|
2021-06-04T14:34:21
|
|
Updated copyright date
|
|
37b093ea
|
2021-06-05T00:05:56
|
|
test/checkkeysthreads: build fixes, and add to os2 makefile.
|
|
0dd7024d
|
2021-03-12T21:58:20
|
|
Modifies WaitEvent and WaitEventTimeout to actually wait instead of polling
When possible use native os functions to make a blocking call waiting for
an incoming event. Previous behavior was to continuously poll the event
queue with a small delay between each poll.
The blocking call uses a new optional video driver event,
WaitEventTimeout, if available. It is called only if an window
already shown is available. If present the window is designated
using the variable wakeup_window to receive a wakeup event if
needed.
The WaitEventTimeout function accept a timeout parameter. If
positive the call will wait for an event or return if the timeout
expired without any event. If the timeout is zero it will
implement a polling behavior. If the timeout is negative the
function will block indefinetely waiting for an event.
To let the main thread sees events sent form a different thread
a "wake-up" signal is sent to the main thread if the main thread
is in a blocking state. The wake-up event is sent to the designated
wakeup_window if present.
The wake-up event is sent only if the PushEvent call is coming
from a different thread. Before sending the wake-up event
the ID of the thread making the blocking call is saved using the
variable blocking_thread_id and it is compared to the current
thread's id to decide if the wake-up event should be sent.
Two new optional video device methods are introduced:
WaitEventTimeout
SendWakeupEvent
in addition the mutex
wakeup_lock
which is defined and initialized but only for the drivers supporting the
methods above.
If the methods are not present the system behaves as previously
performing a periodic polling of the events queue.
The blocking call is disabled if a joystick or sensor is detected
and falls back to previous behavior.
|
|
40e5ce7f
|
2021-06-04T13:23:54
|
|
This delay is no longer needed on Steam Link hardware
|
|
cd67f42d
|
2021-06-04T12:20:47
|
|
add Linux mapping for brook fighting board (#4416)
* added controller mapping for Brook fighting board
* fixed formatting on Brook Universal Fighting Board controller mapping entry
|
|
89fd9821
|
2021-05-26T21:33:25
|
|
Add controller mapping for Atari vcs controllers
This add controller mappings for the Atari vcs (modern) controller as
well as the classic controller, for both bluetooth and USB connectivity.
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
|
|
de4ba6eb
|
2021-05-27T12:41:41
|
|
Ignore the device version for Atari vcs controllers
At least on bluetooth the guid user the version reported by the
bluetooth device. Which for Atari vcs controllers is the firmware
version. However the mapping will stay the same regardless of firmware
version, so ignore the version entirely to avoid needing a new mapping
entry for each firmware version.
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
|
|
6de33c09
|
2021-06-03T09:05:33
|
|
Clarify why we're skipping Game Controller framework supported devices in hid.c
|
|
28da6c5d
|
2021-05-27T14:42:03
|
|
Have HIDAPI skip MFI supported HID devices on macOS to avoid duplicate devices.
|
|
2af3f64e
|
2021-06-02T14:37:09
|
|
wayland: Activate the window on first ShowWindow, if possible
|
|
151f9538
|
2021-06-02T11:41:44
|
|
wayland: Implement RaiseWindow with xdg-activation
|
|
f498c281
|
2021-06-02T14:10:50
|
|
fixed build with SDL_JOYSTICK_RAWINPUT enabled after commit b81969d46f4b
See: https://github.com/libsdl-org/SDL/pull/4388#issuecomment-852713792
|
|
f5b87273
|
2021-06-02T08:32:43
|
|
Fixed bug #4397 - update IOS documentation
|
|
4522cb1d
|
2021-05-25T03:17:03
|
|
Changing variable from float to int, this way we can check it's value without having to do an unnecessary conversion. Then do explicit conversions later on if we need.
|
|
c289bad9
|
2021-03-22T11:22:31
|
|
In x11, GetDisplayDPI can give incorrect or unusable DPI information. Using XGetDefaults to get the Xft DPI if it's available and returning that. This could allow you to figure out DPI scale.
|
|
6a2af48a
|
2021-05-06T15:43:16
|
|
CMake: Generic check for desktop GL and EGL on Linux systems
|
|
fd121b5e
|
2021-05-13T17:46:55
|
|
development list has moved to forum
|
|
ded02387
|
2021-05-16T17:16:54
|
|
Make CMake script more accurate to autoconf script
DBus, IBus and inotify is now able to be used outside Linux like in configure.
KMSDRM input is now working on FreeBSD with CMake compilation.
|
|
d3244035
|
2021-05-17T01:24:35
|
|
wayland: Add support for maximized/restored events
|
|
fc508eab
|
2021-05-23T15:59:20
|
|
kmsdrm: remove redundant modeset_pending flag
this variable was added in commit 2067a7db8e4a36ba40ab34a55b3166ca28638a60 and
ultimately tracks if this is a surface's first present. checking if the current
bo is NULL provides the same functionality and cuts down on a redundant piece
of state potentially getting out of sync in the future
|
|
4c965b7a
|
2021-05-23T16:09:27
|
|
kmsdrm: fix SetDisplayMode binding the the wrong surface / context
SetDisplayMode needs to recreate the EGL surfaces, which then need to be
bound along with the correct context in each rendering thread
commit 3a1d7d9c9ac670bf35cfa8ebf3706a1e2a3e5de4 removed this behavior which
has broken using SetDisplayMode when rendering with multiple contexts
the commit message was rather vague, but if the surfaces do need to be
created immediately, this process probably needs to be split such that
surface is created immediately, but the binding is deferred
|
|
0219928d
|
2021-05-23T16:06:40
|
|
kmsdrm: honor mode previously set by SDL_SetWindowDisplayMode when enabling fullscreen
and remove duplicate SDL_WINDOWEVENT_RESIZED event
commit 2067a7db8e4a36ba40ab34a55b3166ca28638a60 made SDL_SetWindowSize and
SDL_SetWindowFullscreen modify the display mode previously set by a call to
SDL_SetWindowDisplayMode
as far as I understand the SDL API, calling SDL_SetWindowDisplayMode followed
by calling SDL_SetWindowFullscreen(..., SDL_WINDOW_FULLSCREEN) is the correct
way to mode set / switch to fullscreen
this change restores that functionaliy when switching to SDL_WINDOW_FULLSCREEN,
but other cases are still modifying the display mode set by the user. rather
than modifying the display mode set by the user, it seems this logic inside of
KMSDRM_ReconfigureWindow should be pushed further down into KMSDRM_CreateSurfaces
(as it was originally) to only modify the final mode that's set (based on the
fullscreen flags), but not override the mode requested by the user
|
|
fd5de93a
|
2021-05-23T16:05:39
|
|
kmsdrm: fix gbm surface dimensions not matching the mode being set
commit 2067a7db8e4a36ba40ab34a55b3166ca28638a60 introduced new surface_w and surface_h
variables which were passed to gbm_surface_create rather than the dimensions from the
drmModeModeInfo structure. commit 5105ecf8b1b37ab4e4b8344550c90dd69f49909e further
refactored this code and no longer synchronized these variables inside
KMSDRM_SetDisplayMode, breaking it
this change removes the variables since they're seemingly redundant to begin with
|
|
30359a68
|
2021-06-01T20:11:59
|
|
Android: document workaround to use JNI on native thread (see bug #4406)
|
|
b63cb822
|
2021-05-30T01:57:56
|
|
Added T500RS to known wheel list
|
|
b81969d4
|
2021-05-17T14:50:33
|
|
Be more explicit about Xbox 360/One device ids.
When Xbox One/Series Controllers are connected via USB on Windows they all are using `XBOXGIP` driver and produce a special ProductID `0x02FF` (GIP software PID) for any connected controller.
On the other hand `Xbox 360 Wireless Controller Reciever` (PID 0x0719) is using `XUSB` driver and produces special ProductID `0x02A1` (XUSB software PID) for each connected Xbox 360 Wireless Controller.
Also fixed Xbox One Series X Controller comment.
|
|
86ee383f
|
2021-05-25T09:59:45
|
|
Removed duplicate SDL_AtomicGet()
|
|
fed84650
|
2021-05-27T10:40:41
|
|
loadbmp: Attempt to handle small palettes better.
Only adjust the biClrUsed field if it is set to zero in the bitmap, and make
some effort to make sure we don't overflow a buffer in any case.
This was triggering an issue with the sailboat bmp used for testpalette.c in
SDL 1.2, which is an 8-bit paletted image with 66 palette entries instead of
256. See discussion at https://github.com/libsdl-org/sdl12-compat/issues/63
This change might be a problem, but there's no indication this code, which
originally landed in SDL_image 17 years ago with a large rewrite, is actually
fixing a specific issue. I'm also not sure we should actually make an effort
to accept a bmp that has a biClrUsed field that is both non-zero and _also_
incorrect.
|
|
db146e66
|
2021-05-25T10:34:04
|
|
Fixed warnings building with Visual Studio
|
|
3fcaf5b4
|
2021-05-25T10:33:30
|
|
Fixed incorrect axis scaling for Nintendo Switch controllers
|
|
75725608
|
2021-05-25T14:56:56
|
|
SDL_thread.h: move libc header includes before begin_code.h.
|
|
7a7cba4b
|
2021-05-25T14:56:37
|
|
config.guess, config.sub: fix permissions
|
|
157c3f80
|
2021-05-21T09:45:08
|
|
[SDL] Minimize number of system calls when handling WM_INPUT raw input messages.
Details:
Currently doing 4 system calls per WM_INPUT message, which can cause the thread handling the message loop to be swapped out several times:
* GetProp - to get window data from the window handle
* GetRawInputData - to retrieve the raw input data
* 2 calls to GetMessageExtraInfo - to ignore synthetic mouse events generated for touchscreens
In this change:
* Replaced GetProp by iterating the list of windows maintained by SDL (with a fallback to GetProp). Note that this will affect all messages and not just WM_INPUT
* only calling GetMessageExtraInfo if a touchscreen has been detected
Fix for https://jira.valve.org/browse/CSGO-4855
@saml
|
|
dbbc725f
|
2021-05-19T14:25:48
|
|
Remove WSCONS mouse scaling
|
|
2aa14b38
|
2021-05-19T14:24:58
|
|
Add missing key to WSCONS-to-SDL conversion table
|
|
c63a62ae
|
2021-05-18T23:51:50
|
|
updates to config.guess and config.sub from mainstream.
|
|
333c8e75
|
2021-05-17T11:54:05
|
|
The PS5 driver supports Joystick LED
|
|
b5b7804e
|
2021-05-15T00:50:20
|
|
minor update to os2 makefile. (binary output doesn't change.)
|
|
646ddfb7
|
2021-05-15T00:22:50
|
|
minor watcom build fixes.
|
|
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'
|