Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9bfa2b8cde5b554ccb41788ee7fa0d7b302972e1
      
https://github.com/WebKit/WebKit/commit/9bfa2b8cde5b554ccb41788ee7fa0d7b302972e1
  Author: Chris Dumez <[email protected]>
  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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to