summaryrefslogtreecommitdiff
path: root/native/android/input.cpp
diff options
context:
space:
mode:
author Vaibhav <vdevmurari@google.com> 2022-02-11 17:50:41 +0530
committer Vaibhav Bhaveshkumar Devmurari <vdevmurari@google.com> 2022-02-14 16:19:45 +0000
commite85c348731e0364c3e3acdf1b76cd402ee25de71 (patch)
tree6c9bb609f6054da9232d632a64bdd2395831d7a3 /native/android/input.cpp
parentdb33f67f8ddbfb29acbe6fb57763cc2f029ec83b (diff)
Add implementation for new NDK functions added to input.h
Added new methods for getActionButton and getClassification in input.h. In this CL we are adding implementations for the corresponding functions Test: atest android.view.cts.MotionEventTest Bug: 213266814 Change-Id: Ia7c7b83fe19bac7d5e5c7c107e86328e160ba2b5
Diffstat (limited to 'native/android/input.cpp')
-rw-r--r--native/android/input.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/native/android/input.cpp b/native/android/input.cpp
index c06c81ed03ec..a231d8f153e7 100644
--- a/native/android/input.cpp
+++ b/native/android/input.cpp
@@ -283,6 +283,21 @@ float AMotionEvent_getHistoricalAxisValue(const AInputEvent* motion_event,
axis, pointer_index, history_index);
}
+int32_t AMotionEvent_getActionButton(const AInputEvent* motion_event) {
+ return static_cast<const MotionEvent*>(motion_event)->getActionButton();
+}
+
+int32_t AMotionEvent_getClassification(const AInputEvent* motion_event) {
+ switch (static_cast<const MotionEvent*>(motion_event)->getClassification()) {
+ case android::MotionClassification::NONE:
+ return AMOTION_EVENT_CLASSIFICATION_NONE;
+ case android::MotionClassification::AMBIGUOUS_GESTURE:
+ return AMOTION_EVENT_CLASSIFICATION_AMBIGUOUS_GESTURE;
+ case android::MotionClassification::DEEP_PRESS:
+ return AMOTION_EVENT_CLASSIFICATION_DEEP_PRESS;
+ }
+}
+
const AInputEvent* AMotionEvent_fromJava(JNIEnv* env, jobject motionEvent) {
MotionEvent* eventSrc = android::android_view_MotionEvent_getNativePtr(env, motionEvent);
if (eventSrc == nullptr) {