diff options
author | Michael Wright <michaelwr@google.com> | 2014-09-02 07:09:26 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-09-02 07:09:26 +0000 |
commit | 53047e593dc7cc1d2cfb651e17373dfa7ff57fc1 (patch) | |
tree | 74e041bb77c85af774f924909775956df9e7f739 /services/inputflinger | |
parent | bdf410a8c21b07d97d55333efe5e7d376142a223 (diff) | |
parent | 883fccb5f89c005502af27a18322f9fa302ac1b3 (diff) | |
download | frameworks_native-53047e593dc7cc1d2cfb651e17373dfa7ff57fc1.zip frameworks_native-53047e593dc7cc1d2cfb651e17373dfa7ff57fc1.tar.gz frameworks_native-53047e593dc7cc1d2cfb651e17373dfa7ff57fc1.tar.bz2 |
am 883fccb5: am bcbf97ef: Add logging for switch state
* commit '883fccb5f89c005502af27a18322f9fa302ac1b3':
Add logging for switch state
Diffstat (limited to 'services/inputflinger')
-rw-r--r-- | services/inputflinger/InputReader.cpp | 14 | ||||
-rw-r--r-- | services/inputflinger/InputReader.h | 3 |
2 files changed, 12 insertions, 5 deletions
diff --git a/services/inputflinger/InputReader.cpp b/services/inputflinger/InputReader.cpp index 8295c4c..b7c7ff4 100644 --- a/services/inputflinger/InputReader.cpp +++ b/services/inputflinger/InputReader.cpp @@ -1815,7 +1815,7 @@ void InputMapper::dumpRawAbsoluteAxisInfo(String8& dump, // --- SwitchInputMapper --- SwitchInputMapper::SwitchInputMapper(InputDevice* device) : - InputMapper(device), mUpdatedSwitchValues(0), mUpdatedSwitchMask(0) { + InputMapper(device), mSwitchValues(0), mUpdatedSwitchMask(0) { } SwitchInputMapper::~SwitchInputMapper() { @@ -1841,7 +1841,9 @@ void SwitchInputMapper::process(const RawEvent* rawEvent) { void SwitchInputMapper::processSwitch(int32_t switchCode, int32_t switchValue) { if (switchCode >= 0 && switchCode < 32) { if (switchValue) { - mUpdatedSwitchValues |= 1 << switchCode; + mSwitchValues |= 1 << switchCode; + } else { + mSwitchValues &= ~(1 << switchCode); } mUpdatedSwitchMask |= 1 << switchCode; } @@ -1849,10 +1851,10 @@ void SwitchInputMapper::processSwitch(int32_t switchCode, int32_t switchValue) { void SwitchInputMapper::sync(nsecs_t when) { if (mUpdatedSwitchMask) { - NotifySwitchArgs args(when, 0, mUpdatedSwitchValues, mUpdatedSwitchMask); + int32_t updatedSwitchValues = mSwitchValues & mUpdatedSwitchMask; + NotifySwitchArgs args(when, 0, updatedSwitchValues, mUpdatedSwitchMask); getListener()->notifySwitch(&args); - mUpdatedSwitchValues = 0; mUpdatedSwitchMask = 0; } } @@ -1861,6 +1863,10 @@ int32_t SwitchInputMapper::getSwitchState(uint32_t sourceMask, int32_t switchCod return getEventHub()->getSwitchState(getDeviceId(), switchCode); } +void SwitchInputMapper::dump(String8& dump) { + dump.append(INDENT2 "Switch Input Mapper:\n"); + dump.appendFormat(INDENT3 "SwitchValues: %x\n", mSwitchValues); +} // --- VibratorInputMapper --- diff --git a/services/inputflinger/InputReader.h b/services/inputflinger/InputReader.h index 9e36e35..c5896d4 100644 --- a/services/inputflinger/InputReader.h +++ b/services/inputflinger/InputReader.h @@ -999,9 +999,10 @@ public: virtual void process(const RawEvent* rawEvent); virtual int32_t getSwitchState(uint32_t sourceMask, int32_t switchCode); + virtual void dump(String8& dump); private: - uint32_t mUpdatedSwitchValues; + uint32_t mSwitchValues; uint32_t mUpdatedSwitchMask; void processSwitch(int32_t switchCode, int32_t switchValue); |