|
d9bda89f
|
2022-07-25T10:03:36
|
|
Fix updating SDL_update_joysticks and SDL_update_sensors in response to hint changes
Hint callbacks are called before the actual value in the hint is changed, so the functions SDL_AutoUpdateJoysticksChanged and SDL_AutoUpdateSensorsChanged were not actually properly updating their respective variables in repsonse to their auto update hint changing.
Instead, we pull the new hint value out of the value passed into the callback and use that to update the variables. Assume true on a null value as that was the previous behavior and it matches with the default values of SDL_update_joysticks/SDL_update_sensors.
|
|
0ec5bb4e
|
2022-07-25T10:37:23
|
|
Add missing controller events to `SDL_GameControllerEventState()`
Events to handle controller touchpads and sensors were added to the library but not added in `SDL_GameControllerEventState()`. This change adds the missing events.
|
|
f86ec47f
|
2022-07-25T15:08:33
|
|
ci: don't use ANDROID_NDK_HOME environment variable in Android workflow
|
|
4d665017
|
2022-07-24T18:04:26
|
|
Fixed building with 10.9 SDK
Fixes https://github.com/libsdl-org/SDL/issues/5954
|
|
3ab1e303
|
2022-07-24T15:29:42
|
|
joystick: Refactor and fix a few bugs in Shield HIDAPI driver
- CMD_CHARGE_STATE was checking the seqnum instead of the payload
- Off-by-one error in size validation for command payload
- Unused payload space was left uninitialized in output report
|
|
b8a55407
|
2022-07-24T15:19:02
|
|
testgamecontroller: Add battery reporting
|
|
4d8bb89c
|
2022-07-24T11:50:14
|
|
Fixed mouse clip rect bounds on Windows
Fixes https://github.com/libsdl-org/SDL/issues/5946
|
|
6bcde52d
|
2022-07-24T20:19:16
|
|
Further adjust implementation of `Cocoa_GetWindowDisplayIndex`
As discussed in PR review, there may be an off-chance that the index
returned doesn't match up with SDL's display indexing.
This change ensures that the indices match and adds a safety check for
off-screen windows.
|
|
ce8aae14
|
2022-07-13T15:01:55
|
|
Fix `Cocoa_GetWindowDisplayIndex` failing and causing a catastrophic crash
With the introduction of this function, it is possible that for certain
monitor and window configurations, creating an SDL window will cause a
native crash.
```
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000050
Exception Codes: 0x0000000000000001, 0x0000000000000050
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process: exc handler [56627]
VM Region Info: 0x50 is not in any region. Bytes before following region: 140737486737328
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
UNUSED SPACE AT START
--->
VM_ALLOCATE 7fffffe75000-7fffffe76000 [ 4K] r-x/r-x SM=ALI
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libSDL2.dylib 0x10247f665 SDL_UpdateFullscreenMode + 357
1 libSDL2.dylib 0x10247ec70 SDL_CreateWindow_REAL + 1504
2 ??? 0x111262de8 ???
3 ??? 0x110c39fff ???
4 libcoreclr.dylib 0x101fdf2a9 CallDescrWorkerInternal + 124
```
Tracking thread from our end: https://github.com/ppy/osu-framework/issues/5190
Regressed with: https://github.com/libsdl-org/SDL/pull/5573
In testing, the window would not find a valid screen if created
"hanging" off a primary display with a secondary display below it. In
checking why this was the case, the `display_centre` was being
calculated with a negative y origin, causing a final negative value
falling outside all display bounds:
```
SDL error log [debug]: display_centre.y = -1296 + 1296 / 2
SDL error log [debug]: Display rect 0: 0 0 2560 1440
SDL error log [debug]: Display rect 1: 2560 -625 1080 2560
SDL error log [debug]: Display rect 2: 0 1440 1728 1296
```
The method that was being used to find the current window using the frame
origin/size seems unreliable, so I have opted to replace it with with a
tried method (https://stackoverflow.com/a/40891902).
Initial testing shows that this works with non-standard DPI screens, but
further testing would be appreciated (cc @sezero / @misl6 from the
original PR thread).
|
|
041666e6
|
2022-07-24T05:45:59
|
|
video: wayland: Don't switch to libdecor path for borderless windows
We actually request CSD mode with xdg-decoration for borderless
windows, so we get what we wanted there and there's no point in going
into fallback paths.
|
|
405d1f65
|
2022-07-24T10:16:20
|
|
video: wayland: Roundtrip after falling back to libdecor in xdg-decoration handler
Otherwise libdecor doesn't have a chance to acquire xdg-toplevel after
libdecor_new before we attempt to use it in Wayland_ShowWindow.
Fixes #5952
|
|
fc2497b1
|
2022-07-23T18:05:35
|
|
Revert "cmake: don't add -mwindows to link flags in sdl2.pc"
This reverts commit d211aaddc1edaad0e7d461d6837f3f1d2f9f4b41.
|
|
2fdedd17
|
2022-07-23T17:29:08
|
|
Revert 6fa7d62 and 856c99e5
|
|
856c99e5
|
2022-07-23T15:51:21
|
|
android: target android-19 by default when building with build-scripts/androidbuildlibs.sh
|
|
832754b9
|
2022-07-23T15:43:06
|
|
ci: install SDL when built as a subproject
|
|
6fa7d624
|
2022-07-23T15:31:35
|
|
ci: use android-ndk r25 (LTS) on CI
|
|
d211aadd
|
2022-07-23T15:29:39
|
|
cmake: don't add -mwindows to link flags in sdl2.pc
|
|
d63a699e
|
2022-07-23T15:29:13
|
|
cmake: by default, disable install target when building SDL as a subproject
|
|
8c51cae7
|
2022-07-23T14:56:04
|
|
audio/aaudio, audio/openslES: fix -Wdeclaration-after-statement errors
Fixes https://github.com/libsdl-org/SDL/issues/5950
|
|
65647b34
|
2022-07-22T22:07:52
|
|
SDL_Render: use high precision texcoords in ES2 shaders, when possible
Fixes #5884
|
|
f9beef76
|
2022-07-22T18:58:29
|
|
Added support for the Nintendo Switch Joy-Con Controllers on iOS and tvOS 16
|
|
aad7ef6e
|
2022-07-22T10:58:34
|
|
Added support for the Nintendo Switch Pro Controller on iOS and tvOS 16
|
|
59963473
|
2022-07-22T10:58:32
|
|
Enable bitcode by default for iOS and tvOS builds
|
|
20f51b1f
|
2022-07-22T10:58:29
|
|
Fixed crash if debug text wasn't drawn during a session
|
|
8cd515c3
|
2022-07-22T20:37:28
|
|
better wording.
|
|
41b89aec
|
2022-07-22T12:23:44
|
|
video: Improve the SDL_WINDOW_ALLOW_HIGHDPI flag documentation
Extend the SDL_WINDOW_ALLOW_HIGHDPI flag documentation to stress the importance of querying the window drawable size after every window event to avoid rendering issues in a mixed-DPI environment.
|
|
0a164163
|
2022-07-21T20:30:33
|
|
VIta: enable arm neon/simd optimisations
|
|
e5698d13
|
2022-07-21T18:38:12
|
|
cmake: allow cmake re-configuration after installation of x11 library
check_include_path is not meant to be used to check for presence of a
library. This is because a BOOL is cached.
Avoid this caching by using find_file.
`find_file` caches a patch instead of a bool and will always run when
the result failed.
|
|
192ae1e3
|
2022-07-21T17:11:30
|
|
WhatsNew.txt: added line for the calling convention fixes.
|
|
9ad3711a
|
2022-07-21T15:19:19
|
|
cmake: only enable x11_xss/x11_xrandr/x11_xfixes when its lib is available
|
|
ac9e8691
|
2022-07-21T14:49:35
|
|
cmake: only build testnative when X11 is available
|
|
aa7a6c0e
|
2022-07-21T14:38:57
|
|
cmake: only enable x11_xcursor and x11_xinput when its library is available
|
|
8f33de84
|
2022-07-21T14:08:19
|
|
cmake: set CMP0054 policy to NEW
|
|
a33b5449
|
2022-07-20T19:11:42
|
|
WhatsNew.txt: Added audio channel support changes
|
|
f3008e4a
|
2022-07-20T19:08:31
|
|
audio: 3- and 5-channel formats are now supported
|
|
45c3b59d
|
2022-07-20T17:23:42
|
|
audio: Turn off DEBUG_CONFIG logging again.
|
|
bec721f0
|
2022-07-20T17:22:41
|
|
audio: Fixed dst pointer on channel conversions that grow in-place.
|
|
9f56c7cf
|
2022-07-20T16:39:19
|
|
audio: Remove 5.1->X SIMD converters, add SSE mono->stereo.
The 5.1 versions didn't use the new algorithm, and making that new
algorithm work took so many permutes that it was significantly slower
than just using the scalar versions.
However, mono-to-stereo is an extremely common conversion, and it's
trivial to accelerate it with plain SSE, so that was added!
|
|
b83ae9f2
|
2022-07-19T22:40:51
|
|
audio: Replaced some debug-printfs with debug-SDL_Logs. :)
|
|
f73d07da
|
2022-07-19T22:13:31
|
|
audio: Headers said 5 channel is quad+center, but it's 4.1.
|
|
49ec8db5
|
2022-07-19T22:04:49
|
|
audio: Generate the channel converter code from a program.
|
|
f06cc3e9
|
2022-07-19T22:03:56
|
|
audio: "SL" means "surround left" not "side left", etc.
|
|
5a0c8198
|
2022-07-19T22:03:02
|
|
audio: Add channel convert filter _after_ choosing an SIMD version.
|
|
fe160840
|
2022-07-19T16:04:48
|
|
audio: LOG_DEBUG_CONVERT should use SDL_Log, not fprintf(stderr).
|
|
25727790
|
2022-07-19T02:16:08
|
|
audio: first attempt at rewriting the channel converters.
This is not ready for production use!
|
|
be3a945a
|
2022-07-20T11:05:55
|
|
Added support for the 8BitDo Ultimate Wired Controller for Xbox
|
|
b700a326
|
2022-07-20T07:01:10
|
|
audio, pipewire: fix signatures of pw_get_library_version and pw_init.
Reference issue: https://github.com/libsdl-org/SDL/issues/5938
|
|
6e210d37
|
2022-07-20T07:01:10
|
|
audio, pipewire: pipewire_version_xx globals out of dynamic loading
Fixes build with --disable-pipewire-shared
Reference issue: https://github.com/libsdl-org/SDL/issues/5938
|
|
78bad667
|
2022-07-16T22:12:08
|
|
video: wayland: Resize the window before sending the SDL_RESIZE event
Currently, the SDL_WINDOWEVENT_RESIZED event is sent before the actual
window is resized (and various internal state, such as the desired
GL/Vulkan backbuffer size, are updated). This makes sense, as SDL will
discard a no-op resize, which would be the case if we had resized before
sending the event (indeed, there are existing hacks to prevent this).
However, this means that SDL_{GL,Vulkan}_GetDrawableSize() will still
use the old size in the SDL_WINDOWEVENT_RESIZED handler. In the case of
SDL_Renderer, this means the drawable size it uses will be wrong, and
the viewport will get "updated" to the old value.
This then results in bug #5899.
|
|
53e68516
|
2022-07-18T07:31:23
|
|
Fixed declaration-after-statement warning
|
|
6ad7fdec
|
2022-07-18T07:26:29
|
|
Fixed infinite loop for values bigger than 0x40000000
Fixes https://github.com/libsdl-org/SDL/issues/5930
|
|
98681814
|
2022-07-18T07:20:58
|
|
Fixed missing imports in SDLActivity (thanks @guusw!)
|
|
2be93014
|
2022-07-18T07:18:56
|
|
Fixed comment (thanks @pionere!)
|
|
cef1514b
|
2022-07-17T09:07:04
|
|
Fixed some Xcode warnings
|
|
e3916993
|
2022-07-17T08:47:06
|
|
Added SDL_utils.c to the Xcode project
|
|
b299cb3d
|
2022-07-17T08:31:16
|
|
Added a utility function to calculate the next power of 2 for a value
|
|
90b86b13
|
2022-07-17T10:35:09
|
|
audio: Handle non-power-of-two spec.samples when unsupported
Fixes #3685
|
|
d21a18c6
|
2022-07-17T01:06:16
|
|
WhatsNew.txt: Add line for Shield HIDAPI driver
|
|
cdf9010a
|
2022-07-16T12:39:30
|
|
Added new audio features to WhatsNew.txt
|
|
a09d62e4
|
2022-07-15T23:45:56
|
|
directsound: Remove redundant SubFormat copy
|
|
c5e408ae
|
2022-07-15T11:31:59
|
|
directsound: For channel counts > 2, generate a dwChannelMask for CreateSoundBuffer
|
|
fff34f63
|
2022-07-15T09:46:53
|
|
windows: SDL_IMMDevice needed more deinit code from the Win32 path.
Fixes #5919
|
|
37aecda2
|
2022-07-14T11:38:51
|
|
pipewire: Use PW_KEY_TARGET_OBJECT to specify stream connection nodes
Pipewire 0.3.44 introduced PW_KEY_TARGET_OBJECT, which is to be used to specify target connection nodes for streams. This parameter takes either a node path (PW_KEY_NODE_NAME) or serial number (PW_KEY_OBJECT_SERIAL) to specify a target node. The former is used in this case since the path is already being retrieved and stored for other purposes.
The target_id parameter in pw_stream_connect() is now deprecated and should always be PW_ID_ANY when PW_KEY_TARGET_OBJECT is used.
|
|
2201d802
|
2022-07-14T02:40:00
|
|
avoid -Werror=declaration-after-statement after last commit.
|
|
24b3efd0
|
2022-07-12T04:33:56
|
|
(OpenBSD) Exe Path: Use PWD instead of CWD and use CWD as fallback
|
|
883409ea
|
2022-07-13T11:26:42
|
|
Added support for the misc1 button on the Nintendo Switch Pro Controller
when using hid_nintendo kernel driver
|
|
9a4f200d
|
2022-06-04T14:57:49
|
|
gamecontrollerdb: Linux, add mappings for hid-nintendo driver and more
Taken from https://github.com/gabomdq/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt
|
|
7e2a9969
|
2022-07-13T08:57:40
|
|
Added a virtual joystick automated test
Useful to verify https://github.com/libsdl-org/SDL/commit/4fa2653394150140c4d69cf66a78cd83e1175f99 on a big-endian system
|
|
06c7d226
|
2022-07-12T18:53:53
|
|
Added mappings for the HORI Fighting Stick mini 4 on Linux and macOS
|
|
27d8cbf0
|
2022-07-12T18:17:32
|
|
Added PowerA and Qanba vendors for Android USB device support
|
|
e24b971a
|
2022-07-12T17:53:03
|
|
Added support for the NVIDIA Shield controller guide button
|
|
c92ddddd
|
2022-07-12T13:00:43
|
|
Sort libraries by version and pick the shortest symlink (thanks @jpalus!)
Fixes https://github.com/libsdl-org/SDL_image/issues/289
|
|
b321eae5
|
2022-07-11T19:43:25
|
|
joystick: Fix spurious battery empty events when opening a Shield controller
|
|
a0d8848b
|
2022-07-11T19:37:25
|
|
joystick: Plumb SDL_JoystickSendEffect() for the Shield HIDAPI driver
The effect data format consists of one command byte followed by zero or more
payload bytes.
|
|
deca77c1
|
2022-07-11T15:55:14
|
|
Regenerated configure
|
|
d5b8cf72
|
2022-07-11T15:54:15
|
|
Revert "autotools: relax soname pattern for dynamic loading"
This reverts commit 85536328272d754277febd010e82d89b04e68b6d.
An issue with choosing the shortest one, is that it will prefer development libraries: libfoo.so is shorter then libfoo.so.0.6.
|
|
36d8460c
|
2022-07-11T16:59:23
|
|
pipewire: Dynamically allocate the buffer for node strings
Calculate and allocate the buffer for the IO node name and path strings dynamically instead of using arbitrary sized static buffers.
|
|
996cea31
|
2022-07-11T15:15:48
|
|
pipewire: Update default audio devices during runtime
Make the default device metadata node persist for the lifetime of the hotplug loop so the default source/sink devices will be updated if they change during runtime.
|
|
60da11f0
|
2022-07-11T14:31:20
|
|
pipewire: Remove deprecated configuration key
With Pipewire now requiring a minimum version 0.3.24, the PW_KEY_CONTEXT_PROFILE_MODULES value is no longer required for legacy compatability and can be safely removed.
|
|
4fa26533
|
2022-07-12T00:55:00
|
|
SDL_GetJoystickGUIDInfo: byte-swap vendor, product and version values.
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
|
|
b8f30c02
|
2022-07-12T00:55:00
|
|
SDL_endian.h: check for __powerpc__ and __PPC__ in big endian decision.
Also remove the _M_PPC check from there.
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
|
|
5d09b631
|
2022-07-11T17:35:11
|
|
Sync SDL wiki -> header
|
|
ecfbdce6
|
2022-07-11T13:09:48
|
|
pipewire: Require version 0.3.24 or newer at runtime
|
|
2f0816ad
|
2022-07-11T13:08:30
|
|
Add SDL_GetDefaultAudioInfo.
This API is supported on pipewire, pulseaudio, wasapi, and directsound.
Co-authored-by: Frank Praznik <frank.praznik@gmail.com>
|
|
15d06180
|
2022-07-11T01:06:57
|
|
SDL_IMMDevice: Fix a WASAPI-specific leak, clean up Add()
|
|
ae105ae1
|
2022-07-10T12:59:33
|
|
windows: Move IMMDevice work to common file, implement DirectSound enumeration support
|
|
2373da5d
|
2022-07-11T09:49:00
|
|
Exposed SDL_ResetKeyboard() as a public function
This will be used by Source 2 titles to reset keyboard state before showing assertion dialogs
|
|
739155c4
|
2022-07-11T08:55:49
|
|
We want to ship the CMake input file, not the generated file
Fixes https://github.com/libsdl-org/SDL/issues/5905
|
|
2c22d720
|
2022-07-11T08:44:49
|
|
Fixed typo in description
|
|
cd2dcf54
|
2022-07-10T21:10:00
|
|
regenerated configure script.
|
|
85536328
|
2022-07-10T18:02:46
|
|
autotools: relax soname pattern for dynamic loading
SDL makes assumption that each dynamically loaded library must have
SONAME matching pattern <libname>.so.<digit>+ hence it discards any file
that has two (or more) digits after ".so". in practice however SONAME
might be in the form of ie <libname>.so.<major>.<minor>.
as a solution keep requirement for dynamically loaded files to be named
<libname>.so.* but consider all the possibilities and prefer the shortest
one.
|
|
6e712d24
|
2022-07-09T22:55:36
|
|
joystick: Add HIDAPI driver for NVIDIA SHIELD 2017 controller
Basic input already works using the OS HID driver, but this enables
force feedback and battery state reporting.
|
|
3242265f
|
2022-07-10T12:22:47
|
|
joystick: Fix endianness issues in Xbox HIDAPI drivers
|
|
2f216485
|
2022-07-08T20:56:40
|
|
SDL_os2video.c: silenced -Wempty-body warning, along with minor tidy-up.
|
|
531647ef
|
2022-07-08T09:45:37
|
|
Regenerated configure with latest autotools release
|
|
4aad594a
|
2022-07-08T16:17:46
|
|
Update SDL_qsa_audio.c
Fix qnx platform compile error, change SDL_Bool to SDL_bool.
|
|
c0eada20
|
2022-07-06T17:00:16
|
|
Fix assumption that DRI_DEVNAME begins at 0 (#5865)
* Fix assumption that DRI_DEVNAME begins at 0
The existing logic of the code was to count every possible entry in
KMSDRM_DRI_PATH. After this a for loop would start trying to open
filename0, filename1, filename2, etc. In recent Linux kernels (say
5.18) with simpledrm, the lowest KMSDRM_DRI_DEVNAME is often
/dev/dri/card1, rather than /dev/dri/card0, causing the code to fail
once /dev/dri/card0 has failed to open. Running:
modprobe foodrm && modprobe bardrm && rmmod foodrm
before you try to run an application with SDL KMSDRM would have also
made this fail.
* Various changes from review
- Removed newline and period from SDL error
- Explicitely compare memcmp to zero (also changed to SDL_memcmp)
- Changed memcpy to strncpy
- Less aggressive line wrapping
* Various changes from review
- strncpy to SDL_strlcpy
- removed size hardcodings for KMSDRM_DRI_PATHSIZE and
KMSDRM_DRI_DEVNAMESIZE
- made all KMSDRM_DRI defines, run-time variables to reduce bugs caused
by these defines being more build-time on Linux and more run-rime on
OpenBSD
- renamed openbsd69orgreater variable to moderndri
- altered comment from "if on OpenBSD" to add difference in 6.9
* Various changes from review
- Use max size of destination, rather than max size of source
- Less hardcodings
|
|
adf3ce7c
|
2022-07-05T21:42:24
|
|
Don't drop mouse focus on WM_MOUSELEAVE if the mouse is in relative mode; mouse-level is not meaningful for that case.
Do drop mouse focus when keyboard focus is lost if the mouse is in relative mode.
|
|
0253a450
|
2022-07-05T21:42:20
|
|
Fix format specifiers for WPARAM/LPARAM values, they are UINT_PTR.
|
|
f5cbc440
|
2022-07-05T21:41:34
|
|
Merge commit 'ad0b91302d34336f8af8787fefeeddb553606ec6' into main
|