Fix joystick and trackpad regression.
Change-Id: I33b6756f95a6b0725ffa210f341da3c98426491b
diff --git a/services/input/InputDispatcher.cpp b/services/input/InputDispatcher.cpp
index b9029a7..85ce38a 100644
--- a/services/input/InputDispatcher.cpp
+++ b/services/input/InputDispatcher.cpp
@@ -4279,6 +4279,12 @@
memento.setPointers(entry);
return true;
}
+ if (actionMasked == AMOTION_EVENT_ACTION_MOVE
+ && (entry->source & (AINPUT_SOURCE_CLASS_JOYSTICK
+ | AINPUT_SOURCE_CLASS_NAVIGATION))) {
+ // Joysticks and trackballs can send MOVE events without corresponding DOWN or UP.
+ return true;
+ }
#if DEBUG_OUTBOUND_EVENT_DETAILS
LOGD("Dropping inconsistent motion pointer up/down or move event: "
"deviceId=%d, source=%08x, actionMasked=%d",