Title: [182267] trunk/Source/WebKit2
- Revision
- 182267
- Author
- [email protected]
- Date
- 2015-04-01 22:58:20 -0700 (Wed, 01 Apr 2015)
Log Message
[WK2][Cocoa] Add didFailProvisionalLoadWithErrorForFrame callback to WKWebProcessPlugInLoadDelegate
https://bugs.webkit.org/show_bug.cgi?id=143319
<rdar://problem/19463834>
Reviewed by Dan Bernstein.
Add didFailProvisionalLoadWithErrorForFrame callback to
WKWebProcessPlugInLoadDelegate so that the client side can track all
types page load completions:
- didFailProvisionalLoadWithErrorForFrame
- didFailLoadWithErrorForFrame
- didFinishLoadForFrame
Note that this event is already exposed on UIProcess side via the
WKPageLoaderClient.didFailLoadWithErrorForFrame callback.
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(didFailProvisionalLoadWithErrorForFrame):
(setUpPageLoaderClient):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (182266 => 182267)
--- trunk/Source/WebKit2/ChangeLog 2015-04-02 00:22:54 UTC (rev 182266)
+++ trunk/Source/WebKit2/ChangeLog 2015-04-02 05:58:20 UTC (rev 182267)
@@ -1,3 +1,26 @@
+2015-04-01 Chris Dumez <[email protected]>
+
+ [WK2][Cocoa] Add didFailProvisionalLoadWithErrorForFrame callback to WKWebProcessPlugInLoadDelegate
+ https://bugs.webkit.org/show_bug.cgi?id=143319
+ <rdar://problem/19463834>
+
+ Reviewed by Dan Bernstein.
+
+ Add didFailProvisionalLoadWithErrorForFrame callback to
+ WKWebProcessPlugInLoadDelegate so that the client side can track all
+ types page load completions:
+ - didFailProvisionalLoadWithErrorForFrame
+ - didFailLoadWithErrorForFrame
+ - didFinishLoadForFrame
+
+ Note that this event is already exposed on UIProcess side via the
+ WKPageLoaderClient.didFailLoadWithErrorForFrame callback.
+
+ * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
+ * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
+ (didFailProvisionalLoadWithErrorForFrame):
+ (setUpPageLoaderClient):
+
2015-04-01 Enrica Casucci <[email protected]>
Injected bundle messages should be at the page level.
Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h (182266 => 182267)
--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h 2015-04-02 00:22:54 UTC (rev 182266)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h 2015-04-02 05:58:20 UTC (rev 182267)
@@ -40,6 +40,7 @@
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didReceiveServerRedirectForProvisionalLoadForFrame:(WKWebProcessPlugInFrame *)frame;
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didCommitLoadForFrame:(WKWebProcessPlugInFrame *)frame;
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didFinishDocumentLoadForFrame:(WKWebProcessPlugInFrame *)frame;
+- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didFailProvisionalLoadWithErrorForFrame:(WKWebProcessPlugInFrame *)frame error:(NSError *)error;
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didFailLoadWithErrorForFrame:(WKWebProcessPlugInFrame *)frame error:(NSError *)error;
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didFinishLoadForFrame:(WKWebProcessPlugInFrame *)frame;
- (void)webProcessPlugInBrowserContextController:(WKWebProcessPlugInBrowserContextController*)controller didSameDocumentNavigation:(_WKSameDocumentNavigationType)navigationType forFrame:(WKWebProcessPlugInFrame *)frame;
Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm (182266 => 182267)
--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm 2015-04-02 00:22:54 UTC (rev 182266)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm 2015-04-02 05:58:20 UTC (rev 182267)
@@ -141,6 +141,15 @@
[loadDelegate webProcessPlugInBrowserContextController:pluginContextController didFinishDocumentLoadForFrame:wrapper(*toImpl(frame))];
}
+static void didFailProvisionalLoadWithErrorForFrame(WKBundlePageRef page, WKBundleFrameRef frame, WKErrorRef wkError, WKTypeRef* userData, const void *clientInfo)
+{
+ WKWebProcessPlugInBrowserContextController *pluginContextController = (WKWebProcessPlugInBrowserContextController *)clientInfo;
+ auto loadDelegate = pluginContextController->_loadDelegate.get();
+
+ if ([loadDelegate respondsToSelector:@selector(webProcessPlugInBrowserContextController:didFailProvisionalLoadWithErrorForFrame:error:)])
+ [loadDelegate webProcessPlugInBrowserContextController:pluginContextController didFailProvisionalLoadWithErrorForFrame:wrapper(*toImpl(frame)) error:wrapper(*toImpl(wkError))];
+}
+
static void didFailLoadWithErrorForFrame(WKBundlePageRef page, WKBundleFrameRef frame, WKErrorRef wkError, WKTypeRef* userData, const void *clientInfo)
{
WKWebProcessPlugInBrowserContextController *pluginContextController = (WKWebProcessPlugInBrowserContextController *)clientInfo;
@@ -229,6 +238,7 @@
client.didReceiveServerRedirectForProvisionalLoadForFrame = didReceiveServerRedirectForProvisionalLoadForFrame;
client.didCommitLoadForFrame = didCommitLoadForFrame;
client.didFinishDocumentLoadForFrame = didFinishDocumentLoadForFrame;
+ client.didFailProvisionalLoadWithErrorForFrame = didFailProvisionalLoadWithErrorForFrame;
client.didFailLoadWithErrorForFrame = didFailLoadWithErrorForFrame;
client.didSameDocumentNavigationForFrame = didSameDocumentNavigationForFrame;
client.didFinishLoadForFrame = didFinishLoadForFrame;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes