[webkit-changes] [WebKit/WebKit] 9bfa2b: Move SleepDisabler ownership from WebProcessProxy ...
Chris Dumez
noreply at github.com
Thu Apr 27 17:15:26 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9bfa2b8cde5b554ccb41788ee7fa0d7b302972e1
https://github.com/WebKit/WebKit/commit/9bfa2b8cde5b554ccb41788ee7fa0d7b302972e1
Author: Chris Dumez <cdumez at apple.com>
Date: 2023-04-27 (Thu, 27 Apr 2023)
Changed paths:
M Source/WebCore/Modules/screen-wake-lock/WakeLock.cpp
M Source/WebCore/Modules/screen-wake-lock/WakeLockManager.cpp
M Source/WebCore/Modules/screen-wake-lock/WakeLockManager.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/platform/SleepDisabler.cpp
M Source/WebCore/platform/SleepDisabler.h
M Source/WebCore/platform/SleepDisablerClient.h
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/Internals.h
M Source/WebKit/Platform/IPC/MessageSender.h
M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
M Source/WebKit/UIProcess/WebProcessProxy.messages.in
M Source/WebKit/WebProcess/WebSleepDisablerClient.cpp
M Source/WebKit/WebProcess/WebSleepDisablerClient.h
Log Message:
-----------
Move SleepDisabler ownership from WebProcessProxy to WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=256056
Reviewed by Alex Christensen.
Move SleepDisabler ownership from WebProcessProxy to WebPageProxy. Those "sleep
disabling" assertion are taken by paging and it thus makes sense for their
lifetime to be tired to the page rather than the process. This tighter scoping
reduces the chances of assertion leakage and fit nicely with our UIProcess-side
logic now that we rely on the UIClient to take some of these assertions.
* Source/WebCore/Modules/screen-wake-lock/WakeLock.cpp:
(WebCore::WakeLock::request):
* Source/WebCore/Modules/screen-wake-lock/WakeLockManager.cpp:
(WebCore::WakeLockManager::addWakeLock):
* Source/WebCore/Modules/screen-wake-lock/WakeLockManager.h:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::updateSleepDisablerIfNeeded):
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::updateSleepDisabling):
* Source/WebCore/platform/SleepDisabler.cpp:
(WebCore::SleepDisabler::SleepDisabler):
(WebCore::SleepDisabler::~SleepDisabler):
* Source/WebCore/platform/SleepDisabler.h:
* Source/WebCore/platform/SleepDisablerClient.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::createSleepDisabler):
* Source/WebCore/testing/Internals.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _hasSleepDisabler]):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
(WebKit::WebPageProxy::didCreateSleepDisabler):
(WebKit::WebPageProxy::didDestroySleepDisabler):
(WebKit::WebPageProxy::hasSleepDisabler const):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::shutDown):
(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch):
(WebKit::WebProcessProxy::willRemoveWebPage): Deleted.
(WebKit::WebProcessProxy::didCreateSleepDisabler): Deleted.
(WebKit::WebProcessProxy::didDestroySleepDisabler): Deleted.
(WebKit::WebProcessProxy::hasSleepDisabler const): Deleted.
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Source/WebKit/UIProcess/WebProcessProxy.messages.in:
* Source/WebKit/WebProcess/WebSleepDisablerClient.cpp:
(WebKit::WebSleepDisablerClient::didCreateSleepDisabler):
(WebKit::WebSleepDisablerClient::didDestroySleepDisabler):
* Source/WebKit/WebProcess/WebSleepDisablerClient.h:
Canonical link: https://commits.webkit.org/263474@main
More information about the webkit-changes
mailing list