diff options
Diffstat (limited to 'include/androidfw')
-rw-r--r-- | include/androidfw/InputDevice.h | 5 | ||||
-rw-r--r-- | include/androidfw/KeyLayoutMap.h | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/include/androidfw/InputDevice.h b/include/androidfw/InputDevice.h index c9554dc..2eac544 100644 --- a/include/androidfw/InputDevice.h +++ b/include/androidfw/InputDevice.h @@ -66,9 +66,11 @@ public: float fuzz; }; - void initialize(int32_t id, const String8& name, const String8& descriptor); + void initialize(int32_t id, int32_t generation, + const String8& name, const String8& descriptor); inline int32_t getId() const { return mId; } + inline int32_t getGeneration() const { return mGeneration; } inline const String8 getName() const { return mName; } inline const String8 getDescriptor() const { return mDescriptor; } inline uint32_t getSources() const { return mSources; } @@ -97,6 +99,7 @@ public: private: int32_t mId; + int32_t mGeneration; String8 mName; String8 mDescriptor; uint32_t mSources; diff --git a/include/androidfw/KeyLayoutMap.h b/include/androidfw/KeyLayoutMap.h index 5408680..e7f22a2 100644 --- a/include/androidfw/KeyLayoutMap.h +++ b/include/androidfw/KeyLayoutMap.h @@ -64,7 +64,8 @@ class KeyLayoutMap : public RefBase { public: static status_t load(const String8& filename, sp<KeyLayoutMap>* outMap); - status_t mapKey(int32_t scanCode, int32_t* keyCode, uint32_t* flags) const; + status_t mapKey(int32_t scanCode, int32_t usageCode, + int32_t* outKeyCode, uint32_t* outFlags) const; status_t findScanCodesForKey(int32_t keyCode, Vector<int32_t>* outScanCodes) const; status_t mapAxis(int32_t scanCode, AxisInfo* outAxisInfo) const; @@ -78,11 +79,14 @@ private: uint32_t flags; }; - KeyedVector<int32_t, Key> mKeys; + KeyedVector<int32_t, Key> mKeysByScanCode; + KeyedVector<int32_t, Key> mKeysByUsageCode; KeyedVector<int32_t, AxisInfo> mAxes; KeyLayoutMap(); + const Key* getKey(int32_t scanCode, int32_t usageCode) const; + class Parser { KeyLayoutMap* mMap; Tokenizer* mTokenizer; |