In XRSession::RequestHitTest(), we should reject if the current device doesn't support hit-test API.
Removing Blink>WebVR component and assigning to Blink>WebXR
Need to add environment_info flag to display info structure on devices so we can trivially check in blink whether the device supports hit-test.
removing M69 milestone as that ship has sailed.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/126a1168e3bcffb43c706822b3aa28695840310f commit 126a1168e3bcffb43c706822b3aa28695840310f Author: Max Rebuschatis <lincolnfrog@chromium.org> Date: Tue Nov 06 00:47:06 2018 Make XR FrameData and Environment mojo associated The XRFrameDataProvider now returns an associated XREnvironmentDataProvider interface so that the two share callback queues and thus allow strict ordering of the two interfaces. This is critical for frame synchronization between frames and the associated environment data. Note: We can't just mark the interfaceptrs for XRFrameDataProvider and XREnvironmentIntegrationProvider as associated in the XRSession struct. XRDevice implementations mostly live on separate threads from the XRFrameDataProviders, so we'd have extra thread hopping. For the VR headsets we explicitly live off the main thread to avoid latency, and because we do some work that may block the thread the XRFrameDataProvider lives on (for example waiting for vsync, or submitting frames to headset APIs). Bug: 867057, 876135 , 843376 Change-Id: If2fb62fcd185825209dec08e421df05f34d41c30 Reviewed-on: https://chromium-review.googlesource.com/c/1171794 Commit-Queue: Max Rebuschatis <lincolnfrog@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Bill Orr <billorr@chromium.org> Reviewed-by: Klaus Weidner <klausw@chromium.org> Cr-Commit-Position: refs/heads/master@{#605545} [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/android/vr/arcore_device/arcore_device.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/android/vr/arcore_device/arcore_device_unittest.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/android/vr/gvr_scheduler_delegate.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/android/vr/gvr_scheduler_delegate.h [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/vr/service/xr_device_impl.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/vr/service/xr_runtime_manager.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/chrome/browser/vr/service/xr_runtime_manager_unittest.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/openvr/openvr_render_loop.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/openvr/openvr_render_loop.h [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/public/mojom/isolated_xr_service.mojom [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/public/mojom/vr_service.mojom [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/vr_device_base.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/vr_display_impl.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/vr_display_impl.h [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/device/vr/vr_display_impl_unittest.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/webxr-test.js [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/third_party/WebKit/LayoutTests/xr/ar_hittest.html [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/third_party/blink/renderer/modules/xr/xr_device.cc [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/third_party/blink/renderer/modules/xr/xr_device.h [modify] https://crrev.com/126a1168e3bcffb43c706822b3aa28695840310f/third_party/blink/renderer/modules/xr/xr_session.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0ef86cd59863eed9aa0608987c2d0deef425d09c commit 0ef86cd59863eed9aa0608987c2d0deef425d09c Author: Dmitry Titov <dimich@chromium.org> Date: Tue Nov 06 01:11:41 2018 Revert "Make XR FrameData and Environment mojo associated" This reverts commit 126a1168e3bcffb43c706822b3aa28695840310f. Reason for revert: Broke compile: https://logs.chromium.org/logs/chromium/bb/chromium.chrome/Google_Chrome_Win/39908/+/recipes/steps/compile/0/stdout Original change's description: > Make XR FrameData and Environment mojo associated > > The XRFrameDataProvider now returns an associated > XREnvironmentDataProvider interface so that the > two share callback queues and thus allow strict > ordering of the two interfaces. This is critical > for frame synchronization between frames and the > associated environment data. > > Note: We can't just mark the interfaceptrs for > XRFrameDataProvider and > XREnvironmentIntegrationProvider as associated > in the XRSession struct. XRDevice implementations > mostly live on separate threads from the > XRFrameDataProviders, so we'd have extra thread > hopping. For the VR headsets we explicitly live > off the main thread to avoid latency, and because > we do some work that may block the thread the > XRFrameDataProvider lives on (for example waiting > for vsync, or submitting frames to headset APIs). > > Bug: 867057, 876135 , 843376 > Change-Id: If2fb62fcd185825209dec08e421df05f34d41c30 > Reviewed-on: https://chromium-review.googlesource.com/c/1171794 > Commit-Queue: Max Rebuschatis <lincolnfrog@chromium.org> > Reviewed-by: Daniel Cheng <dcheng@chromium.org> > Reviewed-by: Bill Orr <billorr@chromium.org> > Reviewed-by: Klaus Weidner <klausw@chromium.org> > Cr-Commit-Position: refs/heads/master@{#605545} TBR=dcheng@chromium.org,klausw@chromium.org,billorr@chromium.org,lincolnfrog@chromium.org Change-Id: I7a2408629460f456bf1189acdb0837f7d22a7919 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 867057, 876135 , 843376 Reviewed-on: https://chromium-review.googlesource.com/c/1318805 Reviewed-by: Dmitry Titov <dimich@chromium.org> Commit-Queue: Dmitry Titov <dimich@chromium.org> Cr-Commit-Position: refs/heads/master@{#605551} [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/android/vr/arcore_device/arcore_device.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/android/vr/arcore_device/arcore_device_unittest.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/android/vr/gvr_scheduler_delegate.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/android/vr/gvr_scheduler_delegate.h [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/vr/service/xr_device_impl.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/vr/service/xr_runtime_manager.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/chrome/browser/vr/service/xr_runtime_manager_unittest.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/openvr/openvr_render_loop.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/openvr/openvr_render_loop.h [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/public/mojom/isolated_xr_service.mojom [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/public/mojom/vr_service.mojom [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/vr_device_base.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/vr_display_impl.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/vr_display_impl.h [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/device/vr/vr_display_impl_unittest.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/webxr-test.js [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/third_party/WebKit/LayoutTests/xr/ar_hittest.html [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/third_party/blink/renderer/modules/xr/xr_device.cc [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/third_party/blink/renderer/modules/xr/xr_device.h [modify] https://crrev.com/0ef86cd59863eed9aa0608987c2d0deef425d09c/third_party/blink/renderer/modules/xr/xr_session.cc
The CL was reverted and not re-landed?
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210 commit fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210 Author: Max Rebuschatis <lincolnfrog@chromium.org> Date: Thu Nov 08 23:11:12 2018 Reland "Make XR FrameData and Environment mojo associated" This is a reland of 126a1168e3bcffb43c706822b3aa28695840310f The fix in this change addresses compile errors on the Oculus platform. TBR=dcheng@chromium.org dcheng@chromium.org: please review, though there are no new changes to vr_service.mojom Original change's description: > Make XR FrameData and Environment mojo associated > > The XRFrameDataProvider now returns an associated > XREnvironmentDataProvider interface so that the > two share callback queues and thus allow strict > ordering of the two interfaces. This is critical > for frame synchronization between frames and the > associated environment data. > > Note: We can't just mark the interfaceptrs for > XRFrameDataProvider and > XREnvironmentIntegrationProvider as associated > in the XRSession struct. XRDevice implementations > mostly live on separate threads from the > XRFrameDataProviders, so we'd have extra thread > hopping. For the VR headsets we explicitly live > off the main thread to avoid latency, and because > we do some work that may block the thread the > XRFrameDataProvider lives on (for example waiting > for vsync, or submitting frames to headset APIs). > > Bug: 867057, 876135 , 843376 > Change-Id: If2fb62fcd185825209dec08e421df05f34d41c30 > Reviewed-on: https://chromium-review.googlesource.com/c/1171794 > Commit-Queue: Max Rebuschatis <lincolnfrog@chromium.org> > Reviewed-by: Daniel Cheng <dcheng@chromium.org> > Reviewed-by: Bill Orr <billorr@chromium.org> > Reviewed-by: Klaus Weidner <klausw@chromium.org> > Cr-Commit-Position: refs/heads/master@{#605545} Bug: 867057, 876135 , 843376 Change-Id: If76578ebabbb40d03a21f6f557c5d4c27f69fc38 Reviewed-on: https://chromium-review.googlesource.com/c/1324089 Commit-Queue: Max Rebuschatis <lincolnfrog@chromium.org> Reviewed-by: Bill Orr <billorr@chromium.org> Reviewed-by: Klaus Weidner <klausw@chromium.org> Cr-Commit-Position: refs/heads/master@{#606643} [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/android/vr/arcore_device/arcore_device.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/android/vr/arcore_device/arcore_device_unittest.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/android/vr/gvr_scheduler_delegate.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/android/vr/gvr_scheduler_delegate.h [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/vr/service/xr_device_impl.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/vr/service/xr_runtime_manager.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/chrome/browser/vr/service/xr_runtime_manager_unittest.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/oculus/oculus_render_loop.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/oculus/oculus_render_loop.h [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/openvr/openvr_render_loop.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/openvr/openvr_render_loop.h [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/public/mojom/isolated_xr_service.mojom [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/public/mojom/vr_service.mojom [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/vr_device_base.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/vr_display_impl.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/vr_display_impl.h [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/device/vr/vr_display_impl_unittest.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/third_party/WebKit/LayoutTests/external/wpt/resources/chromium/webxr-test.js [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/third_party/WebKit/LayoutTests/xr/ar_hittest.html [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/third_party/blink/renderer/modules/xr/xr_device.cc [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/third_party/blink/renderer/modules/xr/xr_device.h [modify] https://crrev.com/fee9f1985d7d8cc2f51bc6dddd4c63aa93cc9210/third_party/blink/renderer/modules/xr/xr_session.cc
Comment 1 by ddorwin@chromium.org
, May 17 2018