osfans / trime

同文安卓輸入法平臺3.x/Android-rime/Rime Input Method Engine for Android
http://osfans.github.io/trime/
GNU General Public License v3.0
3.08k stars 372 forks source link

Compatibility with gamepads (Xbox controllers) #991

Open syu-id opened 1 year ago

syu-id commented 1 year ago

Describe the bug

Trime 似乎会干涉连接到 Android 的游戏手柄,Trime 启用时,手柄的按钮(如 A, B, X, Y)在第一次按下后会一直处于按下状态。 如果将当前输入法切换为其他输入法(如 Gboard),或在 Android 键盘列表中禁用 Trime,则不会出现上述问题。

It seems Trime interferes with Xbox controllers (either connected via Bluetooth or USB cable to the phone). When the Trime keyboard is enabled, the gamepad's buttons (e.g., A, B, X, Y) will constantly be in the pressed-down state after the first press. The issue disappears if Trime is disabled.

To Reproduce

Steps to reproduce the bug:

  1. Activate Trime as the current input method (e.g., by typing Chinese with Trime in WeChat)
  2. Connect an Xbox One controller to the phone
  3. Open https://gamepad-tester.com/ on the phone and test the gamepad
  4. Press some buttons (e.g., A, B, X, Y, LB, RB). You will see those buttons do not reset from the pressed-down state (see the states of B0-B5 and B8-B11 in the screenshot below).

Screenshot

Smartphone (please complete the following information):

syu-id commented 1 year ago

Crash log that might be pertinent to this issue (Trime crashed when switching to Gboard while an Xbox controller was connected to my phone): com.osfans.trime-2023-04-07T07_31_50Z.txt

wxyzh commented 1 year ago

https://github.com/osfans/trime/commit/a3e27a5235e79757945754d2331f468b23e8c5e8 fixed crashed when Switch ime. your can try the last commit version on action.

WhiredPlanck commented 8 months ago

请看新版本有无此问题。每夜版:https://github.com/osfans/trime/releases/tag/nightly