[webkit-changes] [WebKit/WebKit] 7ad679: [WebXR] Add WebXR backend to support immersive-ar ...

Dan Glastonbury noreply at github.com
Sat Oct 7 14:56:05 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7ad679f071434da45d453251ba7446294a54f57d
      https://github.com/WebKit/WebKit/commit/7ad679f071434da45d453251ba7446294a54f57d
  Author: Dan Glastonbury <djg at apple.com>
  Date:   2023-10-07 (Sat, 07 Oct 2023)

  Changed paths:
    M Source/WTF/wtf/PlatformHave.h
    M Source/WTF/wtf/PlatformUse.h
    M Source/WebCore/Modules/webxr/WebXRSession.cpp
    M Source/WebCore/Modules/webxr/WebXRSystem.cpp
    M Source/WebCore/platform/xr/PlatformXR.h
    M Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.mm
    M Source/WebKit/Configurations/WebKit.xcconfig
    M Source/WebKit/Shared/XR/XRDeviceInfo.h
    M Source/WebKit/Shared/XR/XRDeviceProxy.cpp
    M Source/WebKit/Shared/XR/XRSystem.serialization.in
    M Source/WebKit/SourcesCocoa.txt
    A Source/WebKit/UIProcess/XR/ios/PlatformXRARKit.h
    A Source/WebKit/UIProcess/XR/ios/PlatformXRARKit.mm
    A Source/WebKit/UIProcess/XR/ios/PlatformXRSystemIOS.mm
    M Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h
    M Source/WebKit/UIProcess/ios/WKModelView.h
    M Source/WebKit/UIProcess/ios/WKSyntheticTapGestureRecognizer.mm
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj

  Log Message:
  -----------
  [WebXR] Add WebXR backend to support immersive-ar backed by ARKit
https://bugs.webkit.org/show_bug.cgi?id=262679
rdar://116502210

Reviewed by Dean Jackson.

ARKitCoordinator adds just enough support for WebXR page to query support for
immersive-ar, allowing the XR immersive-ar-session.html button to show `START
AR` instead of `AR NOT FOUND`

* Source/WTF/wtf/PlatformHave.h:
* Source/WebKit/Configurations/WebKit.xcconfig:
* Source/WebKit/Shared/XR/XRDeviceInfo.cpp:
(WebKit::XRDeviceInfo::encode const):
(WebKit::XRDeviceInfo::decode):
* Source/WebKit/Shared/XR/XRDeviceInfo.h:
* Source/WebKit/Shared/XR/XRDeviceProxy.cpp:
(WebKit::XRDeviceProxy::XRDeviceProxy):
* Source/WebKit/SourcesCocoa.txt:
* Source/WebKit/UIProcess/XR/ios/PlatformXRARKit.h: Added.
* Source/WebKit/UIProcess/XR/ios/PlatformXRARKit.mm: Added.
(WebKit::ARKitCoordinator::getPrimaryDeviceInfo):
(WebKit::ARKitCoordinator::requestPermissionOnSessionFeatures):
(WebKit::ARKitCoordinator::startSession):
(WebKit::ARKitCoordinator::endSessionIfExists):
(WebKit::ARKitCoordinator::scheduleAnimationFrame):
(WebKit::ARKitCoordinator::submitFrame):
(WebKit::ARKitCoordinator::connectSessionIfNeeded):
* Source/WebKit/UIProcess/XR/ios/PlatformXRSystemIOS.mm: Copied from Source/WebKit/Shared/XR/XRDeviceInfo.h.
(WebKit::PlatformXRSystem::xrCoordinator):
* Source/WebKit/UIProcess/ios/WebProcessProxyIOS.mm:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:

Canonical link: https://commits.webkit.org/269049@main




More information about the webkit-changes mailing list