From deffe07c225c15ce780fad4a500d082f2dbdabea Mon Sep 17 00:00:00 2001 From: Jeff Brown Date: Fri, 26 Aug 2011 18:38:46 -0700 Subject: Prioritize INPUT_PROP_DIRECT first. If the device tells us it's really direct, then it's direct. Change-Id: I83875cf47e865ff6f0def149ad0c68db24d9dc4a --- services/input/InputReader.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'services/input/InputReader.cpp') diff --git a/services/input/InputReader.cpp b/services/input/InputReader.cpp index bfcf8e048111..6ff05c9d855c 100644 --- a/services/input/InputReader.cpp +++ b/services/input/InputReader.cpp @@ -2523,17 +2523,17 @@ void TouchInputMapper::configureParameters() { } } - if (getEventHub()->hasRelativeAxis(getDeviceId(), REL_X) + if (getEventHub()->hasInputProperty(getDeviceId(), INPUT_PROP_DIRECT)) { + // The device is a touch screen. + mParameters.deviceType = Parameters::DEVICE_TYPE_TOUCH_SCREEN; + } else if (getEventHub()->hasInputProperty(getDeviceId(), INPUT_PROP_POINTER)) { + // The device is a pointing device like a track pad. + mParameters.deviceType = Parameters::DEVICE_TYPE_POINTER; + } else if (getEventHub()->hasRelativeAxis(getDeviceId(), REL_X) || getEventHub()->hasRelativeAxis(getDeviceId(), REL_Y)) { // The device is a cursor device with a touch pad attached. // By default don't use the touch pad to move the pointer. mParameters.deviceType = Parameters::DEVICE_TYPE_TOUCH_PAD; - } else if (getEventHub()->hasInputProperty(getDeviceId(), INPUT_PROP_POINTER)) { - // The device is a pointing device like a track pad. - mParameters.deviceType = Parameters::DEVICE_TYPE_POINTER; - } else if (getEventHub()->hasInputProperty(getDeviceId(), INPUT_PROP_DIRECT)) { - // The device is a touch screen. - mParameters.deviceType = Parameters::DEVICE_TYPE_TOUCH_SCREEN; } else { // The device is a touch pad of unknown purpose. mParameters.deviceType = Parameters::DEVICE_TYPE_POINTER; -- cgit v1.2.3-59-g8ed1b