|
5cc23868
|
2021-11-15T11:52:43
|
|
wayland: Add support for SDL_DisplayOrientation
|
|
40d80862
|
2021-11-15T20:17:14
|
|
SDL_classic_joysticks defaults off
|
|
66058bbb
|
2021-11-15T16:52:56
|
|
Fixed exception accessing Bluetooth devices on Android 12
Since accessing Bluetooth prompts the user for permission on both Android and iOS, and we only need it for Steam Controller support, we'll leave it off by default. You can enable it by setting the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM to "1" before calling SDL_Init()
Fixes https://github.com/libsdl-org/SDL/issues/4952
|
|
be5b4d98
|
2021-11-15T16:52:54
|
|
Added nativeGetHintBoolean for Java code
|
|
9ec2b351
|
2021-11-15T13:45:53
|
|
Fixed the GLES2 shader count to be in sync with the enum
|
|
b649314d
|
2021-11-15T13:43:40
|
|
Add comment to audio clipping (see bug #4104)
|
|
d4df5d33
|
2021-11-15T09:43:44
|
|
GLES2: prevent batching if blend mode changes (see bug #4964)
|
|
92f2fdfc
|
2021-11-15T09:36:18
|
|
GLES2: batch non joined lines (see #4964)
|
|
17f156fa
|
2021-11-15T09:08:09
|
|
Fixed bug #4964 - opengles2 & batching = conjoined lines
put back the initial switch case because groups of joined lines cannot be batched.
|
|
d8888e46
|
2021-11-15T08:37:49
|
|
Fixed bug #4964 - opengles2 & batching = conjoined lines
|
|
cc094f4d
|
2021-11-14T20:15:48
|
|
Fixed building with the macOS 10.8 SDK
|
|
d7d67af4
|
2021-11-14T17:52:41
|
|
mouse: Fix Y value in motion events when confinement is active
|
|
1cd3e837
|
2021-11-14T15:51:38
|
|
cocoa: Fix abort on touch event types without a subtype
macOS 10.6 has some touch NSEvents which do not have a subtype
(Begin/EndGesture, Magnify, Rotate, Swipe) and cause an uncaught
exception which triggers SIGABRT and the program exits.
As it is, none of the macOS 10.6 touch events are detected as a
trackpad (including Gesture due to using different subtypes).
|
|
781caec2
|
2021-11-15T00:55:24
|
|
SDL_waylandevents.c (keyboard_handle_keymap): silenced -Wwrite-strings .
|
|
5c067906
|
2021-11-15T00:55:04
|
|
wasapi: AvSetMmThreadCharacteristicsW takes an LPCWSTR param, not LPWSTR
|
|
3eb9bfac
|
2021-11-14T22:22:50
|
|
win32 rawinput & wgi joystick: avoid -Werror=declaration-after-statement
|
|
c55ab963
|
2021-11-13T22:21:57
|
|
Added a hint for alternate OpenGL NV12 data format
|
|
8a6e48d4
|
2021-11-14T04:40:50
|
|
constified SDL_RegisterApp()
|
|
7dfd22ac
|
2021-11-14T02:32:00
|
|
fix XGetDefault signature - its first and second params are _Xconst
|
|
c7aa04d0
|
2021-11-14T02:31:20
|
|
SDL_test_harness.c: avoid -Wwrite-strings
|
|
be7b663c
|
2021-11-14T02:30:56
|
|
audio/winmm/SDL_winmm.c (SetMMerror): constify.
|
|
e4aa608a
|
2021-11-14T02:30:34
|
|
change (char*) casts to (const char*) in WIN_UTF8 macros
|
|
674f361d
|
2021-11-13T11:44:04
|
|
wayland: Fix memory leaks in clipboard code
|
|
c8061ed2
|
2021-11-13T10:33:37
|
|
alsa: Fix possible uninitialized string
|
|
a2c27d39
|
2021-11-13T17:56:28
|
|
SDL_hidapi_switch.c (ConstructSubcommand): lose use of '&' on rumbleData
SwitchCommonOutputPacket_t->rumbleData is an array.
|
|
6ad0fb84
|
2021-11-13T17:55:10
|
|
SDL_hidapi_ps4.c, SDL_hidapi_ps5.c: use SDL_zeroa()
|
|
70c8d20a
|
2021-11-13T15:04:19
|
|
Revert previous commit a50ca98e2b9ca10368b62e93b6a0977dc68fd584 (see bug #4625)
|
|
a50ca98e
|
2021-11-13T14:48:36
|
|
Fixed bug #4625 - SDL_RenderSetLogicalSize issues
viewport becomes -2147483648x-2147483648 when logical_w/h is greater than window size.
division should be done with floats
|
|
a948ff84
|
2021-11-13T11:50:02
|
|
SDL_hidapijoystick.c: worked around a bogus 'unreachable code' warning.
|
|
eb3f1462
|
2021-11-12T18:26:15
|
|
x11: Fix memory leak in X11_CreatePixmapCursor()
|
|
704edf63
|
2021-11-12T17:07:22
|
|
audio: Fix crash calling SDL_OpenAudio() after SDL_AudioInit() fails
The SDL_WasInit() checks don't work when using SDL_AudioInit() directly,
which is exactly what audio_initOpenCloseQuitAudio() in testautomation
does.
|
|
78013aee
|
2021-11-12T16:57:24
|
|
alsa: Fix use-after-free when reinitializing
|
|
3dc7813a
|
2021-11-12T20:47:02
|
|
more whitespace tidy-ups in SDL_os2messagebox.c
|
|
c2dd50a9
|
2021-11-12T08:28:02
|
|
Fixed whitespace
|
|
074e613b
|
2021-11-12T03:03:56
|
|
Fixed typo
|
|
35d90f17
|
2021-11-12T03:00:57
|
|
Better implementation of SDL_SetWindowMouseGrab() and SDL_SetWindowMouseRect() on macOS
|
|
5fc7a90a
|
2021-11-12T10:00:41
|
|
Fix refcounting in SDL_hid_exit
|
|
162772aa
|
2021-11-11T20:50:54
|
|
Fixed build warnings on Android
|
|
50971577
|
2021-11-11T22:35:41
|
|
dinput: Fix memory leak when SDL_DINPUT_JoystickPresent() returns true
|
|
3bf7994f
|
2021-09-27T14:38:12
|
|
Add and use `SDL_FALLTHROUGH` for fallthroughs
Case fallthrough warnings can be suppressed using the __fallthrough__
compiler attribute. Unfortunately, not all compilers have this
attribute, or even have __has_attribute to check if they have the
__fallthrough__ attribute. [[fallthrough]] is also available in C++17
and the next C2x, but not everyone uses C++17 or C2x.
So define the SDL_FALLTHROUGH macro to deal with those problems - if we
are using C++17 or C2x, it expands to [[fallthrough]]; else if the
compiler has __has_attribute and has the __fallthrough__ attribute, then
it expands to __attribute__((__fallthrough__)); else it expands to an
empty statement, with a /* fallthrough */ comment (it's a do {} while
(0) statement, because users of this macro need to use a semicolon,
because [[fallthrough]] and __attribute__((__fallthrough__)) require a
semicolon).
Clang before Clang 10 and GCC before GCC 7 have problems with using
__attribute__ as a sole statement and warn about a "declaration not
declaring anything", so fall back to using the /* fallthrough */ comment
if we are using those older compiler versions.
Applications using SDL are also free to use this macro (because it is
defined in begin_code.h).
All existing /* fallthrough */ comments have been replaced with this
macro. Some of them were unnecessary because they were the last case in
a switch; using SDL_FALLTHROUGH in those cases would result in a compile
error on compilers that support __fallthrough__, for having a
__attribute__((__fallthrough__)) statement that didn't immediately
precede a case label.
|
|
9c3bcf8e
|
2021-11-11T17:31:14
|
|
Added SDL_hid_ble_scan() for pairing Steam Controllers on iOS and tvOS
|
|
abc12a83
|
2021-11-11T15:58:44
|
|
Revert "Add and use `SDL_FALLTHROUGH` for fallthroughs"
This reverts commit 66a08aa3914a98667f212e79b4f0b9453203d656.
This causes problems with older compilers:
https://github.com/libsdl-org/SDL/pull/4791#issuecomment-966630997
|
|
36b2690e
|
2021-11-11T15:48:56
|
|
Moved SDL HIDAPI functions into a single block for the ABI
|
|
fe09a493
|
2021-11-11T15:53:11
|
|
joystick: Add APIs to query rumble support
|
|
afccabb8
|
2021-11-11T12:12:05
|
|
joystick: Add capability flags for rumble and trigger rumble
When API limitations force us to guess, we favor a false positive (reporting
support when it doesn't exist) compared to a false negative.
|
|
1ccfbf96
|
2021-11-11T11:13:08
|
|
joystick: Convert HasLED() into a generic GetCapabilities() function
|
|
911d91c5
|
2021-11-11T14:35:51
|
|
Retry hid_send_feature_report() if the ioctl() fails with EPIPE (e.g. the device stalled)
|
|
b15e880e
|
2021-11-11T13:50:16
|
|
Fixed open functions in the SDL_hidapi.h header
|
|
b9b0df40
|
2021-11-11T12:52:31
|
|
Fixed Linux build
|
|
c9ada1c1
|
2021-11-11T12:45:38
|
|
Made HIDAPI device change notifications available via SDL_hid_device_change_count()
|
|
63ae103c
|
2021-11-11T13:16:34
|
|
wayland: QTWAYLAND_CONTENT_ORIENTATION can support multiple values as bitmasks
|
|
ebed961c
|
2021-11-11T09:51:39
|
|
Fixed build with older Linux kernel headers
|
|
11ae43ca
|
2021-11-11T07:49:38
|
|
Only lock the pointer for mouse relative mode, there isn't really a concept of grab and confinement on iOS
Locking the pointer prevents the on-screen cursor from moving, which isn't what we want with a grab behavior.
Fixes https://github.com/libsdl-org/SDL/issues/4941
|
|
66a08aa3
|
2021-09-27T14:38:12
|
|
Add and use `SDL_FALLTHROUGH` for fallthroughs
Case fallthrough warnings can be suppressed using the __fallthrough__
compiler attribute. Unfortunately, not all compilers have this
attribute, or even have __has_attribute to check if they have the
__fallthrough__ attribute. [[fallthrough]] is also available in C++17
and the next C2x, but not everyone uses C++17 or C2x.
So define the SDL_FALLTHROUGH macro to deal with those problems - if we
are using C++17 or C2x, it expands to [[fallthrough]]; else if the
compiler has __has_attribute and has the __fallthrough__ attribute, then
it expands to __attribute__((__fallthrough__)); else it expands to an
empty statement, with a /* fallthrough */ comment (it's a do {} while
(0) statement, because users of this macro need to use a semicolon,
because [[fallthrough]] and __attribute__((__fallthrough__)) require a
semicolon).
Applications using SDL are also free to use this macro (because it is
defined in begin_code.h).
All existing /* fallthrough */ comments have been replaced with this
macro. Some of them were unnecessary because they were the last case in
a switch; using SDL_FALLTHROUGH in those cases would result in a compile
error on compilers that support __fallthrough__, for having a
__attribute__((__fallthrough__)) statement that didn't immediately
precede a case label.
|
|
828a0a4a
|
2021-11-11T07:13:29
|
|
Fixed mapping for PS4 controller when using the classic Joystick
interface on Linux
|
|
dc9de1e2
|
2021-11-11T07:03:30
|
|
Get the correct USB VID/PID information for /dev/input/js* devices
|
|
bd92a95f
|
2021-11-11T06:30:36
|
|
Cleanup for the /dev/js* support (thanks @meyraud705)
|
|
3090812e
|
2021-11-11T11:27:56
|
|
Convert last SDL_IOReady()'s 2nd parameter to flags
Conversion missed in https://github.com/libsdl-org/SDL/pull/4897
|
|
1c78b080
|
2021-11-10T20:02:25
|
|
Added support for /dev/input/js* on Linux
Added the hint SDL_HINT_LINUX_JOYSTICK_CLASSIC to control whether /dev/input/js* or /dev/input/event* are used as joystick devices
Added the hint SDL_HINT_JOYSTICK_DEVICE to allow the user to specify devices t
hat will be opened in addition to the normal joystick detection
Fixes https://github.com/libsdl-org/SDL/issues/1314
Fixes https://github.com/libsdl-org/SDL/issues/1727
Fixes https://github.com/libsdl-org/SDL/issues/1981
Closes https://github.com/libsdl-org/SDL/pull/4727
|
|
65a50b24
|
2021-11-10T16:15:22
|
|
Re-enable udev joystick enumeration by default
|
|
dfb834d3
|
2021-11-10T13:41:44
|
|
Track button state for each mouse input source separately
This way we'll get button down and up events for each mouseID
individually.
Fixes https://github.com/libsdl-org/SDL/issues/4518
|
|
eda4c407
|
2021-11-10T12:46:54
|
|
Make sure the X event is an Xkb event before checking the Xkb event type
|
|
98c98362
|
2021-11-10T11:04:51
|
|
Don't clobber the error in SDL_ShowMessageBox() if one has been set at
the platform level
Fixes https://github.com/libsdl-org/SDL/issues/4760
|
|
dc4c7d95
|
2021-11-10T09:48:49
|
|
Fixed infinite loop in SDL_vsnprintf() if the format string is too large for the output buffer
Fixes https://github.com/libsdl-org/SDL/issues/4940
|
|
d5032582
|
2021-11-10T09:45:56
|
|
Use consistent language between SDLTest_AssertPass() and SDLTest_AssertCheck()
|
|
6c4b4ee7
|
2021-11-10T09:41:43
|
|
Don't assert on API parameters
This causes lots of spam in test automation and it's not clear it's useful to developers. If we need this level of validation, we should add a log category for it.
|
|
fed85778
|
2021-11-10T08:47:39
|
|
Update the orientation and display modes when the display settings change on Windows
Fixes https://github.com/libsdl-org/SDL/issues/1061
|
|
c0f1109b
|
2021-11-10T06:03:01
|
|
Implemented querying the orientation of displays on Windows
|
|
3a31a450
|
2021-11-10T05:24:31
|
|
End the scene before resetting the D3D device, since we'll start with BeginScene after that.
If we don't do this, we'll end up with unbalanced Begin/End scene pairs which causes D3DERR_INVALIDCALL in the present.
Fixes https://github.com/libsdl-org/SDL/issues/4933
|
|
6b64c47b
|
2021-11-09T23:45:32
|
|
haptics: Enumerate XInput/DInput joysticks after haptic init
Since the haptic subsystem is usually initialized after the joystick subsystem,
the initial calls to HapticMaybeAddDevice() from inside SDL_JoystickInit() will
arrive too early to be handled by the haptic subsystem. We need to add those
haptic devices for those already present joysticks ourselves.
|
|
0d987936
|
2021-11-09T22:03:42
|
|
testwm2: Fix video modes menu hit detection when highdpi or logical size used (#4936)
* SDLTest_CommonDrawWindowInfo: log SDL_RenderGetScale, SDL_RenderGetLogicalSize
* testwm2: fix video modes menu hit detection in High DPI cases
- also when logical size is specified, e.g.
`--logical 640x480 --resizable --allow-highdpi`
* add function to determine logical coordinates of renderer point when given window point
* change since to the targeted milestone
* fix typo
* rename for consistency
* Change logical coordinate type to float, since we can render with floating point precision.
* add function to convert logical to window coordinates
* testwm2: use new SDL_RenderWindowToLogical
* SDL_render.c: alternate SDL_RenderWindowToLogical/SDL_RenderLogicalToWindow
Co-authored-by: John Blat <johnblat64@protonmail.com>
Co-authored-by: John Blat <47202511+johnblat64@users.noreply.github.com>
|
|
27ce9144
|
2021-11-09T20:51:42
|
|
Send absolute mouse motion when in normal mouse mode and relative mouse motion when in relative mode on iOS
This keeps the SDL cursor in sync with the visible cursor when in normal mouse mode.
|
|
19c129fa
|
2021-11-09T20:32:16
|
|
Added documentation that the UIApplicationSupportsIndirectInputEvents key must be set to true
in your application's Info.plist in order to get real Bluetooth mouse events.
|
|
7681929c
|
2021-11-09T12:30:37
|
|
Don't send the initial joystick axis event if the application is in the background
|
|
d31f90d9
|
2021-11-09T12:09:01
|
|
Don't send game controller touchpad or sensor events unless the application has focus
Fixes https://github.com/libsdl-org/SDL/issues/4891
|
|
d2f75636
|
2021-11-09T11:53:59
|
|
When making the window centered it should use windowed mode size since it doesn't affect fullscreen windows
Fixes bug https://github.com/libsdl-org/SDL/issues/4750
|
|
1fc25bd8
|
2021-11-08T22:04:34
|
|
Properly position the IME window(s) on windows
|
|
04f42e04
|
2021-11-09T11:50:49
|
|
metal: Deal better with -[CAMetalLayer nextDrawable] returning nil.
Fixes #4863.
|
|
0f2bf629
|
2021-11-09T06:20:46
|
|
Fixed building hidapi when libusb is available
|
|
e8731933
|
2021-11-09T13:32:28
|
|
Fixed warning: macro is not used
|
|
c7065bf4
|
2021-11-09T11:31:29
|
|
Fix warning: declaration shadows a local variable
|
|
715e7bda
|
2021-11-09T01:43:44
|
|
haptic: Don't enumerate joysticks if the joystick subsystem is active
The joystick subsystem has complex precedence logic to deal multiple competing
backends like XInput, RawInput, and WGI. Let it fire the MaybeAdd callbacks
for joystick devices, since it knows which backend will end up managing them.
This resolves a situation where the RawInput joystick backend would take
control of an XInput device but the XInput haptic backend would still create
a haptic device. Since the XInput joystick backend didn't own the underlying
joystick device, we'd end up with an orphaned haptic device that didn't work
with SDL_HapticOpenFromJoystick() on the associated joystick device.
|
|
ae67c7d2
|
2021-11-09T01:30:00
|
|
Implemented SDL_SetWindowMouseRect() on Wayland
|
|
18e69827
|
2021-11-08T22:29:02
|
|
Fixed Linux build
|
|
881f747d
|
2021-11-09T13:35:18
|
|
Always destroy icon
|
|
7fea557b
|
2021-11-09T12:03:09
|
|
SDL_windowsmouse.c: Remove LR_COPYDELETEORG flag
|
|
67c42cb4
|
2021-11-08T22:16:01
|
|
Fixed Windows build
|
|
fd79607e
|
2021-11-08T21:34:48
|
|
Added SDL_GetWindowMouseRect()
Also guarantee that we won't get mouse movement outside the confining area, even if the OS implementation allows it (e.g. macOS)
|
|
4db546b0
|
2021-11-08T20:35:12
|
|
Implemented SDL_SetWindowMouseRect() on macOS
|
|
9c95c249
|
2021-11-08T20:01:56
|
|
x11: Use XCheckIfEvent() instead of XNextEvent() for thread-safety
A racing reader could read from our fd between SDL_IOReady()/X11_Pending()
and our call to XNextEvent() which will cause XNextEvent() to block for
more data. Avoid this by using XCheckIfEvent() which will never block.
This also fixes a bug where we could poll() for data, even when events were
already read and pending in the queue. Unlike the Wayland implementation,
this isn't totally thread-safe because nothing prevents a racing reader
from reading events into the queue between our XCheckIfEvent() and
SDL_IOReady() calls, but I think this is the best we can do with Xlib.
|
|
2d23d66a
|
2021-11-08T16:33:50
|
|
Fixed SetWindowMouseRect return value on Windows
|
|
7d21322d
|
2021-11-08T16:29:19
|
|
Implemented SDL_SetWindowMouseRect() on Windows
|
|
4b42c05b
|
2021-11-08T13:52:48
|
|
video: Add SDL_SetWindowMouseRect.
This API and implementation comes from the Unreal Engine branch of SDL, which
originally called this "SDL_ConfineCursor".
Some minor cleanup and changes for consistency with the rest of SDL_video, but
there are two major changes:
1. The coordinate system has been changed so that `rect` is _window_ relative
and not _screen_ relative, making it easier to implement without having
global access to the display.
2. The UE version unset all rects when passing `NULL` as a parameter for
`window`, this has been removed as it was an unused feature anyhow.
Currently this is only implemented for X, but can be supported on Wayland and
Windows at minimum too.
|
|
a3e8fd49
|
2021-11-08T09:58:11
|
|
Cancel any accumulated mouse wheel motion in the opposite direction when the wheel direction changes
Fixes https://github.com/libsdl-org/SDL/issues/2912
|
|
5dbbc8e6
|
2021-11-08T09:44:31
|
|
Added mouse wheel deltas with floating point precision
Fixes https://github.com/libsdl-org/SDL/issues/4888
|
|
d95a52c9
|
2021-11-08T09:39:21
|
|
Fixed comment typo
|
|
fc998b8e
|
2021-11-08T12:37:10
|
|
wayland: Return true for HasScreenKeyboardSupport only if no physical keyboard exists
|
|
b8327a4a
|
2021-11-08T07:19:45
|
|
Added SDL_HIDAPI_DISABLED so it can be disabled like other SDL subsystems
|
|
2a6feb50
|
2021-11-08T07:10:38
|
|
Removed accidental debugging commit (thanks @DomGries!)
|
|
6c56e275
|
2021-11-08T07:05:17
|
|
Set both _NET_WM_NAME and WM_NAME so SDL windows can be shared in the browser.
Fixes https://github.com/libsdl-org/SDL/issues/4924
|