From 999f782ad3ef09d7db8ecc56bc6f1cf415bfea84 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Wed, 22 Oct 2025 10:44:08 -0700 Subject: [PATCH] Be more selective when blacklisting controller touchpads On Android, the PS4 controller is called "Wireless Controller Touchpad" Fixes https://github.com/libsdl-org/SDL/issues/14294 --- src/joystick/SDL_gamepad.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/joystick/SDL_gamepad.c b/src/joystick/SDL_gamepad.c index 826d0020f4..c4dce306d1 100644 --- a/src/joystick/SDL_gamepad.c +++ b/src/joystick/SDL_gamepad.c @@ -189,6 +189,7 @@ static const struct SDL_GamepadBlacklistWords SDL_gamepad_blacklist_words[] = { #ifdef SDL_PLATFORM_LINUX {" Motion Sensors", GAMEPAD_BLACKLIST_END}, // Don't treat the PS3 and PS4 motion controls as a separate gamepad {" IMU", GAMEPAD_BLACKLIST_END}, // Don't treat the Nintendo IMU as a separate gamepad + {" Touchpad", GAMEPAD_BLACKLIST_END}, // "Sony Interactive Entertainment DualSense Wireless Controller Touchpad" // Don't treat the Wii extension controls as a separate gamepad {" Accelerometer", GAMEPAD_BLACKLIST_END}, @@ -200,9 +201,7 @@ static const struct SDL_GamepadBlacklistWords SDL_gamepad_blacklist_words[] = { // The Google Pixel fingerprint sensor, as well as other fingerprint sensors, reports itself as a joystick {"uinput-", GAMEPAD_BLACKLIST_BEGIN}, - {" TouchPad", GAMEPAD_BLACKLIST_END}, // "SynPS/2 Synaptics TouchPad" - {" Touchpad", GAMEPAD_BLACKLIST_END}, // "Sony Interactive Entertainment DualSense Wireless Controller Touchpad" - {"Synaptics ", GAMEPAD_BLACKLIST_BEGIN}, // "Synaptics TM2768-001" + {"Synaptics ", GAMEPAD_BLACKLIST_ANYWHERE}, // "Synaptics TM2768-001", "SynPS/2 Synaptics TouchPad" {"Trackpad", GAMEPAD_BLACKLIST_ANYWHERE}, {"Clickpad", GAMEPAD_BLACKLIST_ANYWHERE}, // "PG-90215 Keyboard", "Usb Keyboard Usb Keyboard Consumer Control", "Framework Laptop 16 Keyboard Module - ISO System Control"