|
cbdb67b4
|
2022-03-30T00:12:42
|
|
Vita: add SDL_GetPreferredLocales support
|
|
178ac196
|
2022-03-29T23:48:08
|
|
Vita: add audio capture support
|
|
4d1905c9
|
2022-03-29T13:34:14
|
|
video: wayland: Use viewports for non-fullscreen windows with fractional scaling
Use viewports for non-fullscreen windows when the desktop uses fractional scaling and the window is flagged as DPI-aware to provide a backbuffer mapped as close to 1:1 output as possible. In the cases of odd window sizes the backbuffer may be a pixel off of scaling perfectly into the window size due to its scaled size being rounded off, but a minute amount of scaling during output is likely preferable to the large amounts of overdraw needed with integer scaled buffers.
|
|
fa4c5198
|
2022-03-28T21:32:30
|
|
video: wayland: Expose more resolutions for mode emulation
Expose as many emulated display modes as possible. They will currently display stretched to the display's native desktop aspect, but if an application requires a hardcoded resolution, it will work at minimum.
Aside from the change in the emulated display mode list, the Wayland event handling code had to be updated to support separate scaling for the x and y axes, as square pixels are no longer guaranteed.
|
|
d875416a
|
2022-03-28T15:32:30
|
|
wayland: Minor fix for old compilers
|
|
4d76c9cb
|
2022-03-25T20:35:07
|
|
video: wayland: Use wp-viewporter for fullscreen with non-native resolutions
Wayland doesn't support mode switching, however Wayland compositors can support the wp_viewporter protocol, which allows for the mapping of arbitrarily sized buffer regions to output surfaces. Use this functionality, when available, for fullscreen output when using non-native display modes and/or when dealing with scaled desktops, which can incur significant overdraw without this extension.
This also allows for the exposure of arbitrarily sized, emulated display modes, which can be useful for legacy compatability.
|
|
aec86ba8
|
2022-03-26T15:31:33
|
|
emscriptenaudio: proxy calls to main thread
|
|
96be9cdd
|
2022-03-27T21:48:09
|
|
Vita: add hint to select which touchpad generates mouse events
|
|
1db47d46
|
2022-03-28T15:39:13
|
|
Fix potential memory leak in QueueCmdFillRects
|
|
95ed8313
|
2022-03-25T15:22:10
|
|
Vita: Use preallocated memory pool for textures
|
|
7bc498d3
|
2022-03-27T09:12:12
|
|
direct3d: Implement missing blend operations.
This is only for Direct3D 9; Direct3D 11 already had this implemented.
Fixes #5375.
|
|
713a6754
|
2022-03-26T22:26:15
|
|
wayland: Relax the check for mismatching output scales
|
|
5655be15
|
2022-03-26T19:57:39
|
|
wayland: Avoid overwriting xdg_output position with wl_output position
|
|
40417b18
|
2022-03-26T19:55:04
|
|
wayland: Work around a GNOME xdg_output scaling issue
|
|
7a1c45bd
|
2022-03-25T12:51:38
|
|
wayland: Optimize keyboard_handle_modifiers.
1. Mod index values are (mostly) constant, so can be done with xkb_state_new
2. Mods can change without the group changing, avoid remap events if possible
Lastly, as a bonus, I added braces to the locale check, because I was nearby.
|
|
69d0b6e3
|
2022-03-25T15:18:39
|
|
Vita: Fix NULL-pointer dereference
|
|
bf38fd46
|
2022-03-25T11:52:50
|
|
YUV: fix invalid read on last line when converting from SDL_PIXELFORMAT_YUY2 (see bug #4841)
|
|
2891f082
|
2022-03-25T02:49:49
|
|
wayland: Use xkb_keymap_mod to set mod state
|
|
6d9ca926
|
2022-03-25T01:36:39
|
|
wayland: Enforce text capitalization manually, for remapped keymods
|
|
a75c6150
|
2022-03-25T01:33:40
|
|
wayland: Add an xkb_keysym_t->SDL_Keycode mapping for backspace
|
|
ab74b6a3
|
2022-03-24T15:34:29
|
|
wayland: Remove some now-redundant casts
|
|
ee52ad08
|
2022-03-24T15:32:25
|
|
wayland: Minor fixes for old compilers
|
|
b4d28085
|
2022-03-24T18:30:32
|
|
wayland: Don't overwrite error message from SDL_EGL_CreateSurface
SDL_EGL_CreateSurface sets a more specific error message, so overwriting
it would lose information.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
d5bbbd3f
|
2022-03-24T18:23:35
|
|
Avoid depending on libwayland 1.20 unnecessarily
When using shared linking (linking in the normal way with
-lwayland-client) rather than loading Wayland libraries dynamically at
runtime, listing symbols that don't exist in the current version results
in a build failure. We don't actually call wl_proxy_marshal_flags() or
wl_proxy_marshal_array_flags() directly; the reason we need them is
that they're called by the code generated by wayland-scanner >= 1.20.
If we're building against an older Wayland library, then we'll have its
corresponding version of wayland-scanner (mismatched versions are not
supported), so we won't need those two symbols, and can avoid generating
a dependency on them.
Conversely, if we're building against a newer Wayland library, the
generated code will call them unconditionally, so we cannot treat them as
optional and gracefully fall back: that would result in a crash. Instead,
treat them as a mandatory part of the Wayland library, so that if they
are not found at runtime, we can fall back to X11 without crashing.
libwayland 1.18 is in several LTS distributions (Ubuntu 20.04,
Debian 11, RHEL 8) so avoiding a hard dependency on 1.20 is quite
useful.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Resolves: https://github.com/libsdl-org/SDL/issues/5376
|
|
d597a9b4
|
2022-03-24T14:25:00
|
|
x11: Minor cleanups and corrections in X11_ShowMessageBox.
Reference issue #3254.
|
|
6c56193a
|
2022-03-24T18:09:45
|
|
Fixed bug #1650: X11 doesn't set KMOD_NUM and KMOD_CAPS to system state
|
|
2398c43b
|
2022-03-24T14:34:37
|
|
add some Thrustmaster wheels
|
|
4fe7b2cb
|
2022-03-24T11:00:43
|
|
static analysis: Fixed several complaints from codechecker.
There are still some pending Objective-C specific issues.
Reference issue #4600.
|
|
eadc064e
|
2022-03-23T19:14:28
|
|
Vita: add native YUV textures support.
* Fail if texture init fails.
* Refactor and cleanup.
|
|
0af2db6f
|
2022-03-23T19:04:29
|
|
Vita: support audio format fallback
|
|
0dae35bf
|
2022-03-19T15:58:47
|
|
video: wayland: Use xdg-output for retrieving the desktop dimensions
Using wl-output to get the desktop display dimensions and dividing by the integer scale factor will not return the correct result when using a desktop with fractional scaling (e.g. a 3840x2160 display at 150% will incorrectly report the scaled desktop area as 1920x1080 instead of 2560x1440). Use the xdg-output protocol, if available, to retrieve the correct desktop dimensions and offset.
Versions 1 through 3 of the protocol are supported.
|
|
9125b244
|
2022-03-23T13:46:25
|
|
wayland: Basic support for zwp_tablet_*v2 protocol
|
|
13337e17
|
2022-03-23T13:27:01
|
|
wayland: The rest of the wayland-client 1.18 requirement... Git, please
|
|
c23a7ad3
|
2022-03-23T17:07:56
|
|
Add SDL_RenderGetWindow() API to get the window associated with a renderer (#5440)
Add SDL_RenderGetWindow() API to get the window associated with a renderer
|
|
f5a98044
|
2022-03-23T10:13:56
|
|
Android: add SetWindowResizable() implementation
- which also enable/disable the orientation lock status.
This is only provided when the window is not SDL_WINDOW_FULLSCREEN (see SDL_video.c).
Final orientation also depends on SDL_HINT_ORIENTATIONS.
|
|
006aafab
|
2022-03-22T20:23:09
|
|
Fixed freeing a constant string (thanks @gnrlwart)
|
|
8df045cc
|
2022-03-22T15:53:40
|
|
stdlib: just cast iconv()'s 2nd arg to void *.
This makes the compiler happy (enough) regardless of whether the C runtime
headers think this argument should be const or not.
Fixes #4966.
|
|
4b8d69a4
|
2022-03-22T17:09:44
|
|
Avoid trying to use texture framebuffers on emscripten
|
|
25203222
|
2022-02-05T11:01:25
|
|
optimize the SDL_str(case)cmp functions
|
|
aec58d82
|
2022-02-05T10:56:43
|
|
make SDL_strcasecmp standard compliant
|
|
b59ca92e
|
2022-02-05T10:55:09
|
|
use != '\0' comparison instead of SDL_strlen in the functions of SDL_getenv
|
|
b944dc8f
|
2022-03-22T15:05:05
|
|
Also fix Android crash when SDL_HIDAPI_DISABLED set to 1
The Java code needs the native functions to be implemented, even if
they're not surfaced via the C API, therefore, a stub version of
functions were made only to the purpose of "fill the gaps" when
SDL_HIDAPI_DISABLED set to 1.
|
|
2302b2d5
|
2022-03-22T16:33:45
|
|
Add mapping for Logitech Precision Gamepad
|
|
83df4a35
|
2022-03-22T15:25:01
|
|
SDL_render.c: remove unsused case, since renderer target has been forced to NULL previously (see bug #4213)
|
|
f782abe5
|
2022-03-22T09:52:52
|
|
hints: Added SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE.
Fixes #2349.
|
|
34fd83ca
|
2022-03-22T06:50:10
|
|
Don't try to hide foreign windows when destroying the SDL window representation
Fixes https://github.com/libsdl-org/SDL/issues/5432
|
|
74680f5c
|
2022-03-21T18:56:56
|
|
regenerated SDL_blit_auto.c.
|
|
dd6c46cb
|
2022-03-21T18:56:56
|
|
blit-auto optimizations
|
|
9dc201d4
|
2022-03-21T10:41:14
|
|
Fixed bug #2962 - when SDL_RenderReadPixels format = 0, used format of the target texture
include/SDL_render.h, format:
"0 to use the format of the rendering target "
|
|
24ffcbd9
|
2022-03-20T17:23:34
|
|
audio: Set error message on dsp init failure.
if SDL_EnumUnixAudioDevices() fails to find any devices,
set an error message on the exit path. Without this,
SDL_Init() could fail without any message available
in SDL_GetError().
|
|
8f964576
|
2022-03-19T11:01:55
|
|
Fixed parameter operation ordering for ease of reading
|
|
0517b61e
|
2022-03-19T11:00:00
|
|
Relative mouse mode is tied to the window with keyboard focus
This isn't obvious, but makes sense when thinking about how games actually use it. This is also in line with how Windows mouse relative mode is implemented.
Fixes https://github.com/libsdl-org/SDL/issues/5340
|
|
b559a4ac
|
2022-03-19T10:39:22
|
|
Fixed Android crash when SDL_HIDAPI_DISABLED set to 1
The Java code needs the native functions to be implemented, even if they're not surfaced via the C API.
Fixes https://github.com/libsdl-org/SDL/issues/5326
|
|
a485ffc3
|
2022-03-19T09:50:22
|
|
Fix "SDL_FALSE is not defined" runtime error for emscripten.
|
|
d81fee76
|
2022-03-19T10:27:31
|
|
SDL_Rect: Added floating point versions of all the rectangle APIs.
Fixes #5110.
|
|
4d9bef60
|
2022-03-19T09:44:09
|
|
SDL_Rect: minor code cleanups.
|
|
c573ebe1
|
2022-03-19T09:29:01
|
|
SDL_UnionRect: If both rects are empty, zero out the result struct.
|
|
fbbd0270
|
2022-03-18T23:10:19
|
|
Fix "SDL_TRUE is not defined" runtime error for emscripten.
|
|
6c962177
|
2022-03-18T10:07:59
|
|
Added the hint SDL_HINT_MOUSE_RELATIVE_MODE_CENTER, controlling whether the mouse should be constrained to the center of the window or the whole window in relative mode.
For further info about the pros and cons, check out the discussion in https://github.com/libsdl-org/SDL/issues/5271
|
|
1868c5b5
|
2022-03-17T18:25:50
|
|
Start rumbling once a raw input controller has been correlated
Fixes https://github.com/libsdl-org/SDL/issues/5351
|
|
3167ba34
|
2022-03-17T17:58:35
|
|
Fixed freeing the Windows blank cursor
|
|
0387bf82
|
2022-03-17T17:55:28
|
|
Fixed memory leak in WIN_CreateBlankCursor()
|
|
5ff42438
|
2022-03-17T17:39:46
|
|
Added a hint to capture the mouse when mouse buttons are pressed, defaulting on
Fixes https://github.com/libsdl-org/SDL/issues/5301
|
|
09b8152f
|
2022-03-17T17:19:21
|
|
Use SDL_Log instead of printf
|
|
b22ce2b5
|
2022-03-17T17:10:40
|
|
Workaround for bug in Microsoft WGI support
Fixes https://github.com/libsdl-org/SDL/issues/5270
|
|
d4062785
|
2022-03-17T17:01:36
|
|
Try not forcing activation when grabbing the mouse in fullscreen windows
|
|
4e784fce
|
2022-03-17T16:57:33
|
|
When updating grab state, only activate windows that are grabbed, fullscreen, and shown.
Fixes https://github.com/libsdl-org/SDL/issues/5371
|
|
e5f45455
|
2022-03-17T14:44:34
|
|
Added a hint to mark a foreign window as usable with OpenGL
Fixes https://github.com/libsdl-org/SDL/issues/2942
|
|
4e49b78a
|
2022-03-17T14:44:17
|
|
Fixed compile warning and comment typo
|
|
0bf8ccfb
|
2022-02-08T22:15:11
|
|
video: Add a hint to allow Vulkan surfaces on foreign windows
|
|
ecaa22cb
|
2022-03-17T14:22:51
|
|
Don't warn if anyone peeps for events after quitting the event subsystem
Fixes https://github.com/libsdl-org/SDL/issues/5013
|
|
33185907
|
2022-03-09T17:02:32
|
|
Fix relative mouse input for Unvanquished (unvanquished.net)
Here's an IRC dump that hopefully explains the issue this fixes:
> I'm debugging something odd where, for a libre game,
unvanquished.net (a FPS), relative mouse input in fullscreen is
buggy
> it's like, working mostly ok, but it has a weird
performance/cleanup bug
> after some time in relative mouse input mode, some time as low
as 15s, usually more, the SDL sends A LOT of relative mouse
input per frame
> almost all of which have xrel==0 && yrel==0
> by A LOT, I mean that after ~1min, it's usually in the
thousands per frame
> each frame, a while ( SDL_PollEvent( &e)) loop reads the
inputs, but it seems SDL is not clearing the list.
> one way to clear the list is to open the in-game console or
menu, which switches the input mode to absolute, then close it
which gets a working relative input mode (for some time at least)
> I've shown the issue to be present with SDL2.0.20 but not with
2.0.14 on my system
> some other players on Arch Linux (SDL2.0.20) report a possibly
related issue, where some keys seem to be pressed at random
> I've did some bisection on SDL master, and I've found that
there are actually two commits involved, one breaking it
totally (no input at all), and one fixing it partially (with
the problem described above)
First related commit that breaks it totally:
commit 82793ac279d19b5bde8fc2bd62877b05ba5a76e0
Author: Sam Lantinga <slouken@libsdl.org>
Date: Thu Oct 14 14:26:21 2021 -0700
Fixed mouse warping while in relative mode
We should get a mouse event with an absolute position and no relative motion and shouldn't change the OS cursor position at all
Second related commit, that halfway fixes it:
commit 31f8c3ef4409a93fafa894b78c2ce176bd0c3cf3
Author: Sam Lantinga <slouken@libsdl.org>
Date: Thu Jan 6 11:27:44 2022 -0800
Fixed event pump starvation if the application frequently pushes its own events
Reverting the first commit did fix the issue for me, but would
probably reintroduce the bug it was fixing(?). This patch should
fix it for everyone hopefully.
https://github.com/DaemonEngine/Daemon/issues/600 is the upstream
bug, and contains some early investigation.
|
|
829e15a4
|
2022-02-05T14:38:39
|
|
Ignore unknown WM_SIZE types.
According to MSDN, we can also get SIZE_MAXHIDE and SIZE_MAXSHOW,
based on state changes to other windows. It's not clear under
what circumstances this will happen (I saw some docs indicating
it may require multiple application windows), but it doesn't seem
right to treat them as RESTORED.
|
|
a164c9d2
|
2022-01-04T10:43:34
|
|
SDL_cocoawindow.m: update fullscreen toggle when SDL_SetWindowResizable called
|
|
cc152103
|
2022-03-17T11:37:08
|
|
Fixed warnings when building with cygwin
Fixes https://github.com/libsdl-org/SDL/issues/5025
|
|
e8c3ff56
|
2022-03-17T10:01:13
|
|
Removed problematic call to ISensor_SetEventSink()
Fixes https://github.com/libsdl-org/SDL/issues/5288
|
|
bcb0f1de
|
2022-03-17T08:52:31
|
|
Fixed build when events are disabled
Fixes https://github.com/libsdl-org/SDL/issues/5413
|
|
01bfde45
|
2022-03-17T12:22:18
|
|
simplify SetDSerror
- no need to keep the error in a static variable
- always print the error code
- reduce the required stack-size
- reduce the number of snprintf calls (and code size)
|
|
dfbe1f72
|
2022-03-17T03:50:02
|
|
SDL_GetBasePath() fixes for OS/2
|
|
b2db570c
|
2022-03-16T18:09:40
|
|
SDL_triangle_blit_slow: sync code with SDL_blit_slow to handle ARGB2101010
|
|
93e7caab
|
2022-03-16T18:08:20
|
|
SDL_blit_slow: remove one nested 'if()' because of ARGB2101010 handling
|
|
56568ffb
|
2022-03-16T18:04:40
|
|
Remove 'reserved identifier' warning
|
|
2c6a9c51
|
2022-03-16T09:36:43
|
|
minor optimization (SDL_audiocvt.c)
|
|
5905696e
|
2022-03-15T23:10:04
|
|
SDL_audiocvt.c: minor cleanup.
|
|
d1e4367f
|
2022-03-15T21:41:02
|
|
SDL_windowskeyboard.c: fix build with SDL_DISABLE_WINDOWS_IME defined.
Fixes https://github.com/libsdl-org/SDL/issues/5408
|
|
f3e86b9f
|
2022-03-15T17:46:12
|
|
Fixed bug #2199: make SDL_blit_slow handles SDL_PIXELFORMAT_ARGB2101010, storing as RGBA
|
|
3bebdacc
|
2022-03-15T10:37:17
|
|
METAL: clip rect w/h must be <= render pass
|
|
7c421fec
|
2022-03-14T05:55:41
|
|
SDL_audiocvt.c: Don't byteswap 8-bit streams
Otherwise, this results an assert on big endian machines when attenpting to use SDL_LoadWAV_RW function to load 8-bit WAV files.
|
|
363c3678
|
2022-03-10T17:12:33
|
|
Fixed: Incorrect assumption that mouse button is released when window is allocated
|
|
7495b981
|
2022-03-11T15:14:51
|
|
Make SDL_VIDEO_OPENGL_EGL optional on Android
|
|
ee6bfcdd
|
2022-03-13T20:56:42
|
|
SDL_blit_N.c: removed duplicated const (fixes bug #5401)
|
|
072db7b0
|
2022-03-12T01:56:40
|
|
SDL_windowskeyboard.c (IME_IsTextInputShown): remove unused local vars.
|
|
d14a1263
|
2022-03-11T17:45:17
|
|
IME Composition Truncation + SDL_IsTextInputShown + SDL_ClearComposition (#5398)
* Fixes for IME Composition Truncation + Addition of SDL_ClearComposition, SDL_IsTextInputShown
* Fixed: Documentation and code style issues raised during code review.
|
|
9de97e19
|
2020-12-01T12:46:59
|
|
emscripten: Don't prevent default on filtered key events
|
|
afb0606f
|
2022-03-10T18:50:10
|
|
minor os/2 clean-ups.
|
|
677dc101
|
2022-03-09T19:43:29
|
|
rawinput: Fix double detection of gamepads on some 3rd party X360 wireless receivers
The name that the Raw Input joystick driver pulls from the HID stack comes
from USB string descriptors contained on the device. For official wireless
receivers, this always contains "Xbox 360 Wireless Receiver for Windows"
which matches the friendly name that WGI provides.
3rd party Xbox 360 wireless receivers may have different strings in their
USB string descriptors (one uses "XBOX 360 For Windows" instead). This
fails to match WGI's name and causes Raw Input and WGI to both report the
same gamepad.
Since wireless Xbox 360 controllers seem to have a consistent VID/PID
regardless of the adapter enumerating them, we can also match on that to
catch these.
The duplicate case reported to me was:
Controller (XBOX 360 For Windows) - 030000005e040000a102000000007200
Xbox 360 Wireless Receiver for Windows - 030000005e0400000000000000007701
|
|
bf698689
|
2022-03-10T01:55:04
|
|
reduced a few ifdefs, fixed an unused warning if built w/o SDL_HAVE_YUV.
|
|
01d38e7a
|
2022-03-09T14:03:52
|
|
Make Win32 fullscreen and borderless windows minimizable
|
|
09b652b7
|
2022-03-09T13:54:23
|
|
Make sure the string properties are actually strings (thanks Nat!)
|
|
c6eef542
|
2022-03-09T13:48:31
|
|
Removed dead code
|