From ecc7adef2ef88428bd493ca1b21fc42a26b0fdb8 Mon Sep 17 00:00:00 2001 From: Jeff Brown Date: Thu, 18 Aug 2011 11:20:58 -0700 Subject: [PATCH] Input system bug fixes, particularly for stylus. Bug: 5049148 Finished stylus support, including support for indirect stylus and mouse tools. Added TILT axis. When stylus tilt X/Y is available, it is transformed into an orientation and tilt inclination which is a more convenient representation and a simpler extension to the exiting API. Touch devices now only report touch data using a single input source. Previously touch devices in pointer mode would report both absolute touch pad data and cooked pointer gestures. Now we just pick one. The touch device switches modes as needed when the focused application enables/disables pointer gestures. This change greatly simplifies the code and reduces the load on the input dispatcher. Fixed an incorrect assumption that the value of ABS_(MT_)DISTANCE would be zero whenever the stylus was in direct contact. It appears that the correct way to determine whether the stylus is in direct contact (rather than hovering) is by checking for a non-zero reported pressure. Added code to read the initial state of tool buttons and axis values when the input devices are initialized or reset. This fixes problems where the input mapper state might have the wrong initial state. Moved responsibility for cancelling pending inputs (keys down, touches, etc.) to the InputDispatcher by sending it a device reset notification. This frees the InputReader from having to synthesize events during reset, which was cumbersome and somewhat brittle to begin with. Consolidated more of the common accumulator logic from SingleTouchInputMapper and MultiTouchInputMapper into TouchInputMapper. Improved the PointerLocation output. Change-Id: I595d3647f7fd7cb1e3eff8b3c76b85043b5fe2f0 --- include/ui/KeycodeLabels.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/ui/KeycodeLabels.h b/include/ui/KeycodeLabels.h index 8383957cdf..2efe8ca0ee 100755 --- a/include/ui/KeycodeLabels.h +++ b/include/ui/KeycodeLabels.h @@ -278,6 +278,8 @@ static const KeycodeLabel AXES[] = { { "WHEEL", 21 }, { "GAS", 22 }, { "BRAKE", 23 }, + { "DISTANCE", 24 }, + { "TILT", 25 }, { "GENERIC_1", 32 }, { "GENERIC_2", 33 }, { "GENERIC_3", 34 }, -- 2.11.0