Changeset 225954 in webkit
- Timestamp:
- Dec 14, 2017, 6:08:23 PM (7 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 1 added
- 2 deleted
- 29 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/CMakeLists.txt
r225925 r225954 217 217 Shared/WebWheelEvent.cpp 218 218 Shared/WebsiteDataStoreParameters.cpp 219 Shared/WebsitePolicies .cpp219 Shared/WebsitePoliciesData.cpp 220 220 221 221 Shared/API/APIArray.cpp … … 359 359 UIProcess/API/APIUserStyleSheet.cpp 360 360 UIProcess/API/APIWebsiteDataStore.cpp 361 UIProcess/API/APIWebsitePolicies.cpp362 361 UIProcess/API/APIWindowFeatures.cpp 363 362 -
trunk/Source/WebKit/ChangeLog
r225949 r225954 1 2017-12-14 Alex Christensen <achristensen@webkit.org> 2 3 Serialize WebsitePoliciesData instead of WebsitePolicies 4 https://bugs.webkit.org/show_bug.cgi?id=180847 5 6 Reviewed by Joseph Pecoraro. 7 8 No change in behavior. This will allow me to add things to WebsitePolicies that have 9 a different form when serialized to another process. 10 11 Also, remove API::WebsitePolicies because the wrapper isn't necessary. 12 WebsitePolicies is now the API type that only exists in the UIProcess. 13 14 * Shared/WebsitePolicies.cpp: Removed. 15 * Shared/WebsitePolicies.h: 16 (WebKit::WebsitePolicies::contentBlockersEnabled const): Deleted. 17 (WebKit::WebsitePolicies::setContentBlockersEnabled): Deleted. 18 (WebKit::WebsitePolicies::allowedAutoplayQuirks const): Deleted. 19 (WebKit::WebsitePolicies::setAllowedAutoplayQuirks): Deleted. 20 (WebKit::WebsitePolicies::autoplayPolicy const): Deleted. 21 (WebKit::WebsitePolicies::setAutoplayPolicy): Deleted. 22 (WebKit::WebsitePolicies::customHeaderFields): Deleted. 23 (WebKit::WebsitePolicies::takeCustomHeaderFields): Deleted. 24 (WebKit::WebsitePolicies::setCustomHeaderFields): Deleted. 25 * Shared/WebsitePoliciesData.cpp: Copied from Source/WebKit/Shared/WebsitePolicies.cpp. 26 (WebKit::WebsitePoliciesData::fromWebsitePolicies): 27 (WebKit::WebsitePoliciesData::encode const): 28 (WebKit::WebsitePoliciesData::decode): 29 (WebKit::WebsitePoliciesData::applyToDocumentLoader): 30 (WebKit::WebsitePolicies::WebsitePolicies): Deleted. 31 (WebKit::WebsitePolicies::encode const): Deleted. 32 (WebKit::WebsitePolicies::decode): Deleted. 33 (WebKit::WebsitePolicies::applyToDocumentLoader): Deleted. 34 * Shared/WebsitePoliciesData.h: Added. 35 * UIProcess/API/APINavigationClient.h: 36 (API::NavigationClient::decidePolicyForNavigationAction): 37 (API::NavigationClient::decidePolicyForNavigationResponse): 38 * UIProcess/API/APIPolicyClient.h: 39 (API::PolicyClient::decidePolicyForNavigationAction): 40 (API::PolicyClient::decidePolicyForNewWindowAction): 41 (API::PolicyClient::decidePolicyForResponse): 42 * UIProcess/API/APIWebsitePolicies.cpp: Removed. 43 * UIProcess/API/APIWebsitePolicies.h: Removed. 44 * UIProcess/API/C/WKAPICast.h: 45 * UIProcess/API/C/WKFramePolicyListener.cpp: 46 (WKFramePolicyListenerUse): 47 (WKFramePolicyListenerUseWithPolicies): 48 * UIProcess/API/C/WKPage.cpp: 49 (WKPageUpdateWebsitePolicies): 50 (WKPageSetPagePolicyClient): 51 (WKPageSetPageNavigationClient): 52 * UIProcess/API/C/WKWebsitePolicies.cpp: 53 (WKWebsitePoliciesGetTypeID): 54 (WKWebsitePoliciesCreate): 55 * UIProcess/API/Cocoa/WKWebView.mm: 56 (-[WKWebView _updateWebsitePolicies:]): 57 * UIProcess/API/Cocoa/_WKWebsitePolicies.mm: 58 (-[_WKWebsitePolicies dealloc]): 59 (-[_WKWebsitePolicies init]): 60 * UIProcess/API/Cocoa/_WKWebsitePoliciesInternal.h: 61 (WebKit::wrapper): 62 * UIProcess/Cocoa/NavigationState.mm: 63 (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction): 64 (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationResponse): 65 * UIProcess/WebFrameListenerProxy.cpp: 66 (WebKit::WebFrameListenerProxy::receivedPolicyDecision): 67 * UIProcess/WebFrameListenerProxy.h: 68 * UIProcess/WebFramePolicyListenerProxy.cpp: 69 (WebKit::WebFramePolicyListenerProxy::use): 70 (WebKit::WebFramePolicyListenerProxy::download): 71 (WebKit::WebFramePolicyListenerProxy::ignore): 72 * UIProcess/WebFramePolicyListenerProxy.h: 73 * UIProcess/WebFrameProxy.cpp: 74 (WebKit::WebFrameProxy::receivedPolicyDecision): 75 * UIProcess/WebFrameProxy.h: 76 * UIProcess/WebPageProxy.cpp: 77 (WebKit::WebPageProxy::receivedPolicyDecision): 78 (WebKit::WebPageProxy::decidePolicyForNavigationAction): 79 (WebKit::WebPageProxy::updateWebsitePolicies): 80 * UIProcess/WebPageProxy.h: 81 * UIProcess/WebPageProxy.messages.in: 82 * WebKit.xcodeproj/project.pbxproj: 83 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: 84 (WebKit::WebFrameLoaderClient::applyToDocumentLoader): 85 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): 86 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: 87 * WebProcess/WebPage/WebFrame.cpp: 88 (WebKit::WebFrame::didReceivePolicyDecision): 89 * WebProcess/WebPage/WebFrame.h: 90 * WebProcess/WebPage/WebPage.cpp: 91 (WebKit::WebPage::didReceivePolicyDecision): 92 (WebKit::WebPage::updateWebsitePolicies): 93 * WebProcess/WebPage/WebPage.h: 94 * WebProcess/WebPage/WebPage.messages.in: 95 1 96 2017-12-14 Ryan Haddad <ryanhaddad@apple.com> 2 97 -
trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp
r225953 r225954 25 25 26 26 #include "config.h" 27 #include "WebsitePolicies .h"27 #include "WebsitePoliciesData.h" 28 28 29 29 #include "ArgumentCoders.h" … … 32 32 namespace WebKit { 33 33 34 WebsitePolicies::WebsitePolicies(bool contentBlockersEnabled, OptionSet<WebsiteAutoplayQuirk> allowedAutoplayQuirks, WebsiteAutoplayPolicy autoplayPolicy, Vector<WebCore::HTTPHeaderField>&& customHeaderFields) 35 : m_contentBlockersEnabled(contentBlockersEnabled) 36 , m_allowedAutoplayQuirks(allowedAutoplayQuirks) 37 , m_autoplayPolicy(autoplayPolicy) 38 , m_customHeaderFields(WTFMove(customHeaderFields)) 34 WebsitePoliciesData WebsitePoliciesData::fromWebsitePolicies(const WebsitePolicies& policies) 39 35 { 36 return { policies.contentBlockersEnabled(), policies.allowedAutoplayQuirks(), policies.autoplayPolicy(), policies.customHeaderFields() }; 40 37 } 41 38 42 void WebsitePolicies ::encode(IPC::Encoder& encoder) const39 void WebsitePoliciesData::encode(IPC::Encoder& encoder) const 43 40 { 44 encoder << m_contentBlockersEnabled;45 encoder << m_autoplayPolicy;46 encoder << m_allowedAutoplayQuirks;47 encoder << m_customHeaderFields;41 encoder << contentBlockersEnabled; 42 encoder << autoplayPolicy; 43 encoder << allowedAutoplayQuirks; 44 encoder << customHeaderFields; 48 45 } 49 46 50 std::optional<WebsitePolicies > WebsitePolicies::decode(IPC::Decoder& decoder)47 std::optional<WebsitePoliciesData> WebsitePoliciesData::decode(IPC::Decoder& decoder) 51 48 { 52 49 std::optional<bool> contentBlockersEnabled; … … 78 75 } 79 76 80 void WebsitePolicies ::applyToDocumentLoader(WebsitePolicies&& websitePolicies, WebCore::DocumentLoader& documentLoader)77 void WebsitePoliciesData::applyToDocumentLoader(WebsitePoliciesData&& websitePolicies, WebCore::DocumentLoader& documentLoader) 81 78 { 82 documentLoader.setCustomHeaderFields( websitePolicies.takeCustomHeaderFields());79 documentLoader.setCustomHeaderFields(WTFMove(websitePolicies.customHeaderFields)); 83 80 84 81 // Only setUserContentExtensionsEnabled if it hasn't already been disabled by reloading without content blockers. 85 82 if (documentLoader.userContentExtensionsEnabled()) 86 documentLoader.setUserContentExtensionsEnabled(websitePolicies.contentBlockersEnabled ());83 documentLoader.setUserContentExtensionsEnabled(websitePolicies.contentBlockersEnabled); 87 84 88 85 OptionSet<WebCore::AutoplayQuirk> quirks; 89 auto allowedQuirks = websitePolicies.allowedAutoplayQuirks();86 const auto& allowedQuirks = websitePolicies.allowedAutoplayQuirks; 90 87 91 88 if (allowedQuirks.contains(WebsiteAutoplayQuirk::InheritedUserGestures)) … … 100 97 documentLoader.setAllowedAutoplayQuirks(quirks); 101 98 102 switch (websitePolicies.autoplayPolicy ()) {99 switch (websitePolicies.autoplayPolicy) { 103 100 case WebsiteAutoplayPolicy::Default: 104 101 documentLoader.setAutoplayPolicy(WebCore::AutoplayPolicy::Default); -
trunk/Source/WebKit/UIProcess/API/APINavigationClient.h
r224677 r225954 32 32 #include "WebEvent.h" 33 33 #include "WebFramePolicyListenerProxy.h" 34 #include "WebsitePolicies .h"34 #include "WebsitePoliciesData.h" 35 35 #include <WebCore/FrameLoaderTypes.h> 36 36 #include <WebCore/LayoutMilestones.h> … … 102 102 virtual void decidePolicyForNavigationAction(WebKit::WebPageProxy&, Ref<NavigationAction>&&, Ref<WebKit::WebFramePolicyListenerProxy>&& listener, Object*) 103 103 { 104 listener->use( { });104 listener->use(std::nullopt); 105 105 } 106 106 107 107 virtual void decidePolicyForNavigationResponse(WebKit::WebPageProxy&, Ref<NavigationResponse>&&, Ref<WebKit::WebFramePolicyListenerProxy>&& listener, Object*) 108 108 { 109 listener->use( { });109 listener->use(std::nullopt); 110 110 } 111 111 -
trunk/Source/WebKit/UIProcess/API/APIPolicyClient.h
r222583 r225954 28 28 #include "WebEvent.h" 29 29 #include "WebFramePolicyListenerProxy.h" 30 #include "WebsitePolicies.h"31 30 #include <WebCore/FrameLoaderTypes.h> 32 31 #include <wtf/Forward.h> … … 54 53 virtual void decidePolicyForNavigationAction(WebKit::WebPageProxy&, WebKit::WebFrameProxy*, const WebKit::NavigationActionData&, WebKit::WebFrameProxy*, const WebCore::ResourceRequest&, const WebCore::ResourceRequest&, Ref<WebKit::WebFramePolicyListenerProxy>&& listener, API::Object*) 55 54 { 56 listener->use( { });55 listener->use(std::nullopt); 57 56 } 58 57 virtual void decidePolicyForNewWindowAction(WebKit::WebPageProxy&, WebKit::WebFrameProxy&, const WebKit::NavigationActionData&, const WebCore::ResourceRequest&, const WTF::String&, Ref<WebKit::WebFramePolicyListenerProxy>&& listener, API::Object*) 59 58 { 60 listener->use( { });59 listener->use(std::nullopt); 61 60 } 62 61 virtual void decidePolicyForResponse(WebKit::WebPageProxy&, WebKit::WebFrameProxy&, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, bool, Ref<WebKit::WebFramePolicyListenerProxy>&& listener, API::Object*) 63 62 { 64 listener->use( { });63 listener->use(std::nullopt); 65 64 } 66 65 virtual void unableToImplementPolicy(WebKit::WebPageProxy&, WebKit::WebFrameProxy&, const WebCore::ResourceError&, API::Object*) { } -
trunk/Source/WebKit/UIProcess/API/C/WKAPICast.h
r225682 r225954 69 69 class UserScript; 70 70 class WebsiteDataStore; 71 class WebsitePolicies;72 71 class WindowFeatures; 73 72 } … … 167 166 WK_ADD_API_MAPPING(WKViewportAttributesRef, WebViewportAttributes) 168 167 WK_ADD_API_MAPPING(WKWebsiteDataStoreRef, API::WebsiteDataStore) 169 WK_ADD_API_MAPPING(WKWebsitePoliciesRef, API::WebsitePolicies)168 WK_ADD_API_MAPPING(WKWebsitePoliciesRef, WebsitePolicies) 170 169 WK_ADD_API_MAPPING(WKWindowFeaturesRef, API::WindowFeatures) 171 170 -
trunk/Source/WebKit/UIProcess/API/C/WKFramePolicyListener.cpp
r222583 r225954 27 27 #include "WKFramePolicyListener.h" 28 28 29 #include "APIWebsitePolicies.h"30 29 #include "WKAPICast.h" 31 30 #include "WebFramePolicyListenerProxy.h" 32 31 #include "WebFrameProxy.h" 33 #include "WebsitePolicies .h"32 #include "WebsitePoliciesData.h" 34 33 35 34 using namespace WebKit; … … 42 41 void WKFramePolicyListenerUse(WKFramePolicyListenerRef policyListenerRef) 43 42 { 44 toImpl(policyListenerRef)->use( { });43 toImpl(policyListenerRef)->use(std::nullopt); 45 44 } 46 45 47 46 void WKFramePolicyListenerUseWithPolicies(WKFramePolicyListenerRef policyListenerRef, WKWebsitePoliciesRef websitePolicies) 48 47 { 49 toImpl(policyListenerRef)->use( toImpl(websitePolicies)->websitePolicies());48 toImpl(policyListenerRef)->use(WebsitePoliciesData::fromWebsitePolicies(*toImpl(websitePolicies))); 50 49 } 51 50 -
trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp
r225598 r225954 47 47 #include "APISessionState.h" 48 48 #include "APIUIClient.h" 49 #include "APIWebsitePolicies.h"50 49 #include "APIWindowFeatures.h" 51 50 #include "AuthenticationChallengeProxy.h" … … 72 71 #include "WebProcessProxy.h" 73 72 #include "WebProtectionSpace.h" 73 #include "WebsitePolicies.h" 74 74 #include <WebCore/Page.h> 75 75 #include <WebCore/SecurityOriginData.h> … … 326 326 void WKPageUpdateWebsitePolicies(WKPageRef pageRef, WKWebsitePoliciesRef websitePoliciesRef) 327 327 { 328 toImpl(pageRef)->updateWebsitePolicies( toImpl(websitePoliciesRef)->websitePolicies());328 toImpl(pageRef)->updateWebsitePolicies(WebsitePoliciesData::fromWebsitePolicies(*toImpl(websitePoliciesRef))); 329 329 } 330 330 … … 1352 1352 { 1353 1353 if (!m_client.decidePolicyForNavigationAction_deprecatedForUseWithV0 && !m_client.decidePolicyForNavigationAction_deprecatedForUseWithV1 && !m_client.decidePolicyForNavigationAction) { 1354 listener->use( { });1354 listener->use(std::nullopt); 1355 1355 return; 1356 1356 } … … 1370 1370 { 1371 1371 if (!m_client.decidePolicyForNewWindowAction) { 1372 listener->use( { });1372 listener->use(std::nullopt); 1373 1373 return; 1374 1374 } … … 1382 1382 { 1383 1383 if (!m_client.decidePolicyForResponse_deprecatedForUseWithV0 && !m_client.decidePolicyForResponse) { 1384 listener->use( { });1384 listener->use(std::nullopt); 1385 1385 return; 1386 1386 } … … 2144 2144 { 2145 2145 if (!m_client.decidePolicyForNavigationAction) { 2146 listener->use( { });2146 listener->use(std::nullopt); 2147 2147 return; 2148 2148 } … … 2153 2153 { 2154 2154 if (!m_client.decidePolicyForNavigationResponse) { 2155 listener->use( { });2155 listener->use(std::nullopt); 2156 2156 return; 2157 2157 } -
trunk/Source/WebKit/UIProcess/API/C/WKWebsitePolicies.cpp
r225117 r225954 28 28 29 29 #include "APIDictionary.h" 30 #include "APIWebsitePolicies.h"31 30 #include "WKAPICast.h" 32 31 #include "WKArray.h" … … 39 38 WKTypeID WKWebsitePoliciesGetTypeID() 40 39 { 41 return toAPI( API::WebsitePolicies::APIType);40 return toAPI(WebsitePolicies::APIType); 42 41 } 43 42 44 43 WKWebsitePoliciesRef WKWebsitePoliciesCreate() 45 44 { 46 return toAPI(& API::WebsitePolicies::create().leakRef());45 return toAPI(&WebsitePolicies::create().leakRef()); 47 46 } 48 47 -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
r225765 r225954 4234 4234 - (void)_updateWebsitePolicies:(_WKWebsitePolicies *)websitePolicies 4235 4235 { 4236 _page->updateWebsitePolicies( websitePolicies->_websitePolicies->websitePolicies());4236 _page->updateWebsitePolicies(WebKit::WebsitePoliciesData::fromWebsitePolicies(*websitePolicies->_websitePolicies)); 4237 4237 } 4238 4238 -
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.mm
r225117 r225954 33 33 - (void)dealloc 34 34 { 35 _websitePolicies-> API::WebsitePolicies::~WebsitePolicies();35 _websitePolicies->WebKit::WebsitePolicies::~WebsitePolicies(); 36 36 37 37 [super dealloc]; … … 43 43 return nil; 44 44 45 API::Object::constructInWrapper< API::WebsitePolicies>(self);45 API::Object::constructInWrapper<WebKit::WebsitePolicies>(self); 46 46 47 47 return self; -
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePoliciesInternal.h
r209558 r225954 28 28 #if WK_API_ENABLED 29 29 30 #import "APIWebsitePolicies.h"31 30 #import "WKObject.h" 31 #import "WebsitePolicies.h" 32 32 33 33 namespace WebKit { 34 34 35 inline _WKWebsitePolicies *wrapper( API::WebsitePolicies& websitePolicies)35 inline _WKWebsitePolicies *wrapper(WebsitePolicies& websitePolicies) 36 36 { 37 37 ASSERT([websitePolicies.wrapper() isKindOfClass:[_WKWebsitePolicies class]]); … … 43 43 @interface _WKWebsitePolicies () <WKObject> { 44 44 @package 45 API::ObjectStorage< API::WebsitePolicies> _websitePolicies;45 API::ObjectStorage<WebKit::WebsitePolicies> _websitePolicies; 46 46 } 47 47 @end -
trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.mm
r225682 r225954 428 428 429 429 if (!navigationAction->targetFrame()) { 430 listener->use( { });430 listener->use(std::nullopt); 431 431 return; 432 432 } … … 437 437 listener->download(); 438 438 else 439 listener->use( { });439 listener->use(std::nullopt); 440 440 return; 441 441 } … … 466 466 checker->didCallCompletionHandler(); 467 467 468 std::optional<WebsitePolicies > policies;468 std::optional<WebsitePoliciesData> data; 469 469 if (websitePolicies) 470 policies = websitePolicies->_websitePolicies->websitePolicies();470 data = WebsitePoliciesData::fromWebsitePolicies(*websitePolicies->_websitePolicies); 471 471 472 472 switch (actionPolicy) { 473 473 case WKNavigationActionPolicyAllow: 474 tryAppLink(WTFMove(navigationAction), mainFrameURLString, [localListener = WTFMove(localListener), policies = WTFMove(policies)](bool followedLinkToApp) mutable {474 tryAppLink(WTFMove(navigationAction), mainFrameURLString, [localListener = WTFMove(localListener), data = WTFMove(data)](bool followedLinkToApp) mutable { 475 475 if (followedLinkToApp) { 476 476 localListener->ignore(); … … 478 478 } 479 479 480 localListener->use(WTFMove( policies));480 localListener->use(WTFMove(data)); 481 481 }); 482 482 … … 495 495 case _WKNavigationActionPolicyAllowWithoutTryingAppLink: 496 496 #pragma clang diagnostic pop 497 localListener->use(WTFMove( policies));497 localListener->use(WTFMove(data)); 498 498 break; 499 499 } … … 545 545 546 546 if (exists && !isDirectory && navigationResponse->canShowMIMEType()) 547 listener->use( { });547 listener->use(std::nullopt); 548 548 else 549 549 listener->ignore(); … … 552 552 553 553 if (navigationResponse->canShowMIMEType()) 554 listener->use( { });554 listener->use(std::nullopt); 555 555 else 556 556 listener->ignore(); … … 571 571 switch (responsePolicy) { 572 572 case WKNavigationResponsePolicyAllow: 573 localListener->use( { });573 localListener->use(std::nullopt); 574 574 break; 575 575 -
trunk/Source/WebKit/UIProcess/WebFrameListenerProxy.cpp
r225682 r225954 28 28 29 29 #include "WebFrameProxy.h" 30 #include "WebsitePolicies .h"30 #include "WebsitePoliciesData.h" 31 31 32 32 namespace WebKit { … … 47 47 } 48 48 49 void WebFrameListenerProxy::receivedPolicyDecision(WebCore::PolicyAction action, std::optional<WebsitePolicies >&& websitePolicies)49 void WebFrameListenerProxy::receivedPolicyDecision(WebCore::PolicyAction action, std::optional<WebsitePoliciesData>&& data) 50 50 { 51 51 if (!m_frame) 52 52 return; 53 53 54 m_frame->receivedPolicyDecision(action, m_listenerID, m_navigation.get(), WTFMove( websitePolicies));54 m_frame->receivedPolicyDecision(action, m_listenerID, m_navigation.get(), WTFMove(data)); 55 55 m_frame = nullptr; 56 56 } -
trunk/Source/WebKit/UIProcess/WebFrameListenerProxy.h
r225682 r225954 35 35 36 36 class WebFrameProxy; 37 class WebsitePolicies;37 struct WebsitePoliciesData; 38 38 39 39 class WebFrameListenerProxy : public API::Object { … … 49 49 WebFrameListenerProxy(WebFrameProxy*, uint64_t listenerID); 50 50 51 void receivedPolicyDecision(WebCore::PolicyAction, std::optional<WebsitePolicies >&&);51 void receivedPolicyDecision(WebCore::PolicyAction, std::optional<WebsitePoliciesData>&&); 52 52 53 53 private: -
trunk/Source/WebKit/UIProcess/WebFramePolicyListenerProxy.cpp
r225682 r225954 28 28 29 29 #include "WebFrameProxy.h" 30 #include "WebsitePolicies .h"30 #include "WebsitePoliciesData.h" 31 31 32 32 namespace WebKit { … … 37 37 } 38 38 39 void WebFramePolicyListenerProxy::use(std::optional<WebsitePolicies >&& websitePolicies)39 void WebFramePolicyListenerProxy::use(std::optional<WebsitePoliciesData>&& data) 40 40 { 41 receivedPolicyDecision(WebCore::PolicyAction::Use, WTFMove( websitePolicies));41 receivedPolicyDecision(WebCore::PolicyAction::Use, WTFMove(data)); 42 42 } 43 43 44 44 void WebFramePolicyListenerProxy::download() 45 45 { 46 receivedPolicyDecision(WebCore::PolicyAction::Download, { });46 receivedPolicyDecision(WebCore::PolicyAction::Download, std::nullopt); 47 47 } 48 48 49 49 void WebFramePolicyListenerProxy::ignore() 50 50 { 51 receivedPolicyDecision(WebCore::PolicyAction::Ignore, { });51 receivedPolicyDecision(WebCore::PolicyAction::Ignore, std::nullopt); 52 52 } 53 53 -
trunk/Source/WebKit/UIProcess/WebFramePolicyListenerProxy.h
r225682 r225954 45 45 } 46 46 47 void use(std::optional<WebsitePolicies >&&);47 void use(std::optional<WebsitePoliciesData>&&); 48 48 void download(); 49 49 void ignore(); -
trunk/Source/WebKit/UIProcess/WebFrameProxy.cpp
r225682 r225954 33 33 #include "WebPasteboardProxy.h" 34 34 #include "WebProcessPool.h" 35 #include "WebsitePoliciesData.h" 35 36 #include <WebCore/Image.h> 36 37 #include <WebCore/MIMETypeRegistry.h> … … 176 177 } 177 178 178 void WebFrameProxy::receivedPolicyDecision(PolicyAction action, uint64_t listenerID, API::Navigation* navigation, std::optional<WebsitePolicies >&& websitePolicies)179 void WebFrameProxy::receivedPolicyDecision(PolicyAction action, uint64_t listenerID, API::Navigation* navigation, std::optional<WebsitePoliciesData>&& data) 179 180 { 180 181 if (!m_page) … … 183 184 ASSERT(m_activeListener); 184 185 ASSERT(m_activeListener->listenerID() == listenerID); 185 m_page->receivedPolicyDecision(action, *this, listenerID, navigation, WTFMove( websitePolicies));186 m_page->receivedPolicyDecision(action, *this, listenerID, navigation, WTFMove(data)); 186 187 } 187 188 -
trunk/Source/WebKit/UIProcess/WebFrameProxy.h
r225682 r225954 52 52 class WebFramePolicyListenerProxy; 53 53 class WebPageProxy; 54 class WebsitePolicies;54 struct WebsitePoliciesData; 55 55 56 56 typedef GenericCallback<API::Data*> DataCallback; … … 115 115 116 116 // Policy operations. 117 void receivedPolicyDecision(WebCore::PolicyAction, uint64_t listenerID, API::Navigation*, std::optional<WebsitePolicies >&&);117 void receivedPolicyDecision(WebCore::PolicyAction, uint64_t listenerID, API::Navigation*, std::optional<WebsitePoliciesData>&&); 118 118 WebFramePolicyListenerProxy& setUpPolicyListenerProxy(uint64_t listenerID); 119 119 -
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
r225926 r225954 2276 2276 } 2277 2277 2278 void WebPageProxy::receivedPolicyDecision(PolicyAction action, WebFrameProxy& frame, uint64_t listenerID, API::Navigation* navigation, std::optional<WebsitePolicies >&& websitePolicies)2278 void WebPageProxy::receivedPolicyDecision(PolicyAction action, WebFrameProxy& frame, uint64_t listenerID, API::Navigation* navigation, std::optional<WebsitePoliciesData>&& websitePolicies) 2279 2279 { 2280 2280 if (!isValid()) … … 2318 2318 m_syncNavigationActionPolicyAction = action; 2319 2319 m_syncNavigationActionPolicyDownloadID = downloadID; 2320 m_syncNavigationActionPolicyWebsitePolicies = websitePolicies;2320 m_syncNavigationActionPolicyWebsitePolicies = WTFMove(websitePolicies); 2321 2321 return; 2322 2322 } … … 3686 3686 } 3687 3687 3688 void WebPageProxy::decidePolicyForNavigationAction(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, const FrameInfoData& originatingFrameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, ResourceRequest&& request, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& newNavigationID, WebCore::PolicyAction& policyAction, DownloadID& downloadID, std::optional<WebsitePolicies >& websitePolicies)3688 void WebPageProxy::decidePolicyForNavigationAction(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, const FrameInfoData& originatingFrameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, ResourceRequest&& request, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& newNavigationID, WebCore::PolicyAction& policyAction, DownloadID& downloadID, std::optional<WebsitePoliciesData>& websitePolicies) 3689 3689 { 3690 3690 PageClientProtector protector(m_pageClient); … … 3755 3755 policyAction = m_syncNavigationActionPolicyAction; 3756 3756 downloadID = m_syncNavigationActionPolicyDownloadID; 3757 websitePolicies = m_syncNavigationActionPolicyWebsitePolicies;3757 websitePolicies = WTFMove(m_syncNavigationActionPolicyWebsitePolicies); 3758 3758 } 3759 3759 } … … 6152 6152 } 6153 6153 6154 void WebPageProxy::updateWebsitePolicies( const WebsitePolicies& websitePolicies)6154 void WebPageProxy::updateWebsitePolicies(WebsitePoliciesData&& websitePolicies) 6155 6155 { 6156 6156 m_process->send(Messages::WebPage::UpdateWebsitePolicies(websitePolicies), m_pageID); -
trunk/Source/WebKit/UIProcess/WebPageProxy.h
r225926 r225954 63 63 #include "WebPopupMenuProxy.h" 64 64 #include "WebProcessLifetimeTracker.h" 65 #include "WebsitePolicies .h"65 #include "WebsitePoliciesData.h" 66 66 #include <WebCore/ActivityState.h> 67 67 #include <WebCore/AutoplayEvent.h> … … 434 434 bool willHandleHorizontalScrollEvents() const; 435 435 436 void updateWebsitePolicies( const WebsitePolicies&);436 void updateWebsitePolicies(WebsitePoliciesData&&); 437 437 438 438 bool canShowMIMEType(const String& mimeType); … … 844 844 #endif 845 845 846 void receivedPolicyDecision(WebCore::PolicyAction, WebFrameProxy&, uint64_t listenerID, API::Navigation* navigationID, std::optional<WebsitePolicies >&&);846 void receivedPolicyDecision(WebCore::PolicyAction, WebFrameProxy&, uint64_t listenerID, API::Navigation* navigationID, std::optional<WebsitePoliciesData>&&); 847 847 848 848 void backForwardRemovedItem(uint64_t itemID); … … 1327 1327 void didDestroyNavigation(uint64_t navigationID); 1328 1328 1329 void decidePolicyForNavigationAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&&, const FrameInfoData&, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&&, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& newNavigationID, WebCore::PolicyAction&, DownloadID&, std::optional<WebsitePolicies >&);1329 void decidePolicyForNavigationAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&&, const FrameInfoData&, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&&, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& newNavigationID, WebCore::PolicyAction&, DownloadID&, std::optional<WebsitePoliciesData>&); 1330 1330 void decidePolicyForNewWindowAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, NavigationActionData&&, WebCore::ResourceRequest&&, const String& frameName, uint64_t listenerID, const UserData&); 1331 1331 void decidePolicyForResponse(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, bool canShowMIMEType, uint64_t listenerID, const UserData&); … … 1868 1868 WebCore::PolicyAction m_syncNavigationActionPolicyAction { WebCore::PolicyAction::Use }; 1869 1869 DownloadID m_syncNavigationActionPolicyDownloadID { 0 }; 1870 std::optional<WebsitePolicies > m_syncNavigationActionPolicyWebsitePolicies;1870 std::optional<WebsitePoliciesData> m_syncNavigationActionPolicyWebsitePolicies; 1871 1871 1872 1872 bool m_shouldSuppressAppLinksInNextNavigationPolicyDecision { false }; -
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
r225827 r225954 100 100 # Policy messages 101 101 DecidePolicyForResponseSync(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, uint64_t navigationID, WebCore::ResourceResponse response, WebCore::ResourceRequest request, bool canShowMIMEType, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, enum WebCore::PolicyAction policyAction, WebKit::DownloadID downloadID) 102 DecidePolicyForNavigationAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, struct WebKit::FrameInfoData originatingFrameInfoData, uint64_t originatingPageID, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t newNavigationID, enum WebCore::PolicyAction policyAction, WebKit::DownloadID downloadID, std::optional<WebKit::WebsitePolicies > websitePolicies)102 DecidePolicyForNavigationAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, struct WebKit::FrameInfoData originatingFrameInfoData, uint64_t originatingPageID, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t newNavigationID, enum WebCore::PolicyAction policyAction, WebKit::DownloadID downloadID, std::optional<WebKit::WebsitePoliciesData> websitePolicies) 103 103 DecidePolicyForNewWindowAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, struct WebKit::NavigationActionData navigationActionData, WebCore::ResourceRequest request, String frameName, uint64_t listenerID, WebKit::UserData userData) 104 104 UnableToImplementPolicy(uint64_t frameID, WebCore::ResourceError error, WebKit::UserData userData) -
trunk/Source/WebKit/UIProcess/WebsitePolicies.h
r225953 r225954 26 26 #pragma once 27 27 28 #include "APIObject.h" 28 29 #include <WebCore/HTTPHeaderField.h> 29 30 #include <wtf/EnumTraits.h> … … 56 57 }; 57 58 58 class WebsitePolicies {59 class WebsitePolicies final : public API::ObjectImpl<API::Object::Type::WebsitePolicies> { 59 60 public: 61 static Ref<WebsitePolicies> create() { return adoptRef(*new WebsitePolicies); } 60 62 WebsitePolicies() = default; 61 63 … … 69 71 void setAutoplayPolicy(WebsiteAutoplayPolicy policy) { m_autoplayPolicy = policy; } 70 72 71 const Vector<WebCore::HTTPHeaderField>& customHeaderFields() { return m_customHeaderFields; }73 const Vector<WebCore::HTTPHeaderField>& customHeaderFields() const { return m_customHeaderFields; } 72 74 Vector<WebCore::HTTPHeaderField>&& takeCustomHeaderFields() { return WTFMove(m_customHeaderFields); } 73 75 void setCustomHeaderFields(Vector<WebCore::HTTPHeaderField>&& fields) { m_customHeaderFields = WTFMove(fields); } 74 75 static void applyToDocumentLoader(WebsitePolicies&&, WebCore::DocumentLoader&);76 77 void encode(IPC::Encoder&) const;78 static std::optional<WebsitePolicies> decode(IPC::Decoder&);79 76 80 77 private: 81 WebsitePolicies(bool, OptionSet<WebsiteAutoplayQuirk>, WebsiteAutoplayPolicy, Vector<WebCore::HTTPHeaderField>&&); 78 WebsitePolicies(bool contentBlockersEnabled, OptionSet<WebsiteAutoplayQuirk> allowedAutoplayQuirks, WebsiteAutoplayPolicy autoplayPolicy, Vector<WebCore::HTTPHeaderField>&& customHeaderFields) 79 : m_contentBlockersEnabled(contentBlockersEnabled) 80 , m_allowedAutoplayQuirks(allowedAutoplayQuirks) 81 , m_autoplayPolicy(autoplayPolicy) 82 , m_customHeaderFields(WTFMove(customHeaderFields)) 83 { } 82 84 83 85 bool m_contentBlockersEnabled { true }; -
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
r225925 r225954 1185 1185 5C0B177C1E7C885400E9123C /* WebSocketStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C0B177A1E7C884F00E9123C /* WebSocketStream.cpp */; }; 1186 1186 5C0B17811E7C8C2600E9123C /* NetworkSocketStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C0B177D1E7C886700E9123C /* NetworkSocketStream.cpp */; }; 1187 5C13024C1FE35154000D9B31 /* WebsitePolicies.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C13024B1FE35142000D9B31 /* WebsitePolicies.h */; }; 1187 1188 5C1426EC1C23F80900D41183 /* NetworkProcessCreationParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C1426E21C23F80500D41183 /* NetworkProcessCreationParameters.cpp */; }; 1188 1189 5C1426ED1C23F80900D41183 /* NetworkProcessCreationParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C1426E31C23F80500D41183 /* NetworkProcessCreationParameters.h */; }; … … 1205 1206 5C20CBA01BB1ECD800895BB1 /* NetworkSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C20CB9E1BB0DD1800895BB1 /* NetworkSession.h */; }; 1206 1207 5C298DA01C3DF02100470AFE /* PendingDownload.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C298D9E1C3DEF2900470AFE /* PendingDownload.h */; }; 1207 5C3AEA8F1FE1F21F002318D3 /* WebsitePolicies .cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C3AEA8E1FE1F1DF002318D3 /* WebsitePolicies.cpp */; };1208 5C3AEA8F1FE1F21F002318D3 /* WebsitePoliciesData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5C3AEA8E1FE1F1DF002318D3 /* WebsitePoliciesData.cpp */; }; 1208 1209 5C62FDF91EFC271C00CE072E /* WKURLSchemeTaskPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C62FDF81EFC263C00CE072E /* WKURLSchemeTaskPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1209 1210 5C6CE6D11F59BC7A0007C6CB /* PageClientImplCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C6CE6D01F59BC460007C6CB /* PageClientImplCocoa.mm */; }; … … 1215 1216 5CB2378C1DF0DE6E00117AA3 /* _WKWebsitePolicies.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB237891DF0DD4300117AA3 /* _WKWebsitePolicies.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1216 1217 5CB2378E1DF0E0D300117AA3 /* _WKWebsitePoliciesInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB2378D1DF0E0C200117AA3 /* _WKWebsitePoliciesInternal.h */; }; 1217 5CB237911DF0E2E600117AA3 /* APIWebsitePolicies.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CB237901DF0E1DD00117AA3 /* APIWebsitePolicies.cpp */; };1218 5CB237921DF0E2EE00117AA3 /* APIWebsitePolicies.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB2378F1DF0E1B800117AA3 /* APIWebsitePolicies.h */; };1219 1218 5CBC9B8D1C65279C00A8FDCF /* NetworkDataTaskCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5CBC9B8B1C65257300A8FDCF /* NetworkDataTaskCocoa.mm */; }; 1220 1219 5CBC9B8E1C652CA000A8FDCF /* NetworkDataTask.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CBC9B891C6524A500A8FDCF /* NetworkDataTask.h */; }; … … 3574 3573 5C0B177F1E7C886700E9123C /* NetworkSocketStream.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = NetworkSocketStream.messages.in; path = NetworkProcess/NetworkSocketStream.messages.in; sourceTree = "<group>"; }; 3575 3574 5C0B17801E7C888000E9123C /* WebSocketStream.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = WebSocketStream.messages.in; path = Network/WebSocketStream.messages.in; sourceTree = "<group>"; }; 3575 5C13024A1FE341A7000D9B31 /* WebsitePoliciesData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebsitePoliciesData.h; sourceTree = "<group>"; }; 3576 5C13024B1FE35142000D9B31 /* WebsitePolicies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebsitePolicies.h; sourceTree = "<group>"; }; 3576 3577 5C1426E21C23F80500D41183 /* NetworkProcessCreationParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = NetworkProcessCreationParameters.cpp; path = NetworkProcess/NetworkProcessCreationParameters.cpp; sourceTree = "<group>"; }; 3577 3578 5C1426E31C23F80500D41183 /* NetworkProcessCreationParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkProcessCreationParameters.h; path = NetworkProcess/NetworkProcessCreationParameters.h; sourceTree = "<group>"; }; … … 3595 3596 5C20CB9E1BB0DD1800895BB1 /* NetworkSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkSession.h; path = NetworkProcess/NetworkSession.h; sourceTree = "<group>"; }; 3596 3597 5C298D9E1C3DEF2900470AFE /* PendingDownload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PendingDownload.h; path = NetworkProcess/Downloads/PendingDownload.h; sourceTree = "<group>"; }; 3597 5C3AEA8E1FE1F1DF002318D3 /* WebsitePolicies .cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebsitePolicies.cpp; sourceTree = "<group>"; };3598 5C3AEA8E1FE1F1DF002318D3 /* WebsitePoliciesData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebsitePoliciesData.cpp; sourceTree = "<group>"; }; 3598 3599 5C62FDF81EFC263C00CE072E /* WKURLSchemeTaskPrivate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WKURLSchemeTaskPrivate.h; sourceTree = "<group>"; }; 3599 3600 5C6CE6D01F59BC460007C6CB /* PageClientImplCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PageClientImplCocoa.mm; sourceTree = "<group>"; }; … … 3603 3604 5C84CF901F96AC4E00B6705A /* NetworkSessionCreationParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkSessionCreationParameters.h; path = NetworkProcess/NetworkSessionCreationParameters.h; sourceTree = "<group>"; }; 3604 3605 5C85C7861C3F23C50061A4FA /* PendingDownload.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PendingDownload.cpp; path = NetworkProcess/Downloads/PendingDownload.cpp; sourceTree = "<group>"; }; 3605 5C9E567F1DF7930900C9EE33 /* WebsitePolicies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebsitePolicies.h; sourceTree = "<group>"; };3606 3606 5C9E56801DF7F05500C9EE33 /* WKWebsitePolicies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKWebsitePolicies.cpp; sourceTree = "<group>"; }; 3607 3607 5C9E56811DF7F05500C9EE33 /* WKWebsitePolicies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebsitePolicies.h; sourceTree = "<group>"; }; … … 3609 3609 5CB2378A1DF0DD4300117AA3 /* _WKWebsitePolicies.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKWebsitePolicies.mm; sourceTree = "<group>"; }; 3610 3610 5CB2378D1DF0E0C200117AA3 /* _WKWebsitePoliciesInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKWebsitePoliciesInternal.h; sourceTree = "<group>"; }; 3611 5CB2378F1DF0E1B800117AA3 /* APIWebsitePolicies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIWebsitePolicies.h; sourceTree = "<group>"; };3612 5CB237901DF0E1DD00117AA3 /* APIWebsitePolicies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = APIWebsitePolicies.cpp; sourceTree = "<group>"; };3613 3611 5CBC9B891C6524A500A8FDCF /* NetworkDataTask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkDataTask.h; path = NetworkProcess/NetworkDataTask.h; sourceTree = "<group>"; }; 3614 3612 5CBC9B8B1C65257300A8FDCF /* NetworkDataTaskCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = NetworkDataTaskCocoa.mm; path = NetworkProcess/cocoa/NetworkDataTaskCocoa.mm; sourceTree = "<group>"; }; … … 5217 5215 511F7D3F1EB1BCEE00E47B83 /* WebsiteDataStoreParameters.cpp */, 5218 5216 511F7D401EB1BCEE00E47B83 /* WebsiteDataStoreParameters.h */, 5219 5C3AEA8E1FE1F1DF002318D3 /* WebsitePolicies .cpp */,5220 5C 9E567F1DF7930900C9EE33 /* WebsitePolicies.h */,5217 5C3AEA8E1FE1F1DF002318D3 /* WebsitePoliciesData.cpp */, 5218 5C13024A1FE341A7000D9B31 /* WebsitePoliciesData.h */, 5221 5219 8360349D1ACB34D600626549 /* WebSQLiteDatabaseTracker.cpp */, 5222 5220 8360349E1ACB34D600626549 /* WebSQLiteDatabaseTracker.h */, … … 7196 7194 6B821DDB1EEF05DD00D7AF4A /* WebResourceLoadStatisticsTelemetry.cpp */, 7197 7195 6B821DDA1EEF05DD00D7AF4A /* WebResourceLoadStatisticsTelemetry.h */, 7196 5C13024B1FE35142000D9B31 /* WebsitePolicies.h */, 7198 7197 51D124241E6D3CC3002B2820 /* WebURLSchemeHandler.cpp */, 7199 7198 51D124251E6D3CC3002B2820 /* WebURLSchemeHandler.h */, … … 7276 7275 1A3635A71A3144A300ED6197 /* APIWebsiteDataStore.cpp */, 7277 7276 1A3635A81A3144A300ED6197 /* APIWebsiteDataStore.h */, 7278 5CB237901DF0E1DD00117AA3 /* APIWebsitePolicies.cpp */,7279 5CB2378F1DF0E1B800117AA3 /* APIWebsitePolicies.h */,7280 7277 1A6563E21B7A8C50009CF787 /* APIWindowFeatures.cpp */, 7281 7278 1A6563E31B7A8C50009CF787 /* APIWindowFeatures.h */, … … 8621 8618 1AE286841C7F93860069AC4F /* APIWebsiteDataRecord.h in Headers */, 8622 8619 1A3635AA1A3144A300ED6197 /* APIWebsiteDataStore.h in Headers */, 8623 5CB237921DF0E2EE00117AA3 /* APIWebsitePolicies.h in Headers */,8624 8620 1A6563E51B7A8C50009CF787 /* APIWindowFeatures.h in Headers */, 8625 8621 1AD4C1931B39F33200ABC28E /* ApplicationStateTracker.h in Headers */, … … 9168 9164 1A53C2AA1A325730004E8C70 /* WebsiteDataStore.h in Headers */, 9169 9165 511F7D411EB1BCF500E47B83 /* WebsiteDataStoreParameters.h in Headers */, 9166 5C13024C1FE35154000D9B31 /* WebsitePolicies.h in Headers */, 9170 9167 836034A01ACB34D600626549 /* WebSQLiteDatabaseTracker.h in Headers */, 9171 9168 1A52C0F81A38CDC70016160A /* WebStorageNamespaceProvider.h in Headers */, … … 10203 10200 1A3635A91A3144A300ED6197 /* APIWebsiteDataStore.cpp in Sources */, 10204 10201 1A3635AD1A3145E500ED6197 /* APIWebsiteDataStoreCocoa.mm in Sources */, 10205 5CB237911DF0E2E600117AA3 /* APIWebsitePolicies.cpp in Sources */,10206 10202 1A6563E41B7A8C50009CF787 /* APIWindowFeatures.cpp in Sources */, 10207 10203 1AD4C1921B39F33200ABC28E /* ApplicationStateTracker.mm in Sources */, … … 10836 10832 1A4832C31A965A3C008B4DFE /* WebsiteDataStoreCocoa.mm in Sources */, 10837 10833 511F7D421EB1BCF800E47B83 /* WebsiteDataStoreParameters.cpp in Sources */, 10838 5C3AEA8F1FE1F21F002318D3 /* WebsitePolicies .cpp in Sources */,10834 5C3AEA8F1FE1F21F002318D3 /* WebsitePoliciesData.cpp in Sources */, 10839 10835 5C7706741D1138380012700F /* WebSocketProvider.cpp in Sources */, 10840 10836 5C0B177C1E7C885400E9123C /* WebSocketStream.cpp in Sources */, -
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
r225934 r225954 55 55 #include "WebProcess.h" 56 56 #include "WebProcessPoolMessages.h" 57 #include "WebsitePolicies .h"57 #include "WebsitePoliciesData.h" 58 58 #include <JavaScriptCore/APICast.h> 59 59 #include <JavaScriptCore/JSObject.h> … … 777 777 } 778 778 779 void WebFrameLoaderClient::applyToDocumentLoader(WebsitePolicies && websitePolicies)779 void WebFrameLoaderClient::applyToDocumentLoader(WebsitePoliciesData&& websitePolicies) 780 780 { 781 781 if (!m_frame) … … 792 792 return; 793 793 794 WebsitePolicies ::applyToDocumentLoader(WTFMove(websitePolicies), *documentLoader);794 WebsitePoliciesData::applyToDocumentLoader(WTFMove(websitePolicies), *documentLoader); 795 795 } 796 796 … … 863 863 // Notify the UIProcess. 864 864 Ref<WebFrame> protect(*m_frame); 865 std::optional<WebsitePolicies > websitePolicies;865 std::optional<WebsitePoliciesData> websitePolicies; 866 866 if (!webPage->sendSync(Messages::WebPageProxy::DecidePolicyForNavigationAction(m_frame->frameID(), SecurityOriginData::fromFrame(coreFrame), documentLoader->navigationID(), navigationActionData, originatingFrameInfoData, originatingFrame && originatingFrame->page() ? originatingFrame->page()->pageID() : 0, navigationAction.resourceRequest(), request, listenerID, UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())), Messages::WebPageProxy::DecidePolicyForNavigationAction::Reply(receivedPolicyAction, newNavigationID, policyAction, downloadID, websitePolicies))) { 867 867 m_frame->didReceivePolicyDecision(listenerID, PolicyAction::Ignore, 0, { }, { }); -
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.h
r225934 r225954 36 36 class PluginView; 37 37 class WebFrame; 38 class WebsitePolicies;38 struct WebsitePoliciesData; 39 39 40 40 class WebFrameLoaderClient final : public WebCore::FrameLoaderClient { … … 50 50 void setUseIconLoadingClient(bool useIconLoadingClient) { m_useIconLoadingClient = useIconLoadingClient; } 51 51 52 void applyToDocumentLoader(WebsitePolicies &&);52 void applyToDocumentLoader(WebsitePoliciesData&&); 53 53 54 54 std::optional<uint64_t> pageID() const final; -
trunk/Source/WebKit/WebProcess/WebPage/WebFrame.cpp
r225682 r225954 46 46 #include "WebPageProxyMessages.h" 47 47 #include "WebProcess.h" 48 #include "WebsitePoliciesData.h" 48 49 #include <JavaScriptCore/APICast.h> 49 50 #include <JavaScriptCore/JSContextRef.h> … … 252 253 } 253 254 254 void WebFrame::didReceivePolicyDecision(uint64_t listenerID, PolicyAction action, uint64_t navigationID, DownloadID downloadID, std::optional<WebsitePolicies >&& websitePolicies)255 void WebFrame::didReceivePolicyDecision(uint64_t listenerID, PolicyAction action, uint64_t navigationID, DownloadID downloadID, std::optional<WebsitePoliciesData>&& websitePolicies) 255 256 { 256 257 if (!m_coreFrame) -
trunk/Source/WebKit/WebProcess/WebPage/WebFrame.h
r225682 r225954 64 64 class InjectedBundleScriptWorld; 65 65 class WebPage; 66 class WebsitePolicies;67 66 struct FrameInfoData; 67 struct WebsitePoliciesData; 68 68 69 69 class WebFrame : public API::ObjectImpl<API::Object::Type::BundleFrame> { … … 87 87 uint64_t setUpPolicyListener(WebCore::FramePolicyFunction&&, ForNavigationAction); 88 88 void invalidatePolicyListener(); 89 void didReceivePolicyDecision(uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, DownloadID, std::optional<WebsitePolicies >&&);89 void didReceivePolicyDecision(uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, DownloadID, std::optional<WebsitePoliciesData>&&); 90 90 91 91 uint64_t setUpWillSubmitFormListener(WTF::Function<void(void)>&&); -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r225949 r225954 31 31 #include "APIArray.h" 32 32 #include "APIGeometry.h" 33 #include "APIWebsitePolicies.h"34 33 #include "AssistedNodeInformation.h" 35 34 #include "DataReference.h" … … 123 122 #include "WebValidationMessageClient.h" 124 123 #include "WebsiteDataStoreParameters.h" 124 #include "WebsitePolicies.h" 125 125 #include <JavaScriptCore/APICast.h> 126 126 #include <WebCore/ApplicationCacheStorage.h> … … 2747 2747 } 2748 2748 2749 void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, PolicyAction policyAction, uint64_t navigationID, const DownloadID& downloadID, std::optional<WebsitePolicies >&& websitePolicies)2749 void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, PolicyAction policyAction, uint64_t navigationID, const DownloadID& downloadID, std::optional<WebsitePoliciesData>&& websitePolicies) 2750 2750 { 2751 2751 WebFrame* frame = WebProcess::singleton().webFrame(frameID); … … 5439 5439 } 5440 5440 5441 void WebPage::updateWebsitePolicies(WebsitePolicies && websitePolicies)5441 void WebPage::updateWebsitePolicies(WebsitePoliciesData&& websitePolicies) 5442 5442 { 5443 5443 if (!m_page) … … 5448 5448 return; 5449 5449 5450 WebsitePolicies ::applyToDocumentLoader(WTFMove(websitePolicies), *documentLoader);5450 WebsitePoliciesData::applyToDocumentLoader(WTFMove(websitePolicies), *documentLoader); 5451 5451 5452 5452 #if ENABLE(VIDEO) -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
r225926 r225954 211 211 class WebWheelEvent; 212 212 class WebTouchEvent; 213 class WebsitePolicies;214 213 class RemoteLayerTreeTransaction; 215 214 … … 225 224 struct WebPreferencesStore; 226 225 struct WebSelectionData; 226 struct WebsitePoliciesData; 227 227 228 228 enum class DragControllerAction; … … 1190 1190 void updatePreferencesGenerated(const WebPreferencesStore&); 1191 1191 1192 void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, const DownloadID&, std::optional<WebsitePolicies >&&);1192 void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, const DownloadID&, std::optional<WebsitePoliciesData>&&); 1193 1193 void continueWillSubmitForm(uint64_t frameID, uint64_t listenerID); 1194 1194 void setUserAgent(const String&); … … 1299 1299 void reportUsedFeatures(); 1300 1300 1301 void updateWebsitePolicies(WebsitePolicies &&);1301 void updateWebsitePolicies(WebsitePoliciesData&&); 1302 1302 1303 1303 #if PLATFORM(MAC) -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
r225682 r225954 151 151 DidRemoveBackForwardItem(uint64_t backForwardItemID) 152 152 153 UpdateWebsitePolicies( WebKit::WebsitePolicieswebsitePolicies)154 DidReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, enum WebCore::PolicyAction policyAction, uint64_t navigationID, WebKit::DownloadID downloadID, std::optional<WebKit::WebsitePolicies > websitePolicies)153 UpdateWebsitePolicies(struct WebKit::WebsitePoliciesData websitePolicies) 154 DidReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, enum WebCore::PolicyAction policyAction, uint64_t navigationID, WebKit::DownloadID downloadID, std::optional<WebKit::WebsitePoliciesData> websitePolicies) 155 155 ContinueWillSubmitForm(uint64_t frameID, uint64_t listenerID) 156 156
Note:
See TracChangeset
for help on using the changeset viewer.