Modified: trunk/Source/WebKit2/UIProcess/qt/ClientImpl.cpp (98569 => 98570)
--- trunk/Source/WebKit2/UIProcess/qt/ClientImpl.cpp 2011-10-27 14:33:11 UTC (rev 98569)
+++ trunk/Source/WebKit2/UIProcess/qt/ClientImpl.cpp 2011-10-27 14:36:59 UTC (rev 98570)
@@ -81,7 +81,7 @@
toQtWebPageProxy(clientInfo)->loadDidFail(QtWebError(error));
}
-void qt_wk_didStartProvisionalLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didStartProvisionalLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
{
if (!WKFrameIsMainFrame(frame))
return;
@@ -90,12 +90,12 @@
toQtWebPageProxy(clientInfo)->loadDidBegin();
}
-void qt_wk_didFailProvisionalLoadWithErrorForFrame(WKPageRef page, WKFrameRef frame, WKErrorRef error, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didFailProvisionalLoadWithErrorForFrame(WKPageRef page, WKFrameRef frame, WKErrorRef error, WKTypeRef userData, const void* clientInfo)
{
dispatchLoadFailed(frame, clientInfo, error);
}
-void qt_wk_didCommitLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didCommitLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
{
if (!WKFrameIsMainFrame(frame))
return;
@@ -107,17 +107,17 @@
toQtWebPageProxy(clientInfo)->loadDidCommit();
}
-void qt_wk_didFinishLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didFinishLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
{
dispatchLoadSucceeded(frame, clientInfo);
}
-void qt_wk_didFailLoadWithErrorForFrame(WKPageRef page, WKFrameRef frame, WKErrorRef error, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didFailLoadWithErrorForFrame(WKPageRef page, WKFrameRef frame, WKErrorRef error, WKTypeRef userData, const void* clientInfo)
{
dispatchLoadFailed(frame, clientInfo, error);
}
-void qt_wk_didSameDocumentNavigationForFrame(WKPageRef page, WKFrameRef frame, WKSameDocumentNavigationType type, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didSameDocumentNavigationForFrame(WKPageRef page, WKFrameRef frame, WKSameDocumentNavigationType type, WKTypeRef userData, const void* clientInfo)
{
WebFrameProxy* wkframe = toImpl(frame);
QString urlStr(wkframe->url());
@@ -126,7 +126,7 @@
toQtWebPageProxy(clientInfo)->didChangeUrl(qUrl);
}
-void qt_wk_didReceiveTitleForFrame(WKPageRef page, WKStringRef title, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_didReceiveTitleForFrame(WKPageRef page, WKStringRef title, WKFrameRef frame, WKTypeRef userData, const void* clientInfo)
{
if (!WKFrameIsMainFrame(frame))
return;
@@ -134,28 +134,28 @@
toQtWebPageProxy(clientInfo)->didChangeTitle(qTitle);
}
-void qt_wk_didStartProgress(WKPageRef page, const void* clientInfo)
+static void qt_wk_didStartProgress(WKPageRef page, const void* clientInfo)
{
toQtWebPageProxy(clientInfo)->didChangeLoadProgress(0);
}
-void qt_wk_didChangeProgress(WKPageRef page, const void* clientInfo)
+static void qt_wk_didChangeProgress(WKPageRef page, const void* clientInfo)
{
toQtWebPageProxy(clientInfo)->didChangeLoadProgress(WKPageGetEstimatedProgress(page) * 100);
}
-void qt_wk_didFinishProgress(WKPageRef page, const void* clientInfo)
+static void qt_wk_didFinishProgress(WKPageRef page, const void* clientInfo)
{
toQtWebPageProxy(clientInfo)->didChangeLoadProgress(100);
}
-void qt_wk_runJavaScriptAlert(WKPageRef page, WKStringRef alertText, WKFrameRef frame, const void* clientInfo)
+static void qt_wk_runJavaScriptAlert(WKPageRef page, WKStringRef alertText, WKFrameRef frame, const void* clientInfo)
{
QString qAlertText = WKStringCopyQString(alertText);
toQtViewInterface(clientInfo)->runJavaScriptAlert(qAlertText);
}
-bool qt_wk_runJavaScriptConfirm(WKPageRef, WKStringRef message, WKFrameRef, const void* clientInfo)
+static bool qt_wk_runJavaScriptConfirm(WKPageRef, WKStringRef message, WKFrameRef, const void* clientInfo)
{
QString qMessage = WKStringCopyQString(message);
return toQtViewInterface(clientInfo)->runJavaScriptConfirm(qMessage);
@@ -167,7 +167,7 @@
return toAPI(webString.release().leakRef());
}
-WKStringRef qt_wk_runJavaScriptPrompt(WKPageRef, WKStringRef message, WKStringRef defaultValue, WKFrameRef, const void* clientInfo)
+static WKStringRef qt_wk_runJavaScriptPrompt(WKPageRef, WKStringRef message, WKStringRef defaultValue, WKFrameRef, const void* clientInfo)
{
QString qMessage = WKStringCopyQString(message);
QString qDefaultValue = WKStringCopyQString(defaultValue);
@@ -178,13 +178,13 @@
return WKStringCreateWithQString(result);
}
-void qt_wk_setStatusText(WKPageRef, WKStringRef text, const void *clientInfo)
+static void qt_wk_setStatusText(WKPageRef, WKStringRef text, const void *clientInfo)
{
QString qText = WKStringCopyQString(text);
toQtViewInterface(clientInfo)->didChangeStatusText(qText);
}
-void qt_wk_runOpenPanel(WKPageRef, WKFrameRef, WKOpenPanelParametersRef parameters, WKOpenPanelResultListenerRef listener, const void* clientInfo)
+static void qt_wk_runOpenPanel(WKPageRef, WKFrameRef, WKOpenPanelParametersRef parameters, WKOpenPanelResultListenerRef listener, const void* clientInfo)
{
Vector<String> wkSelectedFileNames = toImpl(parameters)->selectedFileNames();
@@ -197,7 +197,7 @@
toQtViewInterface(clientInfo)->chooseFiles(listener, selectedFileNames, allowMultipleFiles);
}
-void qt_wk_mouseDidMoveOverElement(WKPageRef page, WKHitTestResultRef hitTestResult, WKEventModifiers modifiers, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_mouseDidMoveOverElement(WKPageRef page, WKHitTestResultRef hitTestResult, WKEventModifiers modifiers, WKTypeRef userData, const void* clientInfo)
{
const QUrl absoluteLinkUrl = WKURLCopyQUrl(WKHitTestResultCopyAbsoluteLinkURL(hitTestResult));
const QString linkTitle = WKStringCopyQString(WKHitTestResultCopyLinkTitle(hitTestResult));
@@ -231,7 +231,7 @@
return qtModifiers;
}
-void qt_wk_decidePolicyForNavigationAction(WKPageRef page, WKFrameRef frame, WKFrameNavigationType navigationType, WKEventModifiers modifiers, WKEventMouseButton mouseButton, WKURLRequestRef request, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_decidePolicyForNavigationAction(WKPageRef page, WKFrameRef frame, WKFrameNavigationType navigationType, WKEventModifiers modifiers, WKEventMouseButton mouseButton, WKURLRequestRef request, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo)
{
QtPolicyInterface* policyInterface = toQtPolicyInterface(clientInfo);
WKURLRef requestURL = WKURLRequestCopyURL(request);
@@ -252,7 +252,7 @@
}
}
-void qt_wk_decidePolicyForResponse(WKPageRef page, WKFrameRef frame, WKURLResponseRef response, WKURLRequestRef request, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo)
+static void qt_wk_decidePolicyForResponse(WKPageRef page, WKFrameRef frame, WKURLResponseRef response, WKURLRequestRef request, WKFramePolicyListenerRef listener, WKTypeRef userData, const void* clientInfo)
{
String type = toImpl(response)->resourceResponse().mimeType();
type.makeLower();
@@ -278,3 +278,48 @@
WKFramePolicyListenerUse(listener);
}
+
+void setupPageLoaderClient(QtWebPageProxy* qtWebPageProxy, WebPageProxy* webPageProxy)
+{
+ WKPageLoaderClient loadClient;
+ memset(&loadClient, 0, sizeof(WKPageLoaderClient));
+ loadClient.version = kWKPageLoaderClientCurrentVersion;
+ loadClient.clientInfo = qtWebPageProxy;
+ loadClient.didStartProvisionalLoadForFrame = qt_wk_didStartProvisionalLoadForFrame;
+ loadClient.didFailProvisionalLoadWithErrorForFrame = qt_wk_didFailProvisionalLoadWithErrorForFrame;
+ loadClient.didCommitLoadForFrame = qt_wk_didCommitLoadForFrame;
+ loadClient.didFinishLoadForFrame = qt_wk_didFinishLoadForFrame;
+ loadClient.didFailLoadWithErrorForFrame = qt_wk_didFailLoadWithErrorForFrame;
+ loadClient.didSameDocumentNavigationForFrame = qt_wk_didSameDocumentNavigationForFrame;
+ loadClient.didReceiveTitleForFrame = qt_wk_didReceiveTitleForFrame;
+ loadClient.didStartProgress = qt_wk_didStartProgress;
+ loadClient.didChangeProgress = qt_wk_didChangeProgress;
+ loadClient.didFinishProgress = qt_wk_didFinishProgress;
+ WKPageSetPageLoaderClient(qtWebPageProxy->pageRef(), &loadClient);
+}
+
+void setupPageUiClient(QtWebPageProxy* qtWebPageProxy, WebPageProxy* webPageProxy)
+{
+ WKPageUIClient uiClient;
+ memset(&uiClient, 0, sizeof(WKPageUIClient));
+ uiClient.version = kWKPageUIClientCurrentVersion;
+ uiClient.clientInfo = qtWebPageProxy->viewInterface();
+ uiClient.runJavaScriptAlert = qt_wk_runJavaScriptAlert;
+ uiClient.runJavaScriptConfirm = qt_wk_runJavaScriptConfirm;
+ uiClient.runJavaScriptPrompt = qt_wk_runJavaScriptPrompt;
+ uiClient.setStatusText = qt_wk_setStatusText;
+ uiClient.runOpenPanel = qt_wk_runOpenPanel;
+ uiClient.mouseDidMoveOverElement = qt_wk_mouseDidMoveOverElement;
+ WKPageSetPageUIClient(toAPI(webPageProxy), &uiClient);
+}
+
+void setupPagePolicyClient(QtPolicyInterface* policyInterface, WebPageProxy* webPageProxy)
+{
+ WKPagePolicyClient policyClient;
+ memset(&policyClient, 0, sizeof(WKPagePolicyClient));
+ policyClient.version = kWKPagePolicyClientCurrentVersion;
+ policyClient.clientInfo = policyInterface;
+ policyClient.decidePolicyForNavigationAction = qt_wk_decidePolicyForNavigationAction;
+ policyClient.decidePolicyForResponse = qt_wk_decidePolicyForResponse;
+ WKPageSetPagePolicyClient(toAPI(webPageProxy), &policyClient);
+}
Modified: trunk/Source/WebKit2/UIProcess/qt/ClientImpl.h (98569 => 98570)
--- trunk/Source/WebKit2/UIProcess/qt/ClientImpl.h 2011-10-27 14:33:11 UTC (rev 98569)
+++ trunk/Source/WebKit2/UIProcess/qt/ClientImpl.h 2011-10-27 14:36:59 UTC (rev 98570)
@@ -17,42 +17,19 @@
Boston, MA 02110-1301, USA.
*/
-#ifndef DefaultClientCallbacksQt_h
-#define DefaultClientCallbacksQt_h
+#ifndef ClientImpl_h
+#define ClientImpl_h
#include <WebKit2/WKPage.h>
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-// loader client
-void qt_wk_didStartProvisionalLoadForFrame(WKPageRef, WKFrameRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didFailProvisionalLoadWithErrorForFrame(WKPageRef, WKFrameRef, WKErrorRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didCommitLoadForFrame(WKPageRef, WKFrameRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didFinishLoadForFrame(WKPageRef, WKFrameRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didFailLoadWithErrorForFrame(WKPageRef, WKFrameRef, WKErrorRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didReceiveTitleForFrame(WKPageRef, WKStringRef title, WKFrameRef, WKTypeRef, const void* clientInfo);
-void qt_wk_didStartProgress(WKPageRef, const void* clientInfo);
-void qt_wk_didChangeProgress(WKPageRef, const void* clientInfo);
-void qt_wk_didFinishProgress(WKPageRef, const void* clientInfo);
-void qt_wk_didSameDocumentNavigationForFrame(WKPageRef, WKFrameRef, WKSameDocumentNavigationType, WKTypeRef, const void* clientInfo);
-
-// ui client
-void qt_wk_runJavaScriptAlert(WKPageRef, WKStringRef alertText, WKFrameRef, const void* clientInfo);
-bool qt_wk_runJavaScriptConfirm(WKPageRef, WKStringRef message, WKFrameRef, const void* clientInfo);
-WKStringRef qt_wk_runJavaScriptPrompt(WKPageRef, WKStringRef message, WKStringRef defaultValue, WKFrameRef, const void* clientInfo);
-void qt_wk_setStatusText(WKPageRef page, WKStringRef text, const void *clientInfo);
-void qt_wk_runOpenPanel(WKPageRef, WKFrameRef, WKOpenPanelParametersRef, WKOpenPanelResultListenerRef, const void* clientInfo);
-void qt_wk_mouseDidMoveOverElement(WKPageRef, WKHitTestResultRef, WKEventModifiers, WKTypeRef, const void* clientInfo);
-
-// Policy client.
-void qt_wk_decidePolicyForNavigationAction(WKPageRef, WKFrameRef, WKFrameNavigationType, WKEventModifiers, WKEventMouseButton, WKURLRequestRef, WKFramePolicyListenerRef, WKTypeRef userData, const void* clientInfo);
-void qt_wk_decidePolicyForResponse(WKPageRef, WKFrameRef, WKURLResponseRef, WKURLRequestRef, WKFramePolicyListenerRef, WKTypeRef userData, const void* clientInfo);
-
-#ifdef __cplusplus
+class QtWebPageProxy;
+namespace WebKit {
+class QtPolicyInterface;
+class WebPageProxy;
}
-#endif
+void setupPageLoaderClient(QtWebPageProxy*, WebKit::WebPageProxy*);
+void setupPageUiClient(QtWebPageProxy*, WebKit::WebPageProxy*);
+void setupPagePolicyClient(WebKit::QtPolicyInterface*, WebKit::WebPageProxy*);
-#endif /* DefaultClientCallbacksQt_h */
+#endif /* ClientImpl_h */