Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 77a93b0153dfac3ca896a55fd79e41cb8102e40f
      
https://github.com/WebKit/WebKit/commit/77a93b0153dfac3ca896a55fd79e41cb8102e40f
  Author: Matt Woodrow <[email protected]>
  Date:   2025-11-19 (Wed, 19 Nov 2025)

  Changed paths:
    M Source/WebCore/loader/FrameLoaderClient.h
    M Source/WebCore/page/Frame.cpp
    M Source/WebCore/page/Frame.h
    M Source/WebKit/UIProcess/WebFrameProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.messages.in
    M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.h
    M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.h
    M Source/WebKit/WebProcess/WebCoreSupport/WebRemoteFrameClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebRemoteFrameClient.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Source/WebKit/WebProcess/WebPage/WebPage.messages.in

  Log Message:
  -----------
  Implement FrameTreeSyncClient in WebKit, so that changes to FrameTreeSyncData 
can be broadcast to all processes.
https://bugs.webkit.org/show_bug.cgi?id=299906
<rdar://problem/161689957>

Reviewed by Alex Christensen.

Implements FrameTreeSyncClient as a subset of FrameLoaderClient, so that all
Frames have an appropriate client.

The WebPage(Proxy) messages is largely a duplicate of the existing
broadcastDocumentSyncData, with the addition of a FrameIdentifier parameter.

* Source/WebCore/loader/FrameLoaderClient.h:
* Source/WebCore/page/Frame.cpp:
(WebCore::Frame::updateFrameTreeSyncData):
* Source/WebCore/page/Frame.h:
(WebCore::Frame::protectedFrameTreeSyncData const):
* Source/WebKit/UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::broadcastFrameTreeSyncData):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::broadcastFrameTreeSyncData):
(WebKit::WebPageProxy::broadcastAllFrameTreeSyncData):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::broadcastAllFrameTreeSyncDataToOtherProcesses):
(WebKit::WebFrameLoaderClient::broadcastFrameTreeSyncDataToOtherProcesses):
* Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp:
(WebKit::WebLocalFrameLoaderClient::broadcastAllFrameTreeSyncDataToOtherProcesses):
(WebKit::WebLocalFrameLoaderClient::broadcastFrameTreeSyncDataToOtherProcesses):
* Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebRemoteFrameClient.cpp:
(WebKit::WebRemoteFrameClient::broadcastAllFrameTreeSyncDataToOtherProcesses):
(WebKit::WebRemoteFrameClient::broadcastFrameTreeSyncDataToOtherProcesses):
* Source/WebKit/WebProcess/WebCoreSupport/WebRemoteFrameClient.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::topDocumentSyncDataChangedInAnotherProcess):
(WebKit::WebPage::allTopDocumentSyncDataChangedInAnotherProcess):
(WebKit::WebPage::frameTreeSyncDataChangedInAnotherProcess):
(WebKit::WebPage::allFrameTreeSyncDataChangedInAnotherProcess):
(WebKit::WebPage::updateFrameTreeSyncData): Deleted.
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to