|
46f19c31
|
2021-07-08T07:23:29
|
|
Implemented mouse relative mode for iOS 14.1 and newer
|
|
3433f3c4
|
2021-07-08T01:18:01
|
|
CMake: Small improvement for MinGW
This is currently a small patch we have in our Conan package for SDL https://github.com/bincrafters/community/blob/4dc894cc2c4df43aabf39c212aa0a31047d183e1/recipes/sdl2/all/conanfile.py#L184
Introduced in https://github.com/bincrafters/conan-sdl2/commit/9fb93a60446914da2a0fafc692cbd175c2d5db50
|
|
6f0865fe
|
2021-07-07T23:51:32
|
|
updated os2 makefile.
|
|
599001d4
|
2021-07-07T13:30:48
|
|
Revert "Removed reference to ant project."
This reverts commit 0cad302346f95da770e5e1dc818f585c4ab4530d.
The ant directory still exists in source control
|
|
75a9f8e2
|
2021-07-07T13:06:15
|
|
Added SDL_hidapi_luna.c to the Xcode project
|
|
430bbcb8
|
2021-07-07T09:49:33
|
|
Added HIDAPI support for the Amazon Luna Controller connected over USB in DirectInput mode
|
|
863f5669
|
2021-07-07T08:55:16
|
|
Fixed reading thumbstick axes and mic button on the Amazon Luna Controller firmware version 305164320
|
|
17ed8d80
|
2021-07-07T16:05:35
|
|
Added HIDAPI backend for Amazon Luna Controller Model T28B69 connected via Bluetooth LE (VID:0171, PID:0419).
To enter Bluetooth pairing mode hold B and Action (button with circle) buttons for 3 seconds.
It works via usual HIDAPI if special filter driver is not installed:
https://www.amazon.com/gp/help/customer/display.html?nodeId=GZCT4CTFHXLHEB9T
With that driver installed it mimics Xbox One controller and works via XInput under Windows.
Under DInput this controller is not usable at all.
|
|
00d67620
|
2021-07-06T11:32:11
|
|
Added the SteelSeries manufacturer to the Nimbus+ entry on macOS
|
|
0f00f6dd
|
2021-07-06T10:01:31
|
|
Ignore checkkeysthreads
|
|
24e836b0
|
2021-07-06T10:00:09
|
|
Added controller mapping for the Nimbus+ controller on macOS when MFi support is not available
|
|
6b21a6cc
|
2021-07-05T20:02:02
|
|
Update config.guess and config.sub from mainstream.
|
|
89015b9c
|
2021-06-22T00:09:06
|
|
Vita: default window size for tests
|
|
b55ee12f
|
2021-06-21T23:56:04
|
|
Vita: fix clip rectangle
|
|
e41d3e61
|
2021-06-21T23:15:37
|
|
VIta: fix render clearing
|
|
6b122805
|
2021-06-21T23:14:56
|
|
Vita: proper syntax
|
|
32deb6f7
|
2021-06-21T23:14:40
|
|
Vita: fix point size
|
|
9d452719
|
2021-06-21T15:42:47
|
|
Vita: append messagebox title
|
|
6460151c
|
2021-06-21T15:03:31
|
|
Vita: add missing stub
|
|
0994a758
|
2021-07-01T20:36:49
|
|
Don't hardcode message length
|
|
3b6e9992
|
2021-06-23T14:57:04
|
|
Vita: remove unused variable and allow Razor perf analysis
|
|
656eb7df
|
2021-06-23T14:35:36
|
|
Vite: return system installed memory
|
|
39302c92
|
2021-06-02T14:28:33
|
|
Add Steam Virtual Gamepad and Xbox 360 Wired Controller defines instead of magic values
See https://partner.steamgames.com/doc/features/steam_controller/steam_input_gamepad_emulation_bestpractices for details on what is Steam Virtual Gamepad.
|
|
0c4ac33a
|
2021-06-28T14:31:27
|
|
Added support for the Razer Wolverine Tournament Edition controller
|
|
2143534a
|
2021-06-28T02:00:24
|
|
configure.ac: manually check immintrin.h with AC_COMPILE_IFELSE().
AC_CHECK_HEADER() emits warnings when configuring for non-x86, because
the preprocessor check is OK but the compile check is not:
configure: WARNING: immintrin.h: present but cannot be compiled
configure: WARNING: immintrin.h: check for missing prerequisite headers?
configure: WARNING: immintrin.h: see the Autoconf documentation
configure: WARNING: immintrin.h: section "Present But Cannot Be Compiled"
configure: WARNING: immintrin.h: proceeding with the compiler's result
|
|
ca383599
|
2021-06-27T01:49:31
|
|
Fix Anne Pro II keyboard showing up as a joystick
Having used this for a couple years, I can definitely confirm that it is not a joystick.
|
|
c90bd3bf
|
2021-06-27T03:13:47
|
|
Add missing PS5 DualSense GUIDs
Fixes my DualSense controller not being recognised as a SDL GameController which breaks Steam Input filtering causing SDL to fight for input.
|
|
bfdea605
|
2021-06-26T05:56:10
|
|
avoid -Wundef warning from SDL_config_windows.h
|
|
205b951b
|
2021-06-25T14:20:08
|
|
SDL_DINPUT_JoystickPresent() needs to do the full device enumeration
It is called from WGI before the normal joystick detection has been run, so it needs to actually enumerate currently connected devices.
We can skip the logic checking for other drivers also supporting this device, because that logic is duplicated from the call site.
|
|
ae6d9e34
|
2021-06-25T11:09:46
|
|
Correcting the name of the Amazon Luna Controller
|
|
5042ab6f
|
2021-06-24T18:09:06
|
|
Added Linux and macOS mappings for the DirectInput mode of the Amazon Luna Controller
|
|
5b051459
|
2021-06-24T18:09:04
|
|
Fixed warnings on Windows
|
|
99700a5c
|
2021-06-24T18:09:01
|
|
SDL: add Windows mappings for Luna controllers for USB DirectInput mode and BT. Note: the triggers do not seem to work in BT mode.
|
|
33b84c8d
|
2021-06-24T23:10:56
|
|
s/memcmp/SDL_memcmp/ for conistency
|
|
56b77b12
|
2021-06-04T19:51:58
|
|
cocoa: Implement FlashWindow
|
|
c2e8a791
|
2021-06-12T16:20:47
|
|
SDL_windowsevents: add support for multiple mice
|
|
7948c16d
|
2021-06-12T17:56:52
|
|
Pump events each time through the loop in SDL_WaitEventTimeout_Device()
Not only is it more efficient to batch process pending events, it is
necessary for correctness with the Win32 backend. WIN_PumpEvents() runs
periodic updates of the cursor clip region and disambiguation of
left and right shift keys in addition to standard event processing.
|
|
105de64c
|
2021-06-12T16:19:03
|
|
Only queue one wakeup event per wait
Queuing more than one can lead to a spurious wakeup on the next wait.
|
|
c262569c
|
2021-06-22T00:03:18
|
|
kmsdrm: fix KMSDRM_SetDisplayMode being called for the default desktop mode doing nothing
|
|
98bda391
|
2021-06-23T00:21:31
|
|
kmsdrm: sync the display's current mode with what's set in KMSDRM_CreateSurfaces
|
|
d031a24e
|
2021-06-08T00:39:04
|
|
kmsdrm: defer surface recreation inside of KMSDRM_SetWindowSize and
KMSDRM_SetWindowFullscreen as is done in KMSDRM_SetWindowDisplayMode
|
|
5a296e25
|
2021-06-08T20:48:24
|
|
kmsdrm: avoid overriding the mode requested by SDL_SetWindowDisplayMode
when recreating surfaces
|
|
814285d6
|
2021-06-23T09:19:02
|
|
Workaround for crash on Apple Mac M1 hardware
|
|
bc141e44
|
2021-06-23T15:09:07
|
|
Remove -static-libgcc from sdl2-config output
|
|
a6715a20
|
2021-06-23T14:56:02
|
|
revert the previous -Wc,-static-libgcc patch:
Someone reported breakage with that:
https://github.com/libsdl-org/SDL/commit/bc51de2f87194e45eec94414bc248a6e7a0f9d26#commitcomment-52550755
|
|
bc51de2f
|
2021-06-22T18:11:24
|
|
regenerated configure script.
|
|
23575a42
|
2021-06-22T15:18:25
|
|
Ensure that libgcc is linked statically on Windows
|
|
41fab853
|
2021-06-18T18:10:24
|
|
ControllerList: set the default deadzone for Ps5 controller back to same one as Xbox controllers. Too many users complained about drift.
|
|
a8b28939
|
2021-06-18T18:10:23
|
|
ControllerList: add more Xbox controllers from minidumps
|
|
08eff56a
|
2021-06-18T18:10:22
|
|
ControllerList: add Brooks Mars controller to PS4 controller list
|
|
afd100f0
|
2021-06-18T17:37:46
|
|
Added support for the PowerA Fusion Pro 2 and the PDP Xbox Series X Afterglow and Blue controllers
|
|
839387ed
|
2021-06-17T22:09:13
|
|
video/dummy: Don't zero out the fake display mode before adding it.
The SDL_zero call was in the wrong place as a historical accident, I think.
|
|
268fbcd4
|
2021-06-17T11:23:47
|
|
Fixed compiler warning on Visual Studio
|
|
d8dba5bc
|
2021-06-17T11:22:08
|
|
Added support for the Logitech G923 racing wheel
|
|
7f261d3b
|
2021-06-15T00:35:13
|
|
wayland: Fix returning to a window from fullscreen without calling SetWindowSize
|
|
8da0dd17
|
2021-06-15T18:54:52
|
|
Oops. Renderer already queues viewport change
|
|
1fc51988
|
2021-06-15T18:49:55
|
|
Reset/re-apply viewport on frame start/target change. Fixes SDL_RenderSetLogicalSize on PSVita
|
|
0cad3023
|
2021-06-14T13:56:12
|
|
Removed reference to ant project.
The android-project-ant directory does not exist anymore.
|
|
2465444f
|
2021-06-14T21:27:09
|
|
Add missing dependencies
|
|
bc7ac134
|
2021-06-11T09:22:41
|
|
Windows: Fix SDL_GetBasePath() truncating paths
SDL_GetBasePath grows its path buffer for long paths, but GetModuleFileNameExW always truncates and succeeds,
so `len` was always equal to (buflen - 1) which is 127. This is easily fixed by checking for (buflen - 1) instead of buflen.
For paths longer than MAX_PATH, this problem sometimes got hidden by Windows path shortening ("C:\PROGRA~1\" etc.).
Tested on Windows 10 x64 19041 and 10586.
|
|
db5cd8c6
|
2021-06-12T14:57:34
|
|
joystick: virtual: Fix event injection for axes/hats
SDL_JoystickSetVirtualAxisInner() and SDL_JoystickSetVirtualHatInner()
did not properly sanitize the 'axis' and 'hat' parameters.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
|
|
f3cf019e
|
2021-06-12T13:25:34
|
|
joystick: Add missing comma in joystick drivers list
Without this comma it is impossible to enable both the Vita and Dummy
drivers at the same time.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
|
|
98f2e38b
|
2021-06-12T09:42:54
|
|
Use <sys/endian.h> for endian detection on NetBSD
Signed-off-by: Nia Alarie <nia@NetBSD.org>
|
|
bc9888c9
|
2021-06-12T14:55:24
|
|
OS2_GetDisplayModes: malloc a new copy of mode's driver data.
Based on a patch by Jochen Schäfer <josch1710@live.de> :
The problem is, that in the initialization code uses the same structure for
desktop_mode and current_mode. See SDL_os2video.c:OS2_VideoInit():
stSDLDisplay.desktop_mode = stSDLDisplayMode;
stSDLDisplay.current_mode = stSDLDisplayMode;
...
stSDLDisplayMode.driverdata = pDisplayData;
Then, if you call GetDisplayModes, current_mode will added to the modes
list, with the same driverdata pointer to desktop_mode.
SDL_AddDisplayMode( display, &display->current_mode );
When VideoQuit gets called, first the modes list gets freed including the
driverdata, the desktop_mode gets freed. See SDL_video.c:SDL_VideoQuit():
for (j = display->num_display_modes; j--;) {
SDL_free(display->display_modes[j].driverdata);
display->display_modes[j].driverdata = NULL;
}
SDL_free(display->display_modes);
display->display_modes = NULL;
SDL_free(display->desktop_mode.driverdata);
display->desktop_mode.driverdata = NULL;
So, the display_modes[j].driverdata gets freed, but desktop_mode->driverdata
points to the same memory, but is not NULL'ed. When desktop_mode->driverdata
gets freed the memory is already freed, and libcx crashes the application on
SDL_Quit.
|
|
d28437de
|
2021-06-12T08:00:50
|
|
SDL_keyboard.c: Add bounds guards when assigning to the scancode array.
Based on a patch by Jochen Schäfer <josch1710@live.de> :
On a T420 pressing the ACPI button for volume control, big scancodes
were emitted. This was causing an overflow, because missing guards.
|
|
eb15b4e9
|
2021-06-11T23:40:09
|
|
wayland: Drop SwapWindow calls for hidden windows
|
|
37d35a3e
|
2021-06-11T21:02:49
|
|
kmsdrm: hook up KMSDRM_GLES_DefaultProfileConfig for use.
Fixes #3678.
|
|
3c028141
|
2021-06-10T13:26:38
|
|
Update docs and fix typos
|
|
bbdd08e0
|
2021-06-10T13:20:39
|
|
Build without PIB support by default and add flag to enable it
|
|
a4442476
|
2021-06-10T12:14:14
|
|
Cleanup dead and duplicate code
|
|
c2b8b556
|
2021-06-10T12:06:28
|
|
Older api, not needed
|
|
dd2a2858
|
2021-06-10T12:00:56
|
|
Remove leftovers
|
|
2f248a2a
|
2021-06-11T04:00:32
|
|
SDL_cocoaevents.m: fix build against SDK < 10.12 after commit 0dd7024d.
|
|
f5122377
|
2021-06-10T14:06:32
|
|
Move SDL_IsXInputDevice check above actual joystick allocation
|
|
766d81ec
|
2021-06-10T14:01:04
|
|
Rewrite SDL_DINPUT_JoystickPresent method to avoid costly IDirectInput8_CreateDevice calls
|
|
a6da2fbf
|
2021-05-25T12:33:23
|
|
Rename haptic methods to avoid confusion with joystick:
`SDL_DINPUT_MaybeAddDevice`->`SDL_DINPUT_HapticMaybeAddDevice`
`SDL_DINPUT_MaybeRemoveDevice`->`SDL_DINPUT_HapticMaybeRemoveDevice`
`SDL_XINPUT_MaybeAddDevice`->`SDL_XINPUT_HapticMaybeAddDevice`
`SDL_XINPUT_MaybeRemoveDevice`->`SDL_XINPUT_HapticMaybeRemoveDevice`
|
|
73dc68a7
|
2021-05-19T17:52:08
|
|
Simplify and cleanup DirectInput joystick backend code:
- Do not call IDirectInputDevice8_QueryInterface(device, &IID_IDirectInputDevice8,...) on DIRECTINPUTDEVICE8 device
- Get joystick VendorID and ProductID via IDirectInputDevice8_GetProperty(.., DIPROP_VIDPID, ..) call instead of messing with DIDEVICEINSTANCE.guidProduct
- Normalize HID device interface path to upper case for stable operation of XInput check
- Remove useless RawInput calls in SDL_IsXInputDevice() - just check for "IG_" string in HID device interface path that we already have
There shouldn't be any observable behavior changes.
|
|
f2f759dc
|
2021-02-26T15:34:34
|
|
Remove not used DirectInput ignored_devices list
|
|
adc2d362
|
2021-02-26T15:33:41
|
|
Remove outdated and not used WIN_IsXInputDevice code
|
|
0e62926e
|
2021-06-10T16:28:32
|
|
Fixed crash if vendor or product strings are empty
|
|
25fc40b0
|
2021-06-10T13:56:22
|
|
stdinc: Silence clang warning for -Wimplicit-fallthrough.
In a more ideal world, we'd use the appropriate `__attribute__` here, but
it's one thing in a public header that probably shouldn't be there at all, so
this is good enough for now.
Fixes #4307.
|
|
e65a6583
|
2021-06-09T22:10:20
|
|
x11: Add a hint to force override-redirect.
Fixes #3776.
|
|
642fa0e3
|
2021-06-09T21:18:11
|
|
configure: Enable KMSDRM target by default.
|
|
56e96254
|
2021-06-09T13:38:05
|
|
build-scripts: modernized gcc-fat.sh for Big Sur and ARM64.
Put these in "clang-fat.sh" and "clang++-fat.sh" in case someone still needs
32-bit x86 support from the old scripts.
Fixes #4350.
|
|
cb5e8635
|
2021-06-08T13:15:24
|
|
Fixed crash after reinitializing libusb HID support
|
|
c33e3c15
|
2021-06-07T18:24:57
|
|
testwm2: draw various debug logging into the window itself
Renderer output size, window position/size, display bounds, etc.
Uses new SDLTest_CommonDrawWindowInfo function in test_common.
|
|
e13b43ac
|
2021-06-05T12:44:08
|
|
Don't skip sending wakeups for the current thread
We can be in a situation where we receive a win32 hook callback on the same
thread that is currently waiting. In that case, we do still need to trigger
a wakeup when an event is pushed because the hook itself won't necessarily
do that (depending on what we return from the hook).
|
|
b992b915
|
2021-06-05T11:57:30
|
|
Optimize SDL_WaitEventTimeout() for the SDL_PollEvent() case
There's no sense in doing all the setup for waiting if we're just polling.
|
|
85b51e6c
|
2021-06-05T11:46:47
|
|
Fall back to polling normally if not operating the win32 message loop
In this condition, we cannot safely wait/wake on events.
|
|
e13d5df0
|
2021-06-05T11:41:55
|
|
Call SDL_SendWakeupEvent() directly from SDL_PeepEvent()
SDL_PeepEvent() is a documented public API, so we must properly support
waking a waiting thread in SDL_WaitEventTimeout() with SDL_PeepEvent().
|
|
d956636c
|
2021-06-04T18:39:47
|
|
wayland: Implement FlashWindow
|
|
64724db0
|
2021-06-04T19:55:30
|
|
Implement bare minimum for SDL_FlashWindow
|
|
64c40b90
|
2021-06-04T14:34:21
|
|
Updated copyright date
|
|
37b093ea
|
2021-06-05T00:05:56
|
|
test/checkkeysthreads: build fixes, and add to os2 makefile.
|
|
0dd7024d
|
2021-03-12T21:58:20
|
|
Modifies WaitEvent and WaitEventTimeout to actually wait instead of polling
When possible use native os functions to make a blocking call waiting for
an incoming event. Previous behavior was to continuously poll the event
queue with a small delay between each poll.
The blocking call uses a new optional video driver event,
WaitEventTimeout, if available. It is called only if an window
already shown is available. If present the window is designated
using the variable wakeup_window to receive a wakeup event if
needed.
The WaitEventTimeout function accept a timeout parameter. If
positive the call will wait for an event or return if the timeout
expired without any event. If the timeout is zero it will
implement a polling behavior. If the timeout is negative the
function will block indefinetely waiting for an event.
To let the main thread sees events sent form a different thread
a "wake-up" signal is sent to the main thread if the main thread
is in a blocking state. The wake-up event is sent to the designated
wakeup_window if present.
The wake-up event is sent only if the PushEvent call is coming
from a different thread. Before sending the wake-up event
the ID of the thread making the blocking call is saved using the
variable blocking_thread_id and it is compared to the current
thread's id to decide if the wake-up event should be sent.
Two new optional video device methods are introduced:
WaitEventTimeout
SendWakeupEvent
in addition the mutex
wakeup_lock
which is defined and initialized but only for the drivers supporting the
methods above.
If the methods are not present the system behaves as previously
performing a periodic polling of the events queue.
The blocking call is disabled if a joystick or sensor is detected
and falls back to previous behavior.
|
|
40e5ce7f
|
2021-06-04T13:23:54
|
|
This delay is no longer needed on Steam Link hardware
|
|
cd67f42d
|
2021-06-04T12:20:47
|
|
add Linux mapping for brook fighting board (#4416)
* added controller mapping for Brook fighting board
* fixed formatting on Brook Universal Fighting Board controller mapping entry
|
|
89fd9821
|
2021-05-26T21:33:25
|
|
Add controller mapping for Atari vcs controllers
This add controller mappings for the Atari vcs (modern) controller as
well as the classic controller, for both bluetooth and USB connectivity.
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
|
|
de4ba6eb
|
2021-05-27T12:41:41
|
|
Ignore the device version for Atari vcs controllers
At least on bluetooth the guid user the version reported by the
bluetooth device. Which for Atari vcs controllers is the firmware
version. However the mapping will stay the same regardless of firmware
version, so ignore the version entirely to avoid needing a new mapping
entry for each firmware version.
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
|
|
6de33c09
|
2021-06-03T09:05:33
|
|
Clarify why we're skipping Game Controller framework supported devices in hid.c
|