Diff
Modified: branches/safari-607-branch/Source/WebKit/ChangeLog (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/ChangeLog 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/ChangeLog 2019-01-28 09:46:20 UTC (rev 240577)
@@ -1,5 +1,55 @@
2019-01-28 Babak Shafiei <[email protected]>
+ Cherry-pick r240516. rdar://problem/47586889
+
+ Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
+ https://bugs.webkit.org/show_bug.cgi?id=193802
+ <rdar://problem/46010580>
+
+ Reviewed by Andy Estes.
+
+ Source/WebKit:
+
+ * UIProcess/API/APIUIClient.h:
+ (API::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+ * UIProcess/Cocoa/UIDelegate.h:
+ * UIProcess/Cocoa/UIDelegate.mm:
+ (WebKit::UIDelegate::setDelegate):
+ (WebKit::UIDelegate::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::decidePolicyForNavigationAction):
+
+ Tools:
+
+ * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
+ (-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]):
+ (TEST):
+
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@240516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2019-01-25 Alex Christensen <[email protected]>
+
+ Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
+ https://bugs.webkit.org/show_bug.cgi?id=193802
+ <rdar://problem/46010580>
+
+ Reviewed by Andy Estes.
+
+ * UIProcess/API/APIUIClient.h:
+ (API::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+ * UIProcess/Cocoa/UIDelegate.h:
+ * UIProcess/Cocoa/UIDelegate.mm:
+ (WebKit::UIDelegate::setDelegate):
+ (WebKit::UIDelegate::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::decidePolicyForNavigationAction):
+
+2019-01-28 Babak Shafiei <[email protected]>
+
Cherry-pick r240533. rdar://problem/47586823
REGRESSION: Some USDz from 3rd party websites don't go directly to AR QL
Modified: branches/safari-607-branch/Source/WebKit/UIProcess/API/APIUIClient.h (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/UIProcess/API/APIUIClient.h 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/API/APIUIClient.h 2019-01-28 09:46:20 UTC (rev 240577)
@@ -182,6 +182,7 @@
virtual void didExceedBackgroundResourceLimitWhileInForeground(WebKit::WebPageProxy&, WKResourceLimit) { }
virtual void didShowSafeBrowsingWarning() { }
+ virtual void didClickGoBackFromSafeBrowsingWarning() { }
};
} // namespace API
Modified: branches/safari-607-branch/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h 2019-01-28 09:46:20 UTC (rev 240577)
@@ -102,6 +102,7 @@
- (void)_webViewRequestPointerLock:(WKWebView *)webView WK_API_AVAILABLE(macosx(10.12.3));
- (void)_webViewDidRequestPointerLock:(WKWebView *)webView completionHandler:(void (^)(BOOL))completionHandler WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
- (void)_webViewDidShowSafeBrowsingWarning:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
+- (void)_webViewDidClickGoBackFromSafeBrowsingWarning:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
- (void)_webViewDidLosePointerLock:(WKWebView *)webView WK_API_AVAILABLE(macosx(10.12.3));
- (void)_webView:(WKWebView *)webView hasVideoInPictureInPictureDidChange:(BOOL)hasVideoInPictureInPicture WK_API_AVAILABLE(macosx(10.13), ios(11.0));
Modified: branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.h (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.h 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.h 2019-01-28 09:46:20 UTC (rev 240577)
@@ -147,6 +147,7 @@
void imageOrMediaDocumentSizeChanged(const WebCore::IntSize&) final;
void didShowSafeBrowsingWarning() final;
+ void didClickGoBackFromSafeBrowsingWarning() final;
UIDelegate& m_uiDelegate;
};
@@ -224,6 +225,7 @@
#endif
bool webViewHasVideoInPictureInPictureDidChange : 1;
bool webViewDidShowSafeBrowsingWarning : 1;
+ bool webViewDidClickGoBackFromSafeBrowsingWarning : 1;
} m_delegateMethods;
};
Modified: branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2019-01-28 09:46:20 UTC (rev 240577)
@@ -170,6 +170,7 @@
m_delegateMethods.webViewHasVideoInPictureInPictureDidChange = [delegate respondsToSelector:@selector(_webView:hasVideoInPictureInPictureDidChange:)];
m_delegateMethods.webViewDidShowSafeBrowsingWarning = [delegate respondsToSelector:@selector(_webViewDidShowSafeBrowsingWarning:)];
+ m_delegateMethods.webViewDidClickGoBackFromSafeBrowsingWarning = [delegate respondsToSelector:@selector(_webViewDidClickGoBackFromSafeBrowsingWarning:)];
}
#if ENABLE(CONTEXT_MENUS)
@@ -1235,6 +1236,18 @@
[static_cast<id <WKUIDelegatePrivate>>(delegate) _webViewDidShowSafeBrowsingWarning:m_uiDelegate.m_webView];
}
+void UIDelegate::UIClient::didClickGoBackFromSafeBrowsingWarning()
+{
+ if (!m_uiDelegate.m_delegateMethods.webViewDidClickGoBackFromSafeBrowsingWarning)
+ return;
+
+ auto delegate = m_uiDelegate.m_delegate.get();
+ if (!delegate)
+ return;
+
+ [static_cast<id <WKUIDelegatePrivate>>(delegate) _webViewDidClickGoBackFromSafeBrowsingWarning:m_uiDelegate.m_webView];
+}
+
void UIDelegate::UIClient::hasVideoInPictureInPictureDidChange(WebPageProxy*, bool hasVideoInPictureInPicture)
{
if (!m_uiDelegate.m_delegateMethods.webViewHasVideoInPictureInPictureDidChange)
Modified: branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (240576 => 240577)
--- branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-01-28 09:46:20 UTC (rev 240577)
@@ -4437,6 +4437,7 @@
}, [&] (ContinueUnsafeLoad continueUnsafeLoad) {
switch (continueUnsafeLoad) {
case ContinueUnsafeLoad::No:
+ protectedThis->m_uiClient->didClickGoBackFromSafeBrowsingWarning();
completionHandler(PolicyAction::Ignore);
break;
case ContinueUnsafeLoad::Yes:
Modified: branches/safari-607-branch/Tools/ChangeLog (240576 => 240577)
--- branches/safari-607-branch/Tools/ChangeLog 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Tools/ChangeLog 2019-01-28 09:46:20 UTC (rev 240577)
@@ -1,5 +1,49 @@
2019-01-28 Babak Shafiei <[email protected]>
+ Cherry-pick r240516. rdar://problem/47586889
+
+ Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
+ https://bugs.webkit.org/show_bug.cgi?id=193802
+ <rdar://problem/46010580>
+
+ Reviewed by Andy Estes.
+
+ Source/WebKit:
+
+ * UIProcess/API/APIUIClient.h:
+ (API::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+ * UIProcess/Cocoa/UIDelegate.h:
+ * UIProcess/Cocoa/UIDelegate.mm:
+ (WebKit::UIDelegate::setDelegate):
+ (WebKit::UIDelegate::UIClient::didClickGoBackFromSafeBrowsingWarning):
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::decidePolicyForNavigationAction):
+
+ Tools:
+
+ * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
+ (-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]):
+ (TEST):
+
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@240516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2019-01-25 Alex Christensen <[email protected]>
+
+ Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
+ https://bugs.webkit.org/show_bug.cgi?id=193802
+ <rdar://problem/46010580>
+
+ Reviewed by Andy Estes.
+
+ * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
+ (-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]):
+ (TEST):
+
+2019-01-28 Babak Shafiei <[email protected]>
+
Cherry-pick r240533. rdar://problem/47586823
REGRESSION: Some USDz from 3rd party websites don't go directly to AR QL
Modified: branches/safari-607-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm (240576 => 240577)
--- branches/safari-607-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm 2019-01-28 09:41:30 UTC (rev 240576)
+++ branches/safari-607-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm 2019-01-28 09:46:20 UTC (rev 240577)
@@ -40,6 +40,7 @@
static bool committedNavigation;
static bool warningShown;
+static bool goBackClicked;
@interface SafeBrowsingNavigationDelegate : NSObject <WKNavigationDelegate, WKUIDelegatePrivate>
@end
@@ -56,6 +57,11 @@
warningShown = true;
}
+- (void)_webViewDidClickGoBackFromSafeBrowsingWarning:(WKWebView *)webView
+{
+ goBackClicked = true;
+}
+
@end
@interface TestServiceLookupResult : NSObject {
@@ -221,7 +227,9 @@
TEST(SafeBrowsing, GoBack)
{
auto webView = safeBrowsingView();
+ EXPECT_FALSE(goBackClicked);
goBack([webView _safeBrowsingWarning]);
+ EXPECT_TRUE(goBackClicked);
}
template<typename ViewType> void visitUnsafeSite(ViewType *view)