Title: [109277] trunk
Revision
109277
Author
bweinst...@apple.com
Date
2012-02-29 15:32:33 -0800 (Wed, 29 Feb 2012)

Log Message

Source/WebKit2: WebKit2: didNewFirstVisuallyNonEmptyLayout should be sent to injected bundle
https://bugs.webkit.org/show_bug.cgi?id=79849

Tell the injected bundle about didNewFirstVisuallyNonEmptyLayout (we currently
just tell the UI process).

Reviewed by Beth Dakin.

* WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add didNewFirstVisuallyNonEmptyLayout to version 1.
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::didNewFirstVisuallyNonEmptyLayout): Call through to the
    client.
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
(InjectedBundlePageLoaderClient):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidNewFirstVisuallyNonEmptyLayout): Tell the injected
    bundle.

Tools: WebKit2: didNewFirstVisuallyNonEmptyLayout should be sent to injected bundle
https://bugs.webkit.org/show_bug.cgi?id=79849

Reviewed by Beth Dakin.

* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage): Add an entry to the struct.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (109276 => 109277)


--- trunk/Source/WebKit2/ChangeLog	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Source/WebKit2/ChangeLog	2012-02-29 23:32:33 UTC (rev 109277)
@@ -1,3 +1,23 @@
+2012-02-28  Brian Weinstein  <bweinst...@apple.com>
+
+        WebKit2: didNewFirstVisuallyNonEmptyLayout should be sent to injected bundle
+        https://bugs.webkit.org/show_bug.cgi?id=79849
+        
+        Tell the injected bundle about didNewFirstVisuallyNonEmptyLayout (we currently
+        just tell the UI process).
+
+        Reviewed by Beth Dakin.
+
+        * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add didNewFirstVisuallyNonEmptyLayout to version 1.
+        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
+        (WebKit::InjectedBundlePageLoaderClient::didNewFirstVisuallyNonEmptyLayout): Call through to the
+            client.
+        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
+        (InjectedBundlePageLoaderClient):
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebKit::WebFrameLoaderClient::dispatchDidNewFirstVisuallyNonEmptyLayout): Tell the injected
+            bundle.
+
 2012-02-29  Tim Horton  <timothy_hor...@apple.com>
 
         Make use of CG rounded-rect primitives

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h (109276 => 109277)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h	2012-02-29 23:32:33 UTC (rev 109277)
@@ -95,6 +95,7 @@
 typedef void (*WKBundlePageDidDetectXSSForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, WKTypeRef* userData, const void *clientInfo);
 typedef void (*WKBundlePageDidFirstLayoutForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, WKTypeRef* userData, const void *clientInfo);
 typedef void (*WKBundlePageDidFirstVisuallyNonEmptyLayoutForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, WKTypeRef* userData, const void *clientInfo);
+typedef void (*WKBundlePageDidNewFirstVisuallyNonEmptyLayoutCallback)(WKBundlePageRef page, WKTypeRef* userData, const void *clientInfo);
 typedef void (*WKBundlePageDidLayoutForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, const void* clientInfo);
 typedef void (*WKBundlePageDidClearWindowObjectForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, WKBundleScriptWorldRef world, const void *clientInfo);
 typedef void (*WKBundlePageDidCancelClientRedirectForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, const void *clientInfo);
@@ -127,6 +128,7 @@
 
     // Version 1.
     WKBundlePageDidLayoutForFrameCallback                               didLayoutForFrame;
+    WKBundlePageDidNewFirstVisuallyNonEmptyLayoutCallback               didNewFirstVisuallyNonEmptyLayout;
     WKBundlePageDidDetectXSSForFrameCallback                            didDetectXSSForFrame;
 };
 typedef struct WKBundlePageLoaderClient WKBundlePageLoaderClient;

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp (109276 => 109277)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp	2012-02-29 23:32:33 UTC (rev 109277)
@@ -186,7 +186,6 @@
     userData = adoptRef(toImpl(userDataToPass));
 }
 
-
 void InjectedBundlePageLoaderClient::didLayoutForFrame(WebPage* page, WebFrame* frame)
 {
     if (!m_client.didLayoutForFrame)
@@ -195,6 +194,16 @@
     m_client.didLayoutForFrame(toAPI(page), toAPI(frame), m_client.clientInfo);
 }
 
+void InjectedBundlePageLoaderClient::didNewFirstVisuallyNonEmptyLayout(WebPage* page, RefPtr<APIObject>& userData)
+{
+    if (!m_client.didNewFirstVisuallyNonEmptyLayout)
+        return;
+    
+    WKTypeRef userDataToPass = 0;
+    m_client.didNewFirstVisuallyNonEmptyLayout(toAPI(page), &userDataToPass, m_client.clientInfo);
+    userData = adoptRef(toImpl(userDataToPass));
+}    
+
 void InjectedBundlePageLoaderClient::didClearWindowObjectForFrame(WebPage* page, WebFrame* frame, DOMWrapperWorld* world)
 {
     if (!m_client.didClearWindowObjectForFrame)

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h (109276 => 109277)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h	2012-02-29 23:32:33 UTC (rev 109277)
@@ -64,6 +64,7 @@
     void didFirstLayoutForFrame(WebPage*, WebFrame*, RefPtr<APIObject>& userData);
     void didFirstVisuallyNonEmptyLayoutForFrame(WebPage*, WebFrame*, RefPtr<APIObject>& userData);
     void didLayoutForFrame(WebPage*, WebFrame*);
+    void didNewFirstVisuallyNonEmptyLayout(WebPage*, WTF::RefPtr<APIObject>& userData);
 
     void didClearWindowObjectForFrame(WebPage*, WebFrame*, WebCore::DOMWrapperWorld*);
     void didCancelClientRedirectForFrame(WebPage*, WebFrame*);

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (109276 => 109277)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2012-02-29 23:32:33 UTC (rev 109277)
@@ -564,6 +564,9 @@
 
     RefPtr<APIObject> userData;
 
+    // Notify the bundle client.
+    webPage->injectedBundleLoaderClient().didNewFirstVisuallyNonEmptyLayout(webPage, userData);
+    
     // Notify the UIProcess.
     webPage->send(Messages::WebPageProxy::DidNewFirstVisuallyNonEmptyLayout(InjectedBundleUserMessageEncoder(userData.get())));
 }

Modified: trunk/Tools/ChangeLog (109276 => 109277)


--- trunk/Tools/ChangeLog	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Tools/ChangeLog	2012-02-29 23:32:33 UTC (rev 109277)
@@ -1,3 +1,13 @@
+2012-02-28  Brian Weinstein  <bweinst...@apple.com>
+
+        WebKit2: didNewFirstVisuallyNonEmptyLayout should be sent to injected bundle
+        https://bugs.webkit.org/show_bug.cgi?id=79849
+
+        Reviewed by Beth Dakin.
+
+        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
+        (WTR::InjectedBundlePage::InjectedBundlePage): Add an entry to the struct.
+
 2012-02-29  Lucas Forschler  <lforsch...@apple.com>
 
         Removed unused Apple buildslaves from the master configuration

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp (109276 => 109277)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp	2012-02-29 23:28:00 UTC (rev 109276)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp	2012-02-29 23:32:33 UTC (rev 109277)
@@ -215,6 +215,7 @@
         willPerformClientRedirectForFrame,
         didHandleOnloadEventsForFrame,
         0, // didLayoutForFrame
+        0, // didNewFirstVisuallyNonEmptyLayoutForFrame
         didDetectXSSForFrame,
     };
     WKBundlePageSetPageLoaderClient(m_page, &loaderClient);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to