Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4cd69c9df3932e49035491d1da0789ed0a7a22a5
      
https://github.com/WebKit/WebKit/commit/4cd69c9df3932e49035491d1da0789ed0a7a22a5
  Author: Jean Haberer <[email protected]>
  Date:   2025-02-03 (Mon, 03 Feb 2025)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WTF/wtf/PlatformEnableCocoa.h
    M Source/WebCore/Headers.cmake
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/dom/Document.cpp
    M Source/WebCore/dom/Document.h
    A Source/WebCore/dom/SpatialBackdropSource.cpp
    A Source/WebCore/dom/SpatialBackdropSource.h
    M Source/WebCore/html/HTMLLinkElement.cpp
    M Source/WebCore/html/HTMLLinkElement.h
    M Source/WebCore/html/HTMLLinkElement.idl
    M Source/WebCore/html/LinkRelAttribute.cpp
    M Source/WebCore/html/LinkRelAttribute.h
    M Source/WebCore/page/ChromeClient.h
    M Source/WebCore/page/Page.cpp
    M Source/WebCore/page/Page.h
    M Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/SourcesCocoa.txt
    M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSource.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSource.mm
    A Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSourceInternal.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm
    M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h
    M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm
    M Source/WebKit/UIProcess/PageClient.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.messages.in
    M Source/WebKit/UIProcess/WebPageProxyInternals.h
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h

  Log Message:
  -----------
  Trigger a signal in the UI Process when the web page provides a spatial 
backdrop
https://bugs.webkit.org/show_bug.cgi?id=286510
rdar://141175983

Reviewed by Ada Chan and Chris Dumez.

Expose the value of a spatial backdrop link tag to the UI Process.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WTF/wtf/PlatformEnableCocoa.h:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::spatialBackdropSource):
(WebCore::Document::spatialBackdropLinkElementChanged):
(WebCore::Document::determineActiveSpatialBackdropSource):
(WebCore::Document::spatialBackdropSourceChanged):
(WebCore::Document::setURL):
* Source/WebCore/dom/Document.h:

* Source/WebCore/dom/SpatialBackdropSource.cpp: Added.
(WebCore::SpatialBackdropSource::SpatialBackdropSource):
* Source/WebCore/dom/SpatialBackdropSource.h: Added.
(WebCore::SpatialBackdropSource::SpatialBackdropSource):
(WebCore::operator==):
Transports the spatial backdrop properties that are useful to know for the UI
Process, this includes the source (current URL) from which the backdrop was
provided, and the URL of both the provided model and environmentmap.

* Source/WebCore/html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::attributeChanged):
(WebCore::HTMLLinkElement::process):
(WebCore::HTMLLinkElement::removedFromAncestor):
(WebCore::HTMLLinkElement::isURLAttribute const):
(WebCore::HTMLLinkElement::environmentmap const):
(WebCore::HTMLLinkElement::isSpatialBackdrop const):

* Source/WebCore/html/HTMLLinkElement.h:
* Source/WebCore/html/HTMLLinkElement.idl:
* Source/WebCore/html/LinkRelAttribute.cpp:
* Source/WebCore/html/LinkRelAttribute.h:
Add the "spatial-backdrop" rel, and the "environmentmap" attribute to
the link tag.

* Source/WebCore/page/ChromeClient.h:
(WebCore::ChromeClient::spatialBackdropSourceChanged const):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::spatialBackdropSource const):
* Source/WebCore/page/Page.h:

* Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/SourcesCocoa.txt:
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _spatialBackdropSource]):
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSource.h: Added.
* Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSource.mm: Added.
(-[_WKSpatialBackdropSource initWithSpatialBackdropSource:]):
* Source/WebKit/UIProcess/API/Cocoa/_WKSpatialBackdropSourceInternal.h: Added.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm:
* Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h:
* Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm:
(WebKit::PageClientImplCocoa::spatialBackdropSourceWillChange):
(WebKit::PageClientImplCocoa::spatialBackdropSourceDidChange):
* Source/WebKit/UIProcess/PageClient.h:
(WebKit::PageClient::spatialBackdropSourceWillChange):
(WebKit::PageClient::spatialBackdropSourceDidChange):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::spatialBackdropSource const):
(WebKit::WebPageProxy::spatialBackdropSourceChanged):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/WebPageProxyInternals.h:

* Source/WebKit/WebKit.xcodeproj/project.pbxproj:

* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::spatialBackdropSourceChanged const):
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didFinishLoad):
(WebKit::WebPage::spatialBackdropSourceChanged):
* Source/WebKit/WebProcess/WebPage/WebPage.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to