Make InputDevice.SOURCE_STYLUS meaningful.
Bug: 5424551
Change-Id: I415cb1842422e050cc41b17f5a1f13b4fab17a44
diff --git a/services/input/InputReader.h b/services/input/InputReader.h
index e5897e7..acdec85 100644
--- a/services/input/InputReader.h
+++ b/services/input/InputReader.h
@@ -507,6 +507,12 @@
return getEventHub()->hasScanCode(mId, code);
}
+ bool hasAbsoluteAxis(int32_t code) {
+ RawAbsoluteAxisInfo info;
+ getEventHub()->getAbsoluteAxisInfo(mId, code, &info);
+ return info.valid;
+ }
+
bool isKeyPressed(int32_t code) {
return getEventHub()->getScanCodeState(mId, code) == AKEY_STATE_DOWN;
}
@@ -627,9 +633,11 @@
int32_t getToolType() const;
bool isToolActive() const;
bool isHovering() const;
+ bool hasStylus() const;
private:
bool mHaveBtnTouch;
+ bool mHaveStylus;
bool mBtnTouch;
bool mBtnStylus;
@@ -817,10 +825,11 @@
MultiTouchMotionAccumulator();
~MultiTouchMotionAccumulator();
- void configure(size_t slotCount, bool usingSlotsProtocol);
+ void configure(InputDevice* device, size_t slotCount, bool usingSlotsProtocol);
void reset(InputDevice* device);
void process(const RawEvent* rawEvent);
void finishSync();
+ bool hasStylus() const;
inline size_t getSlotCount() const { return mSlotCount; }
inline const Slot* getSlot(size_t index) const { return &mSlots[index]; }
@@ -830,6 +839,7 @@
Slot* mSlots;
size_t mSlotCount;
bool mUsingSlotsProtocol;
+ bool mHaveStylus;
void clearSlots(int32_t initialSlot);
};
@@ -1257,6 +1267,7 @@
virtual void parseCalibration();
virtual void resolveCalibration();
virtual void dumpCalibration(String8& dump);
+ virtual bool hasStylus() const = 0;
virtual void syncTouch(nsecs_t when, bool* outHavePointerIds) = 0;
@@ -1605,6 +1616,7 @@
protected:
virtual void syncTouch(nsecs_t when, bool* outHavePointerIds);
virtual void configureRawPointerAxes();
+ virtual bool hasStylus() const;
private:
SingleTouchMotionAccumulator mSingleTouchMotionAccumulator;
@@ -1622,6 +1634,7 @@
protected:
virtual void syncTouch(nsecs_t when, bool* outHavePointerIds);
virtual void configureRawPointerAxes();
+ virtual bool hasStylus() const;
private:
MultiTouchMotionAccumulator mMultiTouchMotionAccumulator;