| Index: chrome/browser/android/vr_shell/vr_shell.cc
|
| diff --git a/chrome/browser/android/vr_shell/vr_shell.cc b/chrome/browser/android/vr_shell/vr_shell.cc
|
| index 48a19ba7428bd18e1c01cffffc3b08cfa2120c9f..1e6195164e3dd8951c6254e85e675c77a9c8020e 100644
|
| --- a/chrome/browser/android/vr_shell/vr_shell.cc
|
| +++ b/chrome/browser/android/vr_shell/vr_shell.cc
|
| @@ -375,6 +375,21 @@ void VrShell::UpdateController(const gvr::Vec3f& forward_vector) {
|
| }
|
| #endif
|
| if (html_interface_->GetMode() == UiInterface::Mode::WEB_VR) {
|
| + // Process screen touch events for Cardboard button compatibility.
|
| + // Also send tap events for controller "touchpad click" events.
|
| + if (touch_pending_ || controller_->IsButtonUp(
|
| + gvr::ControllerButton::GVR_CONTROLLER_BUTTON_CLICK)) {
|
| + touch_pending_ = false;
|
| + std::unique_ptr<WebGestureEvent> gesture(new WebGestureEvent());
|
| + gesture->sourceDevice = blink::WebGestureDeviceTouchpad;
|
| + gesture->timeStampSeconds =
|
| + (base::TimeTicks::Now() - base::TimeTicks()).InSecondsF();
|
| + gesture->type = WebInputEvent::GestureTapDown;
|
| + gesture->data.tapDown.width = 0;
|
| + gesture->data.tapDown.height = 0;
|
| + content_input_manager_->ProcessUpdatedGesture(*gesture.get());
|
| + }
|
| +
|
| return;
|
| }
|
|
|
|
|