};
WKBundlePageSetResourceLoadClient(page, &resourceLoadClient);
- connectLoaderClientCallbacksToPage(page);
+ WKBundlePageLoaderClient loaderClient = {
+ kWKBundlePageLoaderClientCurrentVersion,
+ this, /* clientinfo */
+ didStartProvisionalLoadForFrameCallback, /* didStartProvisionalLoadForFrame */
+ 0, /* didReceiveServerRedirectForProvisionalLoadForFrame */
+ 0, /* didFailProvisionalLoadWithErrorForFrame */
+ didCommitLoadForFrameCallback, /* didCommitLoadForFrame */
+ 0, /* didFinishDocumentLoadForFrame */
+ 0, /* didFinishLoadForFrame */
+ 0, /* didFailLoadWithErrorForFrame */
+ 0, /* didSameDocumentNavigationForFrame */
+ 0, /* didReceiveTitleForFrame */
+ 0, /* didFirstLayoutForFrame */
+ 0, /* didFirstVisuallyNonEmptyLayoutForFrame */
+ didRemoveFrameFromHierarchyCallback, /* didRemoveFrameFromHierarchy */
+ 0, /* didDisplayInsecureContentForFrame */
+ 0, /* didRunInsecureContentForFrame */
+ 0, /* didClearWindowObjectForFrame */
+ 0, /* didCancelClientRedirectForFrame */
+ 0, /* willPerformClientRedirectForFrame */
+ 0, /* didHandleOnloadEventsForFrame */
+ 0, /* didLayoutForFrame */
+ 0, /* didNewFirstVisuallyNonEmptyLayout */
+ 0, /* didDetectXSSForFrame */
+ 0, /* shouldGoToBackForwardListItem */
+ 0, /* globalObjectIsAvailableForFrame */
+ 0, /* willDisconnectDOMWindowExtensionFromGlobalObject */
+ 0, /* didReconnectDOMWindowExtensionToGlobalObject */
+ 0, /* willDestroyGlobalObjectForDOMWindowExtension */
+ 0, /* didFinishProgress */
+ 0, /* shouldForceUniversalAccessFromLocalURL */
+ 0, /* didReceiveIntentForFrame */
+ 0, /* registerIntentServiceForFrame */
+ };
+ WKBundlePageSetPageLoaderClient(page, &loaderClient);
+
WKBundlePagePolicyClient policyClient = {
kWKBundlePagePolicyClientCurrentVersion, /* version */
LogInfo(
"PluginModule shutdown ignored, there are still alive pages!");
}
- } else if (WKStringIsEqualToUTF8CString(messageName,
- BundleMessages::SUSPEND))
- {
- LogDebug("suspend plugins");
- requestSuspend();
- } else if (WKStringIsEqualToUTF8CString(messageName,
- BundleMessages::RESUME))
- {
- LogDebug("resume plugins");
- requestResume();
- } else if (WKStringIsEqualToUTF8CString(messageName,
- BundleMessages::
- SET_CUSTOM_PROPERTIES))
+ }
+ else if (WKStringIsEqualToUTF8CString(messageName,
+ BundleMessages::SET_CUSTOM_PROPERTIES))
{
LogDebug("reset custom properties of window objects");
// set information from ui process
return reinterpret_cast<void*>(getBuffer);
}
-void Bundle::requestSuspend()
-{
- LogDebug("Unregister callbacks");
- FOREACH(page, m_pagesList)
- {
- WKBundlePageSetPageLoaderClient(*page, NULL);
- }
-}
-
-void Bundle::requestResume()
-{
- LogDebug("Register callbacks");
- FOREACH(page, m_pagesList)
- {
- connectLoaderClientCallbacksToPage(*page);
- }
-}
-
-void Bundle::connectLoaderClientCallbacksToPage(WKBundlePageRef page)
-{
- LogDebug("");
-
- WKBundlePageLoaderClient loaderClient = {
- kWKBundlePageLoaderClientCurrentVersion,
- this, /* clientinfo */
- didStartProvisionalLoadForFrameCallback, /* StartProvisionalLdForFrm */
- 0, /* didReceiveServerRedirectForProvisionalLoadForFrame */
- 0, /* didFailProvisionalLoadWithErrorForFrame */
- didCommitLoadForFrameCallback, /* didCommitLoadForFrame */
- 0, /* didFinishDocumentLoadForFrame */
- 0, /* didFinishLoadForFrame */
- 0, /* didFailLoadWithErrorForFrame */
- 0, /* didSameDocumentNavigationForFrame */
- 0, /* didReceiveTitleForFrame */
- 0, /* didFirstLayoutForFrame */
- 0, /* didFirstVisuallyNonEmptyLayoutForFrame */
- didRemoveFrameFromHierarchyCallback, /* didRemoveFrameFromHierarchy */
- 0, /* didDisplayInsecureContentForFrame */
- 0, /* didRunInsecureContentForFrame */
- 0, /* didClearWindowObjectForFrame */
- 0, /* didCancelClientRedirectForFrame */
- 0, /* willPerformClientRedirectForFrame */
- 0, /* didHandleOnloadEventsForFrame */
- 0, /* didLayoutForFrame */
- 0, /* didNewFirstVisuallyNonEmptyLayout */
- 0, /* didDetectXSSForFrame */
- 0, /* shouldGoToBackForwardListItem */
- 0, /* globalObjectIsAvailableForFrame */
- 0, /* willDisconnectDOMWindowExtensionFromGlobalObject */
- 0, /* didReconnectDOMWindowExtensionToGlobalObject */
- 0, /* willDestroyGlobalObjectForDOMWindowExtension */
- 0, /* didFinishProgress */
- 0, /* shouldForceUniversalAccessFromLocalURL */
- 0, /* didReceiveIntentForFrame */
- 0, /* registerIntentServiceForFrame */
- };
- WKBundlePageSetPageLoaderClient(page, &loaderClient);
-}
-
extern "C"
{
WK_EXPORT