diff options
Diffstat (limited to 'libs')
-rw-r--r-- | libs/input/InputReader.cpp | 13 | ||||
-rw-r--r-- | libs/input/InputReader.h | 2 |
2 files changed, 10 insertions, 5 deletions
diff --git a/libs/input/InputReader.cpp b/libs/input/InputReader.cpp index 03852a5..b1b7c7d 100644 --- a/libs/input/InputReader.cpp +++ b/libs/input/InputReader.cpp @@ -2831,6 +2831,13 @@ void TouchInputMapper::configureParameters() { mParameters.deviceType == Parameters::DEVICE_TYPE_TOUCH_SCREEN && getDevice()->isExternal(); } + + // Initial downs on external touch devices should wake the device. + // Normally we don't do this for internal touch screens to prevent them from waking + // up in your pocket but you can enable it using the input device configuration. + mParameters.wake = getDevice()->isExternal(); + getDevice()->getConfiguration().tryGetProperty(String8("touch.wake"), + mParameters.wake); } void TouchInputMapper::dumpParameters(String8& dump) { @@ -3733,11 +3740,7 @@ void TouchInputMapper::sync(nsecs_t when) { getContext()->fadePointer(); } - // Initial downs on external touch devices should wake the device. - // We don't do this for internal touch screens to prevent them from waking - // up in your pocket. - // TODO: Use the input device configuration to control this behavior more finely. - if (getDevice()->isExternal()) { + if (mParameters.wake) { policyFlags |= POLICY_FLAG_WAKE_DROPPED; } } diff --git a/libs/input/InputReader.h b/libs/input/InputReader.h index a8bb636..eb5746b 100644 --- a/libs/input/InputReader.h +++ b/libs/input/InputReader.h @@ -1214,6 +1214,8 @@ protected: GESTURE_MODE_SPOTS, }; GestureMode gestureMode; + + bool wake; } mParameters; // Immutable calibration parameters in parsed form. |