Opened 2 years ago

Last modified 4 weeks ago

#11711 new defect

BACKENDS: Android (Amazon Fire HD8/2020) - Touchpad mode issue ("mouse mode" not working, stuck in "direct mode")

Reported by: Expello Owned by:
Priority: normal Component: Port: Android
Version: Keywords: amazon fire hd 8 touchpad mode
Cc: Expello Game:

Description (last modified by Expello)

Hi,

My Hardware:
AMAZON Fire HD 8 (10th generation |2020)
OS: Fire OS 7.3.1.3 (Android 9 base)

I change the Control settings in "Touchpad mouse mode", but my touchpad is always in direct mode.

I tested the Playstore version, the latest stable (2.1.1) and the nightly build (2.3.0 git363-g80c29d1c94).

In GUI or in Game...always in direct mode.

Thanks for your help!

Change History (5)

comment:1 by Expello, 2 years ago

Description: modified (diff)

comment:2 by Expello, 2 years ago

Description: modified (diff)

comment:3 by Expello, 2 years ago

Summary: "Touchpad mouse mode" doesn´t work | always in "direct mode" (AMAZON FIRE HD 8 | 2020)ANDROID: "Touchpad mouse mode" doesn´t work | always in "direct mode" (AMAZON FIRE HD 8 | 2020)

comment:4 by raziel-, 2 years ago

Keywords: touchpad added; toucpad mouse removed
Summary: ANDROID: "Touchpad mouse mode" doesn´t work | always in "direct mode" (AMAZON FIRE HD 8 | 2020)BACKENDS: Android (Amazon Fire HD8/2020) - Touchpad mode issue ("mouse mode" not working, stuck in "direct mode")

comment:5 by jacobhyman, 4 weeks ago

It looks like the check to see if the event came from a stylus here has a problem. According to the Android InputDevice documentation, SOURCE_STYLUS "merely indicates that an input device is capable of obtaining input from a stylus." So what is happening is that if the device reports it is capable of using a stylus, all touch input is being treated as mouse input.

It appears the fix to check for stylus input is to instead check the tool type returned by MotionEvent#getToolType(int). I wrote a small test app and confirmed that for touch events the Fire HD8 (2020) tablet has the InputDevice flag for SOURCE_STYLUS always set. I also confirmed that checking the ToolType of a touch screen event returned TOOL_TYPE_FINGER and not TOOL_TYPE_STYLUS. I don't think this is specific to Fire tablets; I was able to reproduce it on an emulated device, but I don't have any other real tablets.

Note: See TracTickets for help on using tickets.