Add virtual input device native classes.
Add VirtualInputDevice base class and a set of subclasses for each
device type. Each virtual input device wraps a fd representing the
uinput device and a set of write...event() methods.
Most logic are moved from InputController JNI code: see ag/21294055 for
reference.
Test: atest VirtualInputTest VirtualMouseTest VirtualKeyboardTest
VirtualTouchscreenTest VirtualDpadTest
Bug: 267515782
Change-Id: Ie3a580acc890ac5af7461f012e05eb9ed3709a5f
Merged-In: Ie3a580acc890ac5af7461f012e05eb9ed3709a5f
diff --git a/libs/input/Android.bp b/libs/input/Android.bp
index fd4fc16..3809b6d 100644
--- a/libs/input/Android.bp
+++ b/libs/input/Android.bp
@@ -57,6 +57,7 @@
"TouchVideoFrame.cpp",
"VelocityControl.cpp",
"VelocityTracker.cpp",
+ "VirtualInputDevice.cpp",
"VirtualKeyMap.cpp",
],
@@ -124,6 +125,8 @@
enabled: false,
},
include_dirs: [
+ "bionic/libc/kernel/android/uapi/",
+ "bionic/libc/kernel/uapi",
"frameworks/native/libs/arect/include",
],
},