[webkit-changes] [WebKit/WebKit] ce151b: Restart XR immersive session foreground activity i...

Ada Chan noreply at github.com
Mon Aug 21 11:18:38 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ce151b92a063863286dacf717396b686b409b16f
      https://github.com/WebKit/WebKit/commit/ce151b92a063863286dacf717396b686b409b16f
  Author: Ada Chan <adachan at apple.com>
  Date:   2023-08-21 (Mon, 21 Aug 2023)

  Changed paths:
    M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/UIProcess/XR/PlatformXRSystem.cpp
    M Source/WebKit/UIProcess/XR/PlatformXRSystem.h

  Log Message:
  -----------
  Restart XR immersive session foreground activity if needed when process is unsuspended
https://bugs.webkit.org/show_bug.cgi?id=260226
rdar://107913685

Reviewed by Chris Dumez and Dean Jackson.

The "XR immersive session" foreground activity is added when an
XR session starts so the web process has the foreground priority
to do rendering work. That activity gets invalidated when the
process is suspended. So if the process resumes again while an
XR session is still in progress, we need to add that foreground
activity again.

* Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::setProcessesShouldSuspend):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::restartXRSessionActivityOnProcessResumeIfNeeded):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/XR/PlatformXRSystem.cpp:
(WebKit::PlatformXRSystem::ensureImmersiveSessionActivity):
(WebKit::PlatformXRSystem::initializeTrackingAndRendering):
* Source/WebKit/UIProcess/XR/PlatformXRSystem.h:

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




More information about the webkit-changes mailing list