RetroArch
RetroArch copied to clipboard
[Android] Touchscreen disabled when external input device is connected (USB, Bluetooth, gamepad or keyboard...)
Description
Touchscreen does not register clicks (only scrolling) when a USB or Bluetooth gamepad/keyboard/... is plugged.
Expected behavior
Tapping on the menu should enable to navigate into options.
Actual behavior
Taps are not registered anymore. Just scrolling.
Steps to reproduce the bug
- Start RA
- Check that touchscreen is working in the menu
- Plug USB gamepad
- Check that touchscreen is not working anymore in the menu (nor in games, for instance NDS ones)
Issue also occurs with different types of input devices : USB or Bluetooth keyboards etc.
Bisect Results
Issue does not occur in the 3 years old RA from the Play Store
Version/Commit
RetroArch 1.17 (official APK)
Environment information
Android 14 Samsung A34 Razer Kishi 2 USB controller
Update : issue actually seems to occur with any kind of external input device (keyboard, pads), both USB and Bluetooth.
I have the same exact issues on different android devices where it is broken as described. Not only does the menus not respond to clicks, but games that use zapper/light guns do not respond any longer to taps either. It will work until usb or bluetooth is added/turned on, then will not work even when turned off until retroarch is closed and reopened.
I have the same issue as well. Screen stops capturing taps the moment I plug in the controller. Only scroll works in a odd way. Android 14 Google Pixel 4a 5g
Since some games require a controller input while using a light gun, it makes the actual gameplaying on android unable to be done, even if the menus can be worked around with the controller at the moment. I tried playing around with a lot of input options, but nothing changed.
Among 4 controllers I have tested for Android: Backbone One PS Edition, GameSir G8 Galileo, 8bitdo SN30 Pro 2, and Razer Raiju, the Razer Raiju is the only one that doesn't have this touchscreen issue, strangely enough. The last time these controllers + touchscreen worked normally was in RetroArch v1.15, but v1.16 and v1.17 are having touchscreen issues with certain gaming controllers after one touch.
I also made a topic weeks ago #16227 and thought it was just the Backbone One PlayStation Edition but it wasn't just that controller, it seems, as the Razer Raiju was the 2nd controller I tested at the time which was fine.
Something must have happened during the development of v1.16 that caused this issue.
Anyone could find any work around, on ios works well
I've seen other threads pop up about same issue, but no solution yet, not for menu tapping nor for being able to play any light gun games.
I went to the libretro discord to see if it was brought up there, other people asked about it but got no response, so I don't know the status, or what we can do, or even what was the thing that broke it. It's been broken since January, I think.
This issue exist even without any usb device plugged or any bluetooth default phone touchscreen doesnt work after 1.15.0
https://github.com/libretro/RetroArch/issues/15757 https://github.com/libretro/RetroArch/issues/16632 https://github.com/libretro/RetroArch/issues/16227 https://github.com/libretro/RetroArch/issues/16575 https://github.com/libretro/RetroArch/issues/16091 https://github.com/libretro/RetroArch/issues/15672#issuecomment-1709879276
Same issue here as described by everyone above; on Samsung Galaxy S24 Ultra with Backbone 2nd Generation Xbox Controller (USB C)
Same issue here with a Gamesir x2 bluetooth. I can scroll through menus, but that's it. Tapping doesn't work. Leaving retroarch (tabbing out, I guess) and reentering let's me tap once, but then it stops working again.
Edit: Samsung Galaxy S24 Ultra running Android 14. Using Retroarch 1.16.0
Can you guys be sure to say what kind of phone you have? It seems like a device-specific issue (maybe Samsung-related?) but we can't really tell and none of us has any devices with the issue.
Phone - Samsung Galaxy S24 Ultra Model Name - SM-S928U Hardware Version - REV1.0 Android Version - 14 One UI Version - 6.1
Controller - Backbone USB C (2nd Generation) Xbox Version
RetroArch Version - 1.19.0
Can you guys be sure to say what kind of phone you have? It seems like a device-specific issue (maybe Samsung-related?) but we can't really tell and none of us has any devices with the issue.
Phones - Samsung Galaxy S21 Ultra and Galaxy S22 Ultra Model Name - SM-G998U and SM-S9080 Android Version - 14 One UI Version - 6.1 RetroArch versions with this issue - v1.16 to current
Controllers with the touchscreen issue (both phones) - Backbone One: PlayStation Edition, 8bitdo SN30 Pro 2, GameSir G8 Galileo. First touch is fine but any further touches don't register except scrolling while any of these controllers are in use. Disconnecting work, the touchscreen works fine again
Controllers without the touchscreen issue (both phones) - Razer Raiju. So far the only one that I can use the touchscreen on newer versions.
I'm sure this issue has started since June 1, 2023 during development for v1.16. No issues with v1.15.
Tapping a button on the overlay leaves that button held down, even after I release my finger. It's like I never lifted it off. This is also consistent with the weird scrolling behavior I get in menus, where tapping anywhere on the bottom half of the screen snaps the menu to the bottom, like I swiped instantly from the first tap to the second.
Samsung Galaxy S24 Ultra Android 14 One UI version 6.1 RetroArch 1.16.0
I also have a Samsung Galaxy S24 Ultra, we seem to have that in common. And it's like Luke said, you get one tap, and it's like it never lifts up, whether in menu or in a game using touch screen with a light gun. Didn't always happen with the device, started around probably late January or early February right after updating Retroarch, as before that I was able to play NES zapper games no problem with touch screen. I usually update from the github here every two weeks.
Being as I was actually going through zapper games at the time of updating RA, was pretty sure it might have been issue from the version of Retroarch, and not an update from the phone. I only wish I had gone back to write down versions or dates.
Samsung S22 XBOX wireless controller
This commit breaks the touchpad input, see https://github.com/libretro/RetroArch/issues/15757
https://github.com/libretro/RetroArch/commit/abcd42777f7c17559cf6eb509dc86aca63e48527 refactor: rewrite input handling to better support AINPUT_SOURCE_STYLUS (https://github.com/libretro/RetroArch/pull/15597)
Also having this issue still on July 17 2024, pretty much breaks the usability of RetroArch on Android while a controller is connected
On which exact version are you having the issue? Are you sure you are testing on nightly?
My bad that was all it was nightly is working perfectly 😆 using RetroArch aa64 nightly
Alright, if we're all set here, can someone close this issue?