f6149c3229
Two issues: 1. First, due to an inverted conditional in the input dispatcher, we were reporting touches as long touches and vice-versa to the power manager. 2. Power manager user activity cheek event suppression also suppresses touch events (but not long touch or up events). As a result, if cheek event suppression was enabled, touches would not poke the user activity timer. However due to the above logic inversion, this actually affected long touches. Net result, if cheek suppression was enabled in the power manager and you held your thumb on the screen long enough, the phone would go to sleep! Cheek event suppression is commonly turned on when making a phone call. Interestingly, it does not seem to get turned off afterward... This change fixes the logic inversion and exempts touches from the cheek suppression. The reason we do the latter is because the old behavior was actually harmful in other ways too: a touch down would be suppressed but not a long touch or the touch up. This would cause bizarre behavior if you touched the screen while it was dimmed. Instead of brightening immediately, it would brighten either when you lifted your finger or 300ms later, whichever came first. Bug: 3154895 Change-Id: Ied9ccec6718fbe86506322ff47a4e3eb58f81834 |
||
---|---|---|
.. | ||
tests | ||
Android.mk | ||
EGLUtils.cpp | ||
EventHub.cpp | ||
EventRecurrence.cpp | ||
FramebufferNativeWindow.cpp | ||
GraphicBuffer.cpp | ||
GraphicBufferAllocator.cpp | ||
GraphicBufferMapper.cpp | ||
GraphicLog.cpp | ||
Input.cpp | ||
InputDispatcher.cpp | ||
InputManager.cpp | ||
InputReader.cpp | ||
InputTransport.cpp | ||
IOverlay.cpp | ||
KeyCharacterMap.cpp | ||
KeyLayoutMap.cpp | ||
KeyLayoutMap.h | ||
MODULE_LICENSE_APACHE2 | ||
NOTICE | ||
Overlay.cpp | ||
PixelFormat.cpp | ||
Rect.cpp | ||
Region.cpp |