New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 704185 link

Starred by 3 users

Issue metadata

Status: ExternalDependency
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-XR



Sign in to add a comment

WebVR: support long press in Cardboard compatibility mode

Project Member Reported by klausw@chromium.org, Mar 22 2017

Issue description

Feature request by Sketchfab:

Currently, in native WebVR mode when using a Cardboard headset, screen touch events are only reported as a simple click event, ignoring the touch duration.

Being able to distinguish a long press would make it possible to support richer UI, for example activating an app menu.

Investigate supporting this by tracking screen touch start/end separately internally and reporting appropriate events to the application.


 

Comment 1 by klausw@chromium.org, Mar 22 2017

This is a regression from the polyfill which does report touch start/end and can be used to handle long press as a distinct action.

Also, for consistency, we should impelment equivalent behavior for the Daydream controller's touchpad click when used as an emulated Cardboard button.
We indeed rely on long press to open an app menu (there might be other preferable way to do that but at the moment it's the most convenient way to do that for us)

I can easily think of other use case where having start/end support can be important such as object dragging, painting ala tiltbrush, interacting with slider, etc...

Also, probably not the right place to discuss that (or too soon), but it'd be great if the behaviour could be standardize in the webvr spec (unless I miss it).
Especially the fact that events shouldn't be listened on the canvas directly.
Cc: asimjour@chromium.org
+asimjour
We have this same problem generally with out input code, we only send a single tap event on button release, we don't send down and up for the controller.

We should send separate down and up events for both the cardboard trigger and controller.
Cc: joshcarpenter@chromium.org bajones@chromium.org
klausw, what does it mean to be "used as an emulated Cardboard button?"

Regarding standardization, input is an open issue in the WebVR spec [1]. We will likely want to expose common actions (e.g., "primary click") in some consistent way.

[1] https://github.com/w3c/webvr/issues/176
Labels: -M-59 M-60
Status: Available (was: Untriaged)
Labels: -M-60

Comment 7 by klausw@chromium.org, Sep 12 2017

Owner: meganlindsay@chromium.org
Status: ExternalDependency (was: Available)
We've gotten rid of the emulated screen touch, but good news is that the new 1-button gamepad controller that replaces it does expose the touch duration. Megan, can you reach out to sketchfab to see if they want to take advantage of this?
bajones: Here's a use case for long-press in the VR Input API.
Owner: sko...@chromium.org
Labels: Test-Manual
Components: Blink>WebXR
Removing Blink>WebVR component and assigning to Blink>WebXR 
Components: -Blink>WebVR

Sign in to add a comment