Index: Source/WebKit/ChangeLog |
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog |
index fd6a2c57a187181750a9645a5882bcadf8369bcc..ba63b49f6cdff6588736a47f26b6fa8b9d76a91e 100644 |
--- a/Source/WebKit/ChangeLog |
+++ b/Source/WebKit/ChangeLog |
@@ -1,3 +1,75 @@ |
+2018-06-11 Ali Juma <ajuma@chromium.org> |
+ |
+ Use SafeBrowsing in WKWebView |
+ https://bugs.webkit.org/show_bug.cgi?id=181804 |
+ |
+ Reviewed by NOBODY (OOPS!). |
+ |
+ In parallel with asking the embedder to decidePolicyForNavigationAction, |
+ perform a SafeBrowsing look-up. If the embedder's decision is to proceed, |
+ but the SafeBrowsing look-up finds that the URL is unsafe, fire a new |
+ decidePolicyForSafeBrowsingResultForNavigationAction callback to ask |
+ the embedder whether to proceed anyway, to cancel the navigation, or to |
+ cancel the navigation and show a default warning page. |
+ |
+ Add a new safeBrowsingEnabled WKPreference for this new behavior. |
+ |
+ Add a SafeBrowsingContextProvider for switching between the system-provided |
+ SSBLookupContext and the test-only _WKSafeBrowsingLookupContext. |
+ |
+ * Shared/LoadParameters.cpp: |
+ (WebKit::LoadParameters::encode const): |
+ (WebKit::LoadParameters::decode): |
+ * Shared/LoadParameters.h: |
+ * Shared/NavigationActionData.cpp: |
+ (WebKit::NavigationActionData::encode const): |
+ (WebKit::NavigationActionData::decode): |
+ * Shared/NavigationActionData.h: |
+ * Shared/WebPreferences.yaml: |
+ * UIProcess/API/APINavigationAction.h: |
+ * UIProcess/API/Cocoa/WKNavigationDelegate.h: |
+ * UIProcess/API/Cocoa/WKPreferences.h: |
+ * UIProcess/API/Cocoa/WKPreferences.mm: |
+ (-[WKPreferences encodeWithCoder:]): |
+ (-[WKPreferences initWithCoder:]): |
+ (-[WKPreferences safeBrowsingEnabled]): |
+ (-[WKPreferences setSafeBrowsingEnabled:]): |
+ * UIProcess/API/Cocoa/WKWebView.mm: |
+ (-[WKWebView _setUseTestSafeBrowsingContext:]): |
+ * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
+ * UIProcess/Cocoa/NavigationState.h: |
+ * UIProcess/Cocoa/NavigationState.mm: |
+ (WebKit::NavigationState::NavigationState): |
+ (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction): |
+ (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationActionInternal): |
+ * UIProcess/Cocoa/SafeBrowsingContextProvider.h: Added. |
+ (WebKit::SafeBrowsingContextProvider::setUseTestContext): |
+ * UIProcess/Cocoa/SafeBrowsingContextProvider.mm: Added. |
+ (+[_WKSafeBrowsingTestLookupContext sharedLookupContext]): |
+ (-[_WKSafeBrowsingTestLookupContext lookUpURL:completionHandler:]): |
+ (WebKit::SafeBrowsingContextProvider::sharedLookupContext): |
+ * UIProcess/Cocoa/SafeBrowsingController.h: Added. |
+ (WebKit::SafeBrowsingController::SafeBrowsingCheck::SafeBrowsingCheck): |
+ * UIProcess/Cocoa/SafeBrowsingController.mm: Added. |
+ (WebKit::SafeBrowsingController::SafeBrowsingController): |
+ (WebKit::SafeBrowsingController::~SafeBrowsingController): |
+ (WebKit::SafeBrowsingController::checkURL): |
+ (WebKit::SafeBrowsingController::receivedNavigationPolicyDecision): |
+ (WebKit::SafeBrowsingController::receivedSafeBrowsingResult): |
+ (WebKit::SafeBrowsingController::maybeFinishedCheck): |
+ * UIProcess/WebPageProxy.cpp: |
+ (WebKit::WebPageProxy::loadAlternateHTMLString): |
+ * UIProcess/WebPageProxy.h: |
+ * WebKit.xcodeproj/project.pbxproj: |
+ * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
+ (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
+ * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
+ * WebProcess/WebPage/WebPage.cpp: |
+ (WebKit::WebPage::loadDataImpl): |
+ (WebKit::WebPage::loadStringImpl): |
+ (WebKit::WebPage::loadAlternateHTMLString): |
+ * WebProcess/WebPage/WebPage.h: |
+ |
2018-06-12 Jer Noble <jer.noble@apple.com> |
Make Modern EME An Experimental Feature Again |