7b5be760f13cbec3ee4996016d7a609174ccd8ce |
|
26-Jul-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Remove constraint on touch location. InputFlinger does accept and handle 'off-screen' touch input, and it is sometimes useful, for instance for drag scrolling. Bug: 64063111 Test: manual on device Change-Id: I62baf4e01c583c10853518de4b87769aad29dab7
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
b2990034866e4f2cce6166b1c1d77dec27770686 |
|
15-Jun-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Fix virtual touchpad scroll events. 1. Correctly configure the uinput device to pass REL_*WHEEL events. 2. Configure the virtual touchpad as a 'rotary encoder', which is an inputflinger device class originally provided for the G1 scroll ball. This provides two advantages over the default mouse-wheel interpretation: - It works without an associated mouse pointer to determine the event target. - It allows for higher resolution through a scale factor (the scaling here is chosen by experiment to feel no worse than wheel mode, but might benefit from future adjustment). There is one accompanying disadvantage: inputflinger only handles vertical scrolling (REL_WHEEL) and ignores the horizontal axis (REL_HWHEEL). Bug: 62632827 Test: manual on sailfish Change-Id: Ic8edad01796d75e8c94fa20f05a5badb0727a948
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
d8fccf0124b78230ae2071fecc6bc6aebe8c540c |
|
05-Jun-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Add DVR API for scroll event injection. Bug: 62226675 Test: manual, vrcore build Change-Id: Ic7d329eba8003b0e294b3a11a83ed5f868b801f8
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
fa5cf46ac7b84cc20bf29e5b8c298a84b407b1e3 |
|
05-Apr-2017 |
Santos Cordon <santoscordon@google.com> |
Add uniqueId to Virtual Display and pass through to inputflinger (2/2) This CL adds: 1) Adds uniqueId (protected via system/sig permission) to virtual displays. 2) Add support for N virtual display viewports into inputflinger. 3) Set the virtual display's viewports in inputflinger if it has the uniqueId value set to non-null. (a) Moving the new viewport from java to native inputflinger and (b) adding "uniqueId" value to viewports makes up the great majority of this change. 4) From the inputflinger side, we also read in a new value from the input device configuration files called 'touch.displayId'. 5) When touch.displayId and the virtual display's uniqueId match, inputflinger links the two. Test: Start VR and ensure that the virtual viewport shows up when running 'adb shell dump input". Run a VR app, and ensure that the virtual input device is associated with the new virtual viewport. Bug: 36051620 Change-Id: I662f09f863a3dc94c570e7e7f30b83888b3f514c
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
de1cdaebc9b8fdbc5348e6c07f849b74bacc485d |
|
17-Mar-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Add C interface for virtual touchpad client. For use by the dvr api. Changes VrWindowManager::ShellView to exercise this change, and because it will be used when that code relocates to VrCore. Bug: 36050790 Test: use in vr_wm. Change-Id: I0fa67d19f94939ae41ef0ea2338f92f6147a4111
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
0108af72a8d8d2ee2af127b4c099b340ad63e3f8 |
|
09-Mar-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Support multiple virtual touchpads. The service now creates two uinput devices, named "vr virtual touchpad 0" for VirtualTouchpad::PRIMARY and "vr virtual touchpad 1" for VirtualTouchpad::VIRTUAL. Bug: b/35992608 Test: expanded VirtualTouchpad_test unit test Change-Id: I8749d559a56cfa9c8ec9a039ff7ad44d16f81915
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
4b64dd48b6896d6b963f0a3a0259d3d2a7076a9e |
|
07-Mar-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Revise virtual touchpad interface. - Explicit start and stop, outside of which the evdev devices don't exist. - Permission test (not compiled by default pending build & SELinux support for temporarily retaining a second copy of the service for vr_wm). - Enforce a single user of the touchpad. - Support 'dumpsys'. Bug: 36051900 Test: log inspection Change-Id: I038ed2632d5adf50a3565a981031691d5dc5f7cd
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
3002b8a74431dd7c005269cf9306443a4b4963f1 |
|
06-Mar-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Interface for multiple virtual touchpads. This passes the touchpad selection across binder, but does not yet actually implement multiple touchpad devices. Bug: b/35992608 Test: primary only in VirtualTouchpad_test Change-Id: I7529735362e0e38805b9c0e52e07b5efc86bd535
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|
89af70bce420f011adfeb0f80984b3895c4d7d9b |
|
04-Mar-2017 |
Kevin Schoedel <kpschoedel@google.com> |
Provide a library interface to the virtual touchpad service. And make VrWindowManager pay for^H^H^H^H^H^H^H^H use it. The library interface is a step toward moving 2D embedding into VrCore because it hides the binder connection that isn't directly accessible to VrCore. As a matter of implementation, the touchpad-service client library and the low-level evdev touchpad are derived from the same interface. Bug: b/35990873 Test: VirtualTouchpad_test; integration TBD. Change-Id: Ic922ff223ddd5a44f6fb4433a271f8341e93a0e7
/frameworks/native/services/vr/virtual_touchpad/VirtualTouchpadEvdev.cpp
|