Add input device property for buttons under touchpads

Bug: 8990644
Change-Id: I6df5fb9e11199173d62523928082db428af55394
diff --git a/include/input/InputDevice.h b/include/input/InputDevice.h
index 4672ad4..d8256c1 100644
--- a/include/input/InputDevice.h
+++ b/include/input/InputDevice.h
@@ -101,6 +101,9 @@
     inline void setVibrator(bool hasVibrator) { mHasVibrator = hasVibrator; }
     inline bool hasVibrator() const { return mHasVibrator; }
 
+    inline void setButtonUnderPad(bool hasButton) { mHasButtonUnderPad = hasButton; }
+    inline bool hasButtonUnderPad() const { return mHasButtonUnderPad; }
+
     inline const Vector<MotionRange>& getMotionRanges() const {
         return mMotionRanges;
     }
@@ -115,6 +118,7 @@
     int32_t mKeyboardType;
     sp<KeyCharacterMap> mKeyCharacterMap;
     bool mHasVibrator;
+    bool mHasButtonUnderPad;
 
     Vector<MotionRange> mMotionRanges;
 };
diff --git a/libs/input/InputDevice.cpp b/libs/input/InputDevice.cpp
index 77fa49d..54703d4 100644
--- a/libs/input/InputDevice.cpp
+++ b/libs/input/InputDevice.cpp
@@ -136,6 +136,7 @@
         mKeyboardType(other.mKeyboardType),
         mKeyCharacterMap(other.mKeyCharacterMap),
         mHasVibrator(other.mHasVibrator),
+        mHasButtonUnderPad(other.mHasButtonUnderPad),
         mMotionRanges(other.mMotionRanges) {
 }
 
@@ -152,6 +153,7 @@
     mSources = 0;
     mKeyboardType = AINPUT_KEYBOARD_TYPE_NONE;
     mHasVibrator = false;
+    mHasButtonUnderPad = false;
     mMotionRanges.clear();
 }