New issue
Advanced search Search tips

Issue 887904 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Oct 24
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-VR
Proj-XR



Sign in to add a comment

WEBXR: selectstart event is not fired as expected

Reported by sarath.s...@huawei.com, Sep 21

Issue description

Steps to reproduce the problem:
On Android phone, screen as the input device, when hitting/touch on the screen, XRSession event "selectstart" is triggered only after touch is released.

Because of this issue, use cases like long press selection of objects, dragging etc can not be handled.

What is the expected behavior?
https://immersive-web.github.io/webxr/#eventdef-xrsession-selectstart
https://github.com/immersive-web/webxr/blob/master/explainer.md

As per the spec, A selectstart event indicates that the primary action has been initiated. It will most commonly be associated with pressing a button or trigger.

A selectend event indicates that the primary action has ended. It will most commonly be associated with releasing a button or trigger.

What went wrong?
'selectstart' event is not fired as per expected.

Did this work before? N/A 

Does this work in other browsers? N/A

Chrome version:   Channel: canary
OS Version: 
Flash Version:
 

Comment 1 Deleted

Comment 2 Deleted

Touch/Gesture events are for some reason sent as mouse 'click' event to XRCanvasInputEventListener::handleEvent() from EventTarget::FireEventListeners().
Is it by XR implementation or any other limitation? 

Instead of mouse click, should the XRCanvasInputEventListener handle GestureTapDown/GestureShowPress events and treat it as XRSession's "selectstart" event?
Components: Internals>XR
Components: -Internals>XR Blink>WebXR
Cc: bajones@chromium.org
Brandon, should we be handling mouse down/pointer down/gesture down?
Any comments on this experimental patch https://chromium-review.googlesource.com/c/chromium/src/+/1244636 ?
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f3457b6d26b829c07eb61173518e2e4ab774b170

commit f3457b6d26b829c07eb61173518e2e4ab774b170
Author: Sarath Singapati <sarath.singapati@huawei.com>
Date: Tue Oct 23 21:43:12 2018

XRCanvasInputProvider listens to pointer events instead of mouse events.

XRSession's selectstart event is fired on pointerdown event now.

Bug:  887904 
Cq-Include-Trybots: luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Ib37fb8c46d9afd832b89499b14fa7baa741de727
Reviewed-on: https://chromium-review.googlesource.com/c/1244636
Commit-Queue: Sarath Singapati <sarath.singapati@huawei.com>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602113}
[modify] https://crrev.com/f3457b6d26b829c07eb61173518e2e4ab774b170/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.cc
[modify] https://crrev.com/f3457b6d26b829c07eb61173518e2e4ab774b170/third_party/blink/renderer/modules/xr/xr_canvas_input_provider.h

Status: Fixed (was: Unconfirmed)
I believe this is now fixed and just needs to be validated.

Sign in to add a comment