diff options
| -rw-r--r-- | include/ui/Input.h | 9 | ||||
| -rw-r--r-- | libs/ui/InputReader.cpp | 2 | ||||
| -rw-r--r-- | libs/ui/tests/InputReader_test.cpp | 2 |
3 files changed, 11 insertions, 2 deletions
diff --git a/include/ui/Input.h b/include/ui/Input.h index 8c6018bfeeb2..4e809d6a82d6 100644 --- a/include/ui/Input.h +++ b/include/ui/Input.h @@ -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. diff --git a/libs/ui/InputReader.cpp b/libs/ui/InputReader.cpp index 3197ab229ad7..8000b2dfc873 100644 --- a/libs/ui/InputReader.cpp +++ b/libs/ui/InputReader.cpp @@ -806,7 +806,7 @@ SwitchInputMapper::~SwitchInputMapper() { } uint32_t SwitchInputMapper::getSources() { - return 0; + return AINPUT_SOURCE_SWITCH; } void SwitchInputMapper::process(const RawEvent* rawEvent) { diff --git a/libs/ui/tests/InputReader_test.cpp b/libs/ui/tests/InputReader_test.cpp index de4b05ae3d3d..c53d9c02e0f6 100644 --- a/libs/ui/tests/InputReader_test.cpp +++ b/libs/ui/tests/InputReader_test.cpp @@ -1356,7 +1356,7 @@ TEST_F(SwitchInputMapperTest, GetSources) { SwitchInputMapper* mapper = new SwitchInputMapper(mDevice); addMapperAndConfigure(mapper); - ASSERT_EQ(uint32_t(0), mapper->getSources()); + ASSERT_EQ(uint32_t(AINPUT_SOURCE_SWITCH), mapper->getSources()); } TEST_F(SwitchInputMapperTest, GetSwitchState) { |