dolphin/Source/Core/InputCommon/ControllerInterface
JosJuice bd92388d2f Android: Rework input device hotplug
Previously, when an input device was connected or disconnected, we would
recreate all devices. This commit makes it so we only touch the relevant
device instead. This matters because recreating a device causes us to
drop all held buttons for that device. Due to Android only delivering
inputs as events, we're unable to poll for currently held buttons when
recreating a device.

This recently became a problem for users of Ayn devices due to a
firmware update. Every now and then, something about the display
viewports changes, triggering an update to an input device that I assume
is a touch input device. This input device isn't something users
normally map in Dolphin's controller settings, but it changing was
causing Dolphin to drop all held buttons for the device's built-in
gamepad as well as any other connected gamepads.
2026-02-08 10:38:43 +01:00
..
Android Android: Rework input device hotplug 2026-02-08 10:38:43 +01:00
DInput DInputKeyboardMouse: Always report all possible buttons 2026-01-07 01:08:34 +01:00
DualShockUDPClient Remove unused imports 2026-01-25 16:12:15 +01:00
evdev InputCommon: Rename AddAnalogInputs to AddFullAnalogSurfaceInputs. 2024-11-03 15:06:50 -06:00
ForceFeedback InputCommon: Remove some IOKit leftovers. 2024-03-11 01:11:13 -05:00
Pipes Remove unused imports 2026-01-25 16:12:15 +01:00
Quartz Use 'contains' method 2024-08-15 14:20:16 -07:00
SDL ControllerInterface: Turn off SDL's GameCube controller adapter handling when Dolphin is configured to use the adapter. 2025-12-09 16:51:41 -06:00
SteamDeck Remove unused imports 2026-01-25 16:12:15 +01:00
Touch ControllerInterface/Android: Rip out ButtonManager 2023-03-03 22:28:23 +01:00
WGInput Fix various typos and spelling mistakes 2026-01-17 20:11:38 +01:00
Wiimote Fix various typos and spelling mistakes 2026-01-17 20:11:38 +01:00
Win32 ControllerInterface: Fix Windows deadlock 2025-06-28 14:00:27 -07:00
XInput Input: Improve Controller Interface devices threading 2023-12-18 21:45:22 +02:00
Xlib ControllerInterface/Xlib: Combine keycodes with the same name to fix non-working inputs. 2025-06-12 04:50:13 -05:00
ControllerInterface.cpp Common: Remove the string parameters from the HookableEvent interface. 2025-11-06 22:34:40 -06:00
ControllerInterface.h Common: Remove the string parameters from the HookableEvent interface. 2025-11-06 22:34:40 -06:00
CoreDevice.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
CoreDevice.h InputCommon: Make InputDetector::Start take a span instead of a vector. 2025-06-14 16:28:09 -05:00
InputBackend.cpp InputCommon: Add Win32 InputBackend class. 2024-03-11 03:25:31 -05:00
InputBackend.h InputCommon: Add Win32 InputBackend class. 2024-03-11 03:25:31 -05:00
MappingCommon.cpp DolphinQt: Make Calibration autocomplete when data is "sensible" and stick is returned to neutral position. 2025-06-24 02:18:25 -05:00
MappingCommon.h DolphinQt: Make Calibration autocomplete when data is "sensible" and stick is returned to neutral position. 2025-06-24 02:18:25 -05:00