|
17b43b0f
|
2022-10-08T09:32:09
|
|
Don't try to create a semaphore for the mutex implementation if threads are disabled
Fixes https://github.com/libsdl-org/SDL/issues/6344
|
|
33050fea
|
2022-10-07T11:29:49
|
|
Only open HID devices that might have a HIDAPI driver available
This prevents an OS prompt for every connected device when running on Android
|
|
484d5fd6
|
2022-10-05T13:19:38
|
|
audio open: ensure 2 devices don't get the same id
|
|
fc720321
|
2022-10-06T18:23:07
|
|
Fix rare deadlock when opening a HID controller on Android
Fixes https://github.com/libsdl-org/SDL/issues/6347
|
|
689409fd
|
2022-10-06T17:34:24
|
|
Fixed the start button on the Nimbus+ controller on tvOS
Also updated mappings for Nintendo Switch controllers on tvOS, to reflect the lack of guide/menu button availability
|
|
ea595800
|
2022-10-03T18:31:15
|
|
wayland: Set the damage buffer size when supported
The preferred method for setting the damage region on compositor protocol versions 4 and above is to use wl_surface.damage_buffer. Use this when available and only fall back to wl_surface.damage on older versions.
Bumps the highest supported version of wl_compositor to version 4.
|
|
a8cb7bbe
|
2022-10-01T11:31:26
|
|
wayland: Add dedupe logic to window geometry configuration
Adds deduplication logic to ConfigureWindowGeometry() to avoid setting redundant backbuffer, viewport and surface opaque region dimensions. State is now only set when the window and/or backbuffer dimensions change.
This repurposes the viewport rect to always hold the actual size of the window, which can differ from the SDL size if things are being scaled. The SDL_Rect was removed in favor of two ints, as the x/y members of the struct were never used, so they just wasted space.
Since the internal variables always have the true window size, the width/height getter functions are no longer required and can be removed.
|
|
914a65e0
|
2022-10-06T12:39:36
|
|
wayland: Don't unset min/max values when entering fullscreen via a compositor event
If the compositor is entering fullscreen and hasn't removed any constraints itself, it's already too late at this point. Remove the unnecessary call.
Restoring the limits when exiting fullscreen is still required, though, as they may have been removed when entering fullscreen via an SDL request.
|
|
69cf5fb0
|
2022-10-04T13:09:35
|
|
wayland: Remove surface type helpers
These were remnants of a time before the surface type was explicitly stored, so they can be removed per the TODO note.
|
|
c2b0c41c
|
2022-10-04T12:59:26
|
|
wayland: Set/unset the opaque regions on surfaces when transparency is toggled
Caches the SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY hint at init time and registers a callback, which is fired when the hint is changed during runtime and toggles the opaque region for existing surfaces.
|
|
d2160c29
|
2022-10-05T21:42:26
|
|
iOS: implement SDL_GetWindowSizeInPixels.
|
|
ddc3de60
|
2022-10-05T16:24:05
|
|
Added mapping for PS5 controller over Bluetooth on Android 12
Tested on Pixel 3a
|
|
81afb3e3
|
2022-10-05T16:18:09
|
|
Need to swap endianness when extracting the CRC from game controller mappings
|
|
92c71ae3
|
2022-10-05T21:59:08
|
|
[iOS] respect initial status bar configuration when displaying the launch storyboard
|
|
5b131364
|
2022-08-06T10:48:53
|
|
[UIKit] handle app lifecycle events in a custom object instead of AppDelegate
removes the need to call SDL counterparts manually when custom AppDelegate is used
|
|
e41942e8
|
2022-10-05T13:36:25
|
|
fix compilation error SDL_coreaudio mixing declarations and code
|
|
fdef96e2
|
2022-10-04T12:08:09
|
|
Android: remove "nativeSetComposingText" since it's not used anymore
(and it may fail registering at init if code is cleaned with proguard)
|
|
eac3d6d3
|
2022-10-04T10:46:42
|
|
SDL_video.c: fix variable 'i' may be uninitialized when used here "_this->name = bootstrap[i]->name;"
|
|
ad29875e
|
2022-04-18T17:03:05
|
|
Wayland: Emulate mouse warp using relative mouse mode
Several games (including Source and GoldSrc games, and Bioshock
Infinite) attempt to "fake" relative mouse mode by repeatedly warping
the cursor to the centre of the screen. Since mouse warping is not
supported under Wayland, the viewport ends up "stuck" in a rectangular
area.
Detect this case (mouse warp while the cursor is not visible), and
enable relative mouse mode, which tracks the cursor position
independently, and so can Warp successfully.
This is behind the SDL_HINT_VIDEO_WAYLAND_EMULATE_MOUSE_WARP hint, which
is enabled by default, unless the application enables relative mouse
mode itself using SDL_SetRelativeMouseMode(SDL_TRUE).
Note that there is a behavoural difference, in that relative mouse mode
typically doesn't take mouse accelleration into account, but the
repeated-warping technique does, so mouse movement can seem very slow
with this (unless the game has its own mouse accelleration option, such
as in Portal 2).
|
|
9e3c4b9f
|
2022-10-03T17:50:01
|
|
Use the correct platform defines
|
|
5291e5cb
|
2022-10-03T17:36:17
|
|
Added version checking to SDLActivity.java
Make sure the SDL java and C code match when updating SDL in a game.
Right now we're assuming that we only have to make sure release versions match. We can extend the version string with an interface version if we need more fine grained sanity checking.
Fixes https://github.com/libsdl-org/SDL/issues/1540
|
|
3607f831
|
2022-10-03T11:00:50
|
|
Find out if a controller is wireless using WGI (thanks @DJm00n!)
Confirmed using an Xbox Series X controller over USB and Bluetooth
Fixes https://github.com/libsdl-org/SDL/issues/6322
|
|
321ca109
|
2022-10-03T12:00:38
|
|
opengles2: Texture names are GLuint, not GLenum.
|
|
01c5554f
|
2022-10-03T11:57:10
|
|
opengles2: SDL_GL_BindTexture() should bind all YUV textures.
This matches what the non-GLES OpenGL renderer does.
Fixes #6070.
|
|
f8f562da
|
2022-10-02T22:55:49
|
|
iOS: remove dead pre-iOS 8 codepaths.
SDL hasn't supported those older iOS versions for a little while now.
|
|
bbeacd72
|
2022-10-02T22:57:03
|
|
Fix some credit comments.
|
|
cf331ef3
|
2022-10-02T17:25:36
|
|
Fixed build
|
|
64ea6cef
|
2022-10-02T17:17:31
|
|
SDL_ResetHint() no longer clears the callbacks associated with a hint
Also added SDL_ResetHints() to reset all callbacks, and clarified that SDL_ClearHints() is just used for cleanup at shutdown.
Fixes https://github.com/libsdl-org/SDL/issues/6313
|
|
bd6afc23
|
2022-10-02T10:15:39
|
|
Fixed sensor axes in vertical mode
|
|
b4c25f57
|
2022-10-02T09:51:05
|
|
Remapped the side button and trigger as paddles for the mini-gamepad mode of the Joy-Cons
This is the only case where the mapping differs between right and left Joy-Cons in mini-gamepad mode. The left Joy-Con will have the left paddles and the right Joy-Con will have the right paddles. This facilitates co-op gameplay with individual actions while still using the normal mini-gamepad mode.
The paddles are used for this because conceptually they are more awkward to hit than the normal controls and they are in roughly the correct hand position.
|
|
f58a6506
|
2022-10-02T09:50:27
|
|
Added paddle mapping for combined Joy-Cons
|
|
37dfa262
|
2022-10-02T09:36:50
|
|
Added paddle mapping for combined Joy-Cons
|
|
6c8bf3af
|
2022-10-03T00:19:34
|
|
Add vertical mode for Nintendo Joy-Con (#6303)
* Added support for vertical mode for Joy-Con controllers
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS for switching to this mode
* Added support for SL/SR buttons in combined/vertical mode and L/ZL/R/ZR buttons in mini-gamepad mode
|
|
0672dc8d
|
2022-10-02T08:48:38
|
|
Fixed combined Joy-Cons after https://github.com/libsdl-org/SDL/commit/aa2e2f4843567cfe4e6f2f4ffa3f0b74dd98f1ba (thanks @happyharryh!)
|
|
5e654a4b
|
2022-10-01T16:10:46
|
|
Fixed Mac compile errors when OpenGL is disabled.
|
|
28572702
|
2022-09-30T17:25:57
|
|
Properly backspace over text that was entered when autocorrect updates text with the iPhone on-screen keyboard
|
|
e6640ef2
|
2022-09-30T14:53:07
|
|
coreaudio: Possibly fixed another shutdown race condition.
Reference Issue #6159.
|
|
cfab203f
|
2022-09-29T07:36:14
|
|
emscripten: Remove use of EM_ASM from SDL_timer code.
Instead use the native emscripten timer API.
See https://github.com/emscripten-core/emscripten/issues/17941
|
|
40893821
|
2022-09-29T10:33:07
|
|
coreaudio: Add support for SDL_GetDefaultAudioInfo (#6277)
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com>
Co-authored-by: Ozkan Sezer <sezeroz@gmail.com>
|
|
69bbe4ce
|
2022-09-29T15:50:50
|
|
Fix memory leak in VITA_GXM_CreateRenderer
|
|
e17f0c28
|
2022-09-27T10:59:28
|
|
wayland: Call the Wayland hide/show functions directly when changing decoration modes
Calling SDL_HideWindow() to destroy the window is a NOP if the SDL_WINDOW_SHOWN flag was never set. Bypass it and call the Wayland-specific function directly to ensure that the window is always destroyed before switching from server-side to client-side decorations, even if it hasn't been shown yet.
Likewise, call Wayland_ShowWindow() directly when the window isn't explicitly hidden to ensure that it is always recreated since the SDL_WINDOW_SHOWN flag won't be cleared, which, when set, renders SDL_ShowWindow() a NOP.
|
|
8bcbdc70
|
2022-09-28T17:40:10
|
|
hidapi, libusb: backport read_thread indefinite loop fix from mainstream
Mainstream commit:
https://github.com/libusb/hidapi/commit/5ce9051e2f2e65013485bc4c83897610df82f3c9
|
|
379d4780
|
2022-09-28T10:25:24
|
|
dbus: guard against uninitialized D-Bus
Before calling any D-Bus related methods we should first ensure that
they
were correctly loaded.
In the event where `LoadDBUSLibrary()` was not able to load the D-Bus
library, we should just return early, signalling with SDL_FALSE that we
were unable to inhibit the Screensaver.
Helps: https://github.com/ValveSoftware/steam-for-linux/issues/8815
Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
|
|
57b5c910
|
2022-09-28T12:38:32
|
|
kmsdrm: only negative devindex's are not allowed
ad874536 removed an unnecessary limit as we *can* have a devindex
greater than 99, this error message does not reflect the support for
values greater than 99.
|
|
f6565c32
|
2022-09-28T09:27:45
|
|
coreaudio: Remove redundant variable.
|
|
411582c7
|
2022-09-28T09:22:17
|
|
coreaudio: Don't crash on shutdown in a race condition.
Fixed #6159.
|
|
bb74af1e
|
2022-09-28T00:01:54
|
|
Allow including SDL_uikit_main.c in Apple multi-platform builds
This file just won't do anything on macOS
|
|
a2c57573
|
2022-09-01T10:47:24
|
|
video: check for "software" with SDL_HINT_FRAMEBUFFER_ACCELERATION.
We check for this value elsewhere but not in SDL_CreateWindowFramebuffer.
|
|
7becbd7d
|
2022-09-27T12:58:16
|
|
Add joystick locking for controller notifications on iOS/tvOS
Fixes https://github.com/libsdl-org/SDL/issues/6288
|
|
18eb319a
|
2022-09-27T12:34:03
|
|
Added sensor timestamp for Nintendo Switch controllers
|
|
5e3a4030
|
2022-09-27T11:36:01
|
|
Added sensor timestamp for Steam Controllers
|
|
57b20e7b
|
2022-09-27T14:23:42
|
|
cocoa: Fix new windows setting SDL_WINDOW_BORDERLESS flag incorrectly.
Fixes #6172.
|
|
77c7836c
|
2022-09-27T20:21:24
|
|
fix vita build failure after commit 2c518747b
|
|
2c518747
|
2022-09-27T09:56:02
|
|
Added microsecond timestamp to sensor values for PS4 and PS5 controllers using the HIDAPI driver
|
|
d71df644
|
2022-09-27T10:21:15
|
|
Fixed bug #6287 - SDL_FillRect failed for SDL_Surface with BitsPerPixel == 4
|
|
1e1be0b9
|
2022-09-26T23:00:58
|
|
Updated logic to match between PS4/PS5/Switch controllers
|
|
8c40a6b0
|
2022-09-26T22:47:21
|
|
Drop PS5 Bluetooth reports that fail CRC check
|
|
db075ff3
|
2022-09-26T22:45:01
|
|
Removed unused variable
|
|
2ccdd066
|
2022-09-26T22:32:57
|
|
Handle DS4 dongle controller connection and disconnection
We also drop Bluetooth packets that fail the CRC check, as recommended by Sony
|
|
18046b9a
|
2022-09-26T20:53:50
|
|
Fixed crash with a NULL serial number
|
|
67fa6a93
|
2022-09-26T20:49:26
|
|
Don't wait a long time for zombie Bluetooth controllers
If a Nintendo Switch Pro controller is turned off, it will leave the controller connected in Windows, but not responding to reports. Don't wait a really long time trying to get information from a controller in this state.
|
|
67db8a91
|
2022-09-26T20:41:51
|
|
Wait for input before reconnecting a Bluetooth device
On Windows, the Bluetooth device can remain in a connected state if the controller just shut down. It won't return any errors, but it also won't generate any input reports in this state, so wait until we know for sure that the Bluetooth controller is sending data before letting the application know it's available.
|
|
71fb91f7
|
2022-09-26T21:38:09
|
|
evdev: Fix build with libudev and joystick subsystem disabled
|
|
2cc91761
|
2022-09-26T18:52:26
|
|
Removed debug logging
|
|
2c98c8af
|
2022-09-26T18:39:18
|
|
Use better default values for Switch controller calibration
|
|
a205c5e2
|
2022-09-26T18:18:16
|
|
Use separate extents for simple and advanced reports
|
|
4e375996
|
2022-09-26T17:06:18
|
|
Added a hint to return the version in the old format
Workaround for https://github.com/libsdl-org/SDL/issues/6177 for games that can't be updated.
|
|
b7fddb4c
|
2022-09-26T14:39:51
|
|
Minor tweaks
|
|
39adcc0a
|
2022-09-26T14:20:34
|
|
Prefer USB input over Bluetooth for PS5/PS5/Switch controllers
Nintendo Switch controllers will automatically turn off Bluetooth when connected over USB, but this takes care of that a little more quickly.
PS4 and PS5 controllers will happily send reports over both Bluetooth and USB, so we'll prefer USB if connected and switch back to Bluetooth if USB is disconnected.
|
|
17d7d03a
|
2022-09-26T08:12:35
|
|
Added detection of the joystick type for third party PS4 and PS5 controllers
|
|
8d2cb155
|
2022-09-23T16:56:24
|
|
Added an entry for the ZEROPLUS P4 Wired Gamepad
|
|
cb063db6
|
2022-09-23T16:52:37
|
|
Moved XInputPS4 controllers into the PS4 controller section
|
|
5b3b7e6e
|
2022-09-23T16:46:36
|
|
Separated PS4/PS5 effects support into individual capabilities
|
|
33619aa2
|
2022-09-23T16:38:15
|
|
Added support for the ZEROPLUS P4 Wired Gamepad to the HIDAPI driver
|
|
e888c99f
|
2022-09-23T16:26:41
|
|
Fixed the entry for the Nacon PS4 Compact Controller
|
|
56b91ea7
|
2022-09-23T15:27:40
|
|
Fixed feature detection for the Razer Raiju Tournament Edition controller
|
|
4ea64fee
|
2022-09-23T15:28:32
|
|
Fixed manufacturer/product name deduplication for the Razer Raiju Tournament Edition controller
|
|
4a06cc0f
|
2022-09-22T13:03:09
|
|
wayland: Apply modifier changes to the text of repeated keys
The text component of a repeated keystroke is initially set when a key is first pressed and the cached value remains static until the repeated key is released and another repeatable key is pressed. If the state of a modifier such as shift or capslock is changed while a key is being repeated, the text emitted will not have the modifier applied to it until the repeated key is released and pressed again.
Update the text to be repeated by a key if a modifier is changed while a key is actively being repeated.
|
|
467c82c7
|
2022-09-23T12:31:40
|
|
wayland: Add mappings for the Escape and NumLock keys
The XKB keysym to SDL keycode mappings were missing for the Escape and NumLock keys, which prevented them from being remapped. Add them to the table so that the remapping of these keys will work.
|
|
34f928ab
|
2022-09-23T09:26:18
|
|
Generate the correct name for ASTRO Gaming controllers
Manufacturer "ASTRO Gaming" and product "ASTRO C40" turns into "ASTRO C40"
|
|
6ddef7c2
|
2022-09-23T09:20:27
|
|
Generate the correct name for Qanba and Mad Catz controllers
|
|
c2ae2ccc
|
2022-09-23T09:10:51
|
|
Added feature support for the Razer Raiju to the HIDAPI driver
|
|
5ea9886b
|
2022-09-23T13:19:22
|
|
haiku: Fix when screen color depth was 24 bits, SDL_GetWindowSurface would always fail with 'Unknown pixel format' error
Note that returning SDL_PIXELFORMAT_BGR24 instead of SDL_PIXELFORMAT_RGB24 seems necessary, otherwise when running with SDL_ACCELERATION=0, the red and blue channels of the window appeared swapped.
Note that when running with acceleration enabled, red and blue channel swapping does not happen regardless of whether SDL_PIXEL_FORMAT_RGB24 or SDL_PIXEL_FORMAT_BGR24 is returned.
For good measure, I also tested running with acceleration disabled in both 15 and 16 bit color depths, but red and blue channel swapping did not occur
|
|
51fefd1c
|
2022-09-23T02:39:35
|
|
Added support for third party PS3 controllers to the HIDAPI driver
|
|
5b4c10fc
|
2022-09-23T02:36:53
|
|
Return true from IsSupportedDevice if it's a device that we _might_ support
This forces an update of the device list so we have the correct state when we check to see whether a device is being handled by HIDAPI
|
|
1d34a524
|
2022-09-23T00:38:23
|
|
Fixed shadowed variable warning
|
|
010d3e64
|
2022-09-23T00:36:46
|
|
Fixed function prototype mismatch
|
|
b7940c29
|
2022-09-23T00:15:40
|
|
Allow HIDAPI controllers to override the default joystick type
|
|
899a1e7c
|
2022-09-22T23:54:26
|
|
Skip PS4/PS5 probe message if we already know it's a supported controller
|
|
fa2063fb
|
2022-09-22T23:42:25
|
|
Improved detection of third party PS4 and PS5 controllers
|
|
aa2e2f48
|
2022-09-22T18:22:17
|
|
Make sure HID devices can be opened before making them available to the application
This prevents a number of issues where devices are enumerated but not actually able to be opened, like https://github.com/libsdl-org/SDL/issues/5781.
We currently leave the devices open, allowing us to more easily do controller feature detection, protocol negotiation, detect dropped Bluetooth connections, etc. with the expectation that the application is likely to open the controllers shortly.
|
|
2857e3c7
|
2022-09-22T15:53:32
|
|
Added an entry for the Mad Catz FightStick TE 2+ PS3
|
|
6812f1b5
|
2022-09-22T15:16:34
|
|
Fixed the entry for the HORI Fighting Commander 4 in PS4 mode
|
|
99e85cc2
|
2022-09-22T10:10:20
|
|
Accidentally reverted https://github.com/libsdl-org/SDL/commit/172865ff137532123ec06177119be163ba1811f5
|
|
6cbdc666
|
2022-09-22T09:05:06
|
|
Fixed use of uninitialized 'size' variable (thanks @ozkan!)
|
|
0c4594ac
|
2022-09-22T06:45:46
|
|
Improved PS4 and PS5 third-party controller feature detection
|
|
399cb2f0
|
2022-09-21T13:20:39
|
|
wayland: Only clear the key repeat flag when the repeated key is released
If multiple keys were simultaneously depressed and one was being repeated, the repeat flag was being cleared when any of the pressed keys were released, even if the released key wasn't the one being repeated.
This tracks the key currently being repeated and only clears the repeat flag when the particular key being repeated is released.
|
|
eb25f6c9
|
2022-09-21T14:22:38
|
|
Fixed Xbox platform name, courtesy of @walbourn
|
|
00b67f55
|
2022-09-21T10:30:38
|
|
Fix potential memory leak in GLES_CreateTexture
|
|
301912a5
|
2022-09-18T21:25:55
|
|
Fix: Use WIN_ClientPointToSDL for converting additional mouse coordinates
|