|
7d7ec9c9
|
2022-04-26T16:41:28
|
|
x11: Remove XVidMode and Xinerama support.
Fixes #1782.
|
|
e551384a
|
2022-04-26T14:54:14
|
|
Added functions to get the platform dependent name for a joystick or game controller
|
|
b293888c
|
2022-04-26T19:44:34
|
|
Fixes an issue introduced via #5573 when building for i686
|
|
5066910b
|
2022-04-10T13:44:01
|
|
audio: Make pregenerated resampler kaiser filter more precise.
|
|
111c3add
|
2022-04-10T13:23:51
|
|
audio: Resampler optimizations.
- Calculate `j * RESAMPLER_SAMPLES_PER_ZERO_CROSSING` once per loop
iteration since we use it multiple times.
- Do the left-wing loop in two sections: while `srcframe < 0` and then
the remaining calculations when `srcframe >= 0`. This bubbles a conditional
out of every iteration of a tight loop, giving us a boost. We could
_probably_ do this to the right-wing loop too, but it's less straightforward
there.
- The real win: Use floats instead of doubles. This almost doubles the speed
of the entire function on Intel CPUs, and for embedded things without
hardware-level support for doubles, the speedup is enormous. This in
theory might reduce audio quality, though, and I had to put a check in
place to avoid a division-by-zero that we avoided at higher precision, but
this is likely to be worth keeping for at least the Sony PSP and other
smaller platforms, if not everyone.
|
|
de019568
|
2022-04-09T23:43:57
|
|
audio: Prebake the resampler's kaiser table instead of doing it at runtime.
|
|
f6eb4b07
|
2022-04-26T13:14:15
|
|
pulseaudio: Feed audio data in response to write callbacks.
Instead of waiting until the entire buffer from the SDL callback is ready
to be accepted by PulseAudio, we use pa_stream_set_write_callback and
feed some portion of the buffer as callbacks come in asking for more.
This lets us remove the halving of the buffer size during device open,
and also (hopefully) solves several strange hangs that happen in unusual
circumstances.
Fixes #4387
Fixes #2262
|
|
01ef98a5
|
2022-04-26T10:19:03
|
|
Don't force keyboard auto-repeat on, if the user has disabled it for some reason
Fixes https://github.com/libsdl-org/SDL/issues/2400
|
|
795744fc
|
2022-01-07T10:11:46
|
|
Turn off relative mouse before window checks as well
|
|
e2d268a3
|
2022-01-06T23:42:44
|
|
SDL_cocoamouse.m: SetRelativeMouseMode even if out of focus
Should fix #3087
|
|
d7c07d6b
|
2022-04-27T00:57:17
|
|
Read motion sensor scale from Switch controllers (#5555)
* Read IMU scale data from Switch controllers. Up until now, SDL has used hard-coded scaling which isn't correct with some supported controllers.
* Moved declarations to beginning of code blocks to better fit with SDL style requirements
|
|
76afb858
|
2022-04-25T10:35:56
|
|
Introduces Cocoa_GetWindowDisplayIndex. This enable a proper management for dpi when switching between retina and non-retina displays.
|
|
c39df2fb
|
2021-12-22T18:27:10
|
|
joystick: get HID top-level collection preparsed data directly from RawInput API.
|
|
8c1584e8
|
2022-04-26T17:56:33
|
|
WhatsNew: Start block for 2.0.24
|
|
e9ff4fdd
|
2022-04-25T23:55:50
|
|
add SDL_bsearch
|
|
0b2a55ea
|
2022-02-02T14:58:33
|
|
Fix typo
|
|
3dcfe860
|
2022-02-02T13:59:49
|
|
Add joystick battery event
|
|
0964c84d
|
2022-02-02T11:21:32
|
|
Always use SDL_PrivateJoystickBatteryLevel to update battery level
But do not use it for initialisation.
|
|
fa29e2d7
|
2022-04-25T13:45:51
|
|
Updated to version 2.0.23 for development
|
|
53dea983
|
2022-04-25T13:51:15
|
|
x11: revert checks for _NET_WM_STATE_FULLSCREEN changes.
This reverts commit 85977354fbce9ecb2add660a88e6bec3532c3e26.
This reverts commit 0249df9d960f9bc28b476e1171c5501fc37cca12.
Fixes #5572.
Reopens #5390.
|
|
981e1e3c
|
2022-04-23T10:32:40
|
|
Fixed logical size synchronization issue on macOS
https://discourse.libsdl.org/t/sdl-2-0-22-prerelease/35306/6
|
|
7a574303
|
2022-04-23T20:01:40
|
|
hidapi, libusb: import mainstream commit 536bad201e
|
|
fa073ed0
|
2022-04-22T22:31:04
|
|
Revert "Fix relative mouse input for Unvanquished (unvanquished.net)"
This reverts commit 331859079674465a39b24f32a6a113959601dca3.
Fixes https://github.com/libsdl-org/SDL/issues/5569
|
|
8986efd6
|
2022-04-22T14:21:46
|
|
Added support for the Backbone One controller on iOS
|
|
2ca08378
|
2022-04-22T14:21:41
|
|
SDL: sometimes the PS5 controller doesn't report having to power even when connected over USB. Possibly related to being completely charged? Either way we already know that it's USB or BT so let's use the driver's knowledge instead.
|
|
04bf7c94
|
2022-04-22T09:36:39
|
|
Fixed build
|
|
d9b5805b
|
2022-04-22T09:12:48
|
|
Return a correlation error when trigger rumble is attempted without correlation
|
|
0288de85
|
2022-04-22T14:24:10
|
|
SDL_Rect: Add \sa documentation block to SDL_FRect
|
|
ba62ead5
|
2022-04-18T13:45:41
|
|
Handle potential out of memory condition when working with hints
|
|
8982d9f4
|
2022-04-18T21:19:25
|
|
windows: Fix RoInitialize() failure after a CoInitializeEx() call using apartment threading
This mirrors the same codepath in WIN_CoInitialize() which handles STA and MTA.
|
|
145824f6
|
2022-04-21T01:38:53
|
|
WGI: Only call RoUninitialize() if RoInitialize() succeeded
|
|
00b2e10a
|
2022-04-20T20:58:29
|
|
WGI: Keep a reference to the MTA to avoid crashing on COM teardown
Fixes #5552
Fixes #5270
|
|
923cb446
|
2022-04-20T21:02:40
|
|
windows: Fix calling convention for RoInitialize/RoUninitialize
Fixes #5563
|
|
d4a01bfe
|
2022-04-20T14:07:30
|
|
os2: SDL_DestroyMutex should ignore NULL mutexes.
Every other backend does this, so this should match, now.
It's possible this was harmless, but we can avoid the system call
and the (likely?) debug message when it fails, though!
|
|
a40405d7
|
2022-04-20T18:06:02
|
|
hidapi: Wrap CopyHIDDeviceInfo in define checks.
The purpose of this is to silence a 'defined but not used'
warning.
|
|
5bc29334
|
2022-04-20T15:53:25
|
|
test: Basic tests for SDL_FRectEquals
Based on the integer version. These tests mostly check that input
isn't mangled and that invalid input gives the expected negative
result.
|
|
fc944859
|
2022-04-20T05:46:45
|
|
SDL_Rect: Use a default epsilon in SDL_FRectEquals()
Add SDL_FRectEqualsEpsilon() for when more control over
equality test is required.
|
|
00feca27
|
2022-04-20T07:51:04
|
|
Add SDL_FLT_EPSILON.
|
|
5d4a1f83
|
2022-04-20T05:45:35
|
|
WhatsNew.txt: Add SDL_FRectEqualsEpsilon()
|
|
aeadbdd7
|
2022-04-20T09:00:00
|
|
Remove an unused function prototype
|
|
c8c59a21
|
2022-04-20T08:58:58
|
|
Fix a -Wshadow warning
|
|
d9009388
|
2022-04-19T14:55:58
|
|
SceKernelMemBlockType to unsigned int
|
|
3753a7b1
|
2022-04-19T14:42:39
|
|
Fix recent changes in VitaSDK
|
|
02225aa7
|
2022-04-18T22:57:03
|
|
Fixed build
|
|
49a2e4b0
|
2022-04-19T00:36:53
|
|
x11: Revert "Fix keymap updating for X11 backend"
This reverts commit de6d290266d1def0eef9df81bf9be41c12a98c61.
This patch had multiple issues, discussed in #5520.
|
|
b9fe6ba0
|
2022-04-18T13:08:04
|
|
Fixed compile warnings
|
|
57927a24
|
2022-04-18T12:57:28
|
|
Don't call scandir() inside of scandir()
This works around a crash in address sanitizer
|
|
1ede941f
|
2022-04-18T21:09:48
|
|
SDL_render.c: internally change viewport/cliprect type from SDL_FRect to SDL_DRect (double precision). (see bug #5547)
|
|
9919d1a7
|
2022-04-18T11:51:09
|
|
Remove HWND_TOPMOST for fullscreen windows
Fixes https://github.com/libsdl-org/SDL/issues/5509
|
|
009a0ff9
|
2022-04-12T14:33:12
|
|
use explicit GetModuleFileNameW
|
|
de711e16
|
2022-04-12T10:32:43
|
|
simplify SDL_GetBasePath on windows
- use GetModuleFileName directly (as recommended)
|
|
7c140429
|
2021-08-03T07:18:02
|
|
Enable evdev-based gamecontrollerdb on FreeBSD
|
|
e7b01ee7
|
2022-04-18T09:55:52
|
|
Added controller mapping for the Thrustmaster Dual Analog 3.2 on Linux
|
|
2b529461
|
2022-04-15T11:51:02
|
|
video: Don't minimize fullscreen windows on focus loss by default when mode switching is disabled
When mode switching is disabled in a video backend, fullscreen windows are basically just fullscreen desktop windows with different internal scaling. As no mode switching occurs, there's no need to minimize them on focus loss by default. This can still be overridden by explicitly setting the internal hint for minimizing on focus loss.
This has the side effect of fixing a bug on GNOME, where, when a fullscreen Wayland window has it's focus lost and restored via alt+tab followed by switching back to windowed mode, the top portion of the window won't end up being obstructed by GNOME's top bar.
|
|
c37090f9
|
2022-04-18T12:30:08
|
|
wayland: Add support for TOOLTIP/POPUP_MENU
|
|
9e264b92
|
2022-04-18T09:20:47
|
|
Certain audio drivers, like the RME "Pro" Audio driver, have resampling quality issues when using WASAPI.
We'll use SDL's resampling algorithm so we have consistent quality between platforms and drivers.
Fixes https://github.com/libsdl-org/SDL/issues/5538
|
|
254fcc90
|
2022-04-18T09:03:14
|
|
Revert "video: Prefer Wayland over X11"
This reverts commit 8ceba27d6291f1195e13608033ec439aec621fc6.
SDL Wayland support is stable, but there are a number of issues with third-party software (NVIDIA drivers, libwayland event overflow, libdecor not handling plugin load failures, Steam overlay not working with Wayland, etc.) that make it better to default to X11 at this time.
Games which would like to prefer wayland when available can use the following code before SDL_Init():
SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11");
Fixes https://github.com/libsdl-org/SDL/issues/5527
|
|
c1336b21
|
2022-04-17T12:43:32
|
|
hints: Make SDL_VIDEODRIVER and SDL_AUDIODRIVER formal hints.
They were just environment variables before.
Fixes #5528.
|
|
634b9edc
|
2022-04-15T20:50:55
|
|
cmake: Fixed indenting and some oldschool `endif(TEXT)` things.
|
|
dc5bc523
|
2022-04-15T17:11:29
|
|
Added CMake option to disable the installer
|
|
67e0f546
|
2022-04-15T18:24:57
|
|
x11: Update the display when the WM changes a window's fullscreen state.
Fixes #5390.
|
|
edb473cf
|
2022-04-15T15:03:28
|
|
video: Wayland: Always round scaled pointer coordinates down
Rounding up can cause the pointer coordinates to exceed the window boundaries at the right and bottom edges.
|
|
13393a1c
|
2022-04-15T14:28:07
|
|
video: Wayland: Clamp fullscreen window dimensions to desktop
A scaled fullscreen window may exceed the bounds of the desktop. Clamp the window size to the desktop dimensions in fullscreen mode.
|
|
0adb6701
|
2022-04-12T09:01:17
|
|
avoid NullPointer in SDL_GetRenderTarget
|
|
01b14e14
|
2022-04-12T08:49:19
|
|
avoid NullPointer in SDL_GL_MakeCurrent
|
|
55a4e1d3
|
2022-04-12T18:34:32
|
|
CI: update os2.yml to use open-watcom/setup-watcom
also remove os2-buildbot.sh -- not needed anymore.
|
|
c36bd784
|
2022-04-13T12:10:49
|
|
WhatsNew.txt: Document new dependency on libwayland-client 1.18.0
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
46616af7
|
2022-04-12T11:53:40
|
|
WhatsNew.txt: Added SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR
|
|
9c2f46b0
|
2022-04-12T15:23:22
|
|
Wayland: Add SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR
This hint allows libdecor to be used even when xdg-decoration is
available. It's mostly useful for debugging libdecor, but could in
theory be used by applications which want to (for example) bundle their
own libdecor plugins.
|
|
99ae6395
|
2022-04-12T10:04:05
|
|
Initialise scandir argument
'scandir' does not initialise 'entries' on error
|
|
68b6fff2
|
2022-04-12T14:05:06
|
|
test: Copy utf8.txt to build directory
testiconv wants this.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
b4256d03
|
2022-04-12T14:25:26
|
|
testevdev: Adapt to a broader definition of keyboards
At the time I contributed this unit test, SDL had a relatively narrow
definition of what is a keyboard, approximately matching udev
ID_INPUT_KEYBOARD. Now it uses the equivalent of udev ID_INPUT_KEY,
which matches anything with keyboard keys, and not just reasonably
complete alphanumeric keyboards.
Fixes: 040bd7a9 "Fix udev not detecting ID_INPUT_KEY devices when udev is not running"
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
c2946902
|
2022-04-12T14:16:29
|
|
testevdev: Recognise touchpads as such
At the time I contributed this unit test, SDL didn't understand Linux
touchpads, but now it does.
Fixes: 373216ae "Added support for touchpads in the Linux evdev code"
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
f708cebe
|
2022-04-12T15:35:32
|
|
fix os2 timer in fallback mode
|
|
b7599613
|
2022-04-11T23:31:09
|
|
Vita: fix VIDEO_VITA_PVR flag
|
|
b1831715
|
2022-04-11T12:09:40
|
|
UWP: Require Windows 10 16299 or newer.
This is required to build with WGI support. Thanks for @FrozenChameleon for the fix!
Fixes #5504
|
|
727eef70
|
2022-04-09T10:12:49
|
|
audio: SDL_ConvertStereoToMono_SSE3 missed an unaligned load.
|
|
505d6a4a
|
2022-04-08T18:18:56
|
|
Update version to 2.0.22 for release
|
|
a256e6ba
|
2022-04-08T18:10:56
|
|
Updated the patch notes with API changes for 2.0.22
|
|
6d7d142b
|
2022-04-08T18:10:38
|
|
Fixed typo
|
|
c2093fab
|
2022-04-08T13:58:45
|
|
video: wayland: Set the surface damage region when using fullscreen viewports
When using emulated display modes, the output size is often larger than the drawable buffer. As the surface damage region is automatically calculated from the smaller drawable buffer size, the damage region needs to be manually set to cover the entire viewport region or visual repaint artifacts can result.
|
|
ba0ba9ef
|
2022-04-08T01:20:36
|
|
direct3d11: Set the swapchain target immediately after creating it.
Fixes #4782
|
|
cb816308
|
2022-04-08T02:21:52
|
|
render: Update the size/scale/viewport on moves, in addition to resizes.
For OpenGL this means resetting the viewport state shadowing flag too.
Fixes #1504
|
|
5613a560
|
2022-04-07T11:32:22
|
|
Make sure the UIKit message box is being handled on the main thread
Potentially fixes https://github.com/libsdl-org/SDL/issues/4865
|
|
2823534f
|
2022-04-07T20:11:50
|
|
minor adjustment to os/2 watcom makefile
|
|
49b9e347
|
2022-04-07T08:24:03
|
|
Only update modifier state for keys that are pressed in another application
Fixes https://github.com/libsdl-org/SDL/issues/4432
|
|
85977354
|
2022-04-07T09:14:33
|
|
x11: Treat WM setting the window "fullscreen" like FULLSCREEN_DESKTOP.
Fixes #5390.
|
|
6dbca7c9
|
2022-04-06T20:48:41
|
|
Compile with recursive mutexes for emscripten
Emscripten actually does support recursive mutexes, so no need to use SDL's fake recursive code.
Background: #5428, #5479
|
|
64c7896f
|
2022-04-06T20:56:10
|
|
Makefile.in: added missing CXX variable.
|
|
d1f7f9e3
|
2022-04-06T11:18:46
|
|
wayland: Pin the fake window position at (0, 0).
I kind of thought it'd be nice to have it in the center, but this is an issue
for applications that still assume global mouse and window positions are
accessible. For example, this fixes cursor offset issues in UE5.
|
|
279aeb59
|
2022-04-06T01:32:57
|
|
wayland: Add a bug link for the detach FIXME
|
|
3ada694e
|
2022-04-06T01:18:03
|
|
wayland: Try to detach at the beginning of ShowWindow, just in case.
It's possible that an external component (probably a GL/VK context) committed, so we need to cover our bases and detach in both HideWindow and ShowWindow.
Fixes a crash in UE5 editor's pop-ups.
|
|
dcfb7fff
|
2022-04-06T00:55:32
|
|
wayland: Evaluate WINDOWPOS_CENTERED_DISPLAY for move events
Partially fixes the mouse cursor in UE5 editor. Imperfect because UE5 uses window position and global mouse state to get position, but of course we don't have global mouse and this is just to get the right display index so this still fails overall. We really need to make global mouse support a feature query...
|
|
7ea1b69d
|
2022-04-05T21:00:07
|
|
Sort controllers by the js* index on Linux
Also fixed the initial scan to directly scan devices instead of using
udev so they can be sorted, as intended.
Fixes https://github.com/libsdl-org/SDL/issues/4688
|
|
0249df9d
|
2022-04-05T23:04:19
|
|
x11: Try to keep SDL_WINDOW_FULLSCREEN* in sync with window manager.
So if Gnome/KDE/etc have a keyboard shortcut or titlebar decoration to
make any window go fullscreen (with the _NET_WM_FULLSCREEN flag on the
_NET_WM_STATE property), we update the SDL window flag.
Fixes #5390.
|
|
eb660e86
|
2022-04-05T19:43:42
|
|
Cache the fact that a device didn't look like a joystick
Fixes https://github.com/libsdl-org/SDL/issues/5211
|
|
138d96c8
|
2022-04-05T19:30:25
|
|
Send key release event to input method. (#5281)
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com>
|
|
8bae343f
|
2022-04-05T22:19:25
|
|
x11: when waiting on fullscreen changes, not window position _and_ size.
This makes sure the window doesn't have outdated values if you try to access
them (or call something that does, like SDL_SetWindowMinimumSize).
Fixes #5233.
|
|
268c2fa8
|
2022-04-05T18:42:17
|
|
Don't resize fullscreen windows when hiding or minimizing them (thanks @madewokherd!)
This has the benefit of window previews (mousing over the icon) having the correct size and contents.
Fixes https://github.com/libsdl-org/SDL/issues/5320
|
|
def27267
|
2022-02-05T12:32:06
|
|
Ignore focus change messages that contradict GetForegroundWindow.
On Wine, when a window is programmatically minimized in response
to losing focus, we receive a WM_ACTIVATE for the deactivation,
but GetForegroundWindow still indicates that our window is focused.
This causes an incorrect SDL_WINDOWEVENT_FOCUS_GAINED.
This is probably a Wine bug, but it may take a while to fix and
then for the fix to make its way to users.
|