Fix getSwitchState.

InputReader::getSwitchState always returns AKEY_STATE_UNKNOWN
because SwitchInputMapper::getSources() returns 0 which cannot
match any source mask including AINPUT_SOURCE_ANY.  As a result
initial lid switch detection is broken.

This change adds a new source constant AINPUT_SOURCE_SWITCH
that indicates that the source has switches.

Change-Id: I5321ecf0ce84f1c2b4535f6c163d3f4dcf9b7a9b
This commit is contained in:
Jeff Brown 2011-01-19 18:41:38 -08:00
parent 6c4b44558d
commit 430c21ea87
1 changed files with 9 additions and 0 deletions

View File

@ -38,6 +38,15 @@ enum {
AKEY_EVENT_FLAG_START_TRACKING = 0x40000000
};
enum {
/*
* Indicates that an input device has switches.
* This input source flag is hidden from the API because switches are only used by the system
* and applications have no way to interact with them.
*/
AINPUT_SOURCE_SWITCH = 0x80000000,
};
/*
* Maximum number of pointers supported per motion event.
* Smallest number of pointers is 1.