[GTK] [WK2] Implement the policy client
authormrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Jan 2012 20:15:20 +0000 (20:15 +0000)
committermrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Jan 2012 20:15:20 +0000 (20:15 +0000)
commit02d82272801b869acc8ba656e5d6943abe85a973
tree2707940c1d4abee5f7c2cd43fc83806e02a24bb2
parentcce627c0ba504a978bf276f5acdf14bcceb20c9f
[GTK] [WK2] Implement the policy client
https://bugs.webkit.org/show_bug.cgi?id=76343

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Implement the abstract WebKitPolicyDecision, WebKitNavigationPolicyDecision,
and add the decide-policy signal to WebKitWebView.

* GNUmakefile.am: Add new files to the source list.
* UIProcess/API/gtk/WebKitError.cpp: Use the WebCore namespace because
of changes to ASSERT_MATCHING_ENUMS.
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp: Added.
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.h: Added.
* UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h: Added.
* UIProcess/API/gtk/WebKitPolicyClient.cpp: Added.
* UIProcess/API/gtk/WebKitPolicyClientPrivate.h: Added.
* UIProcess/API/gtk/WebKitPolicyDecision.cpp: Added.
* UIProcess/API/gtk/WebKitPolicyDecision.h: Added.
* UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h: Added.
* UIProcess/API/gtk/WebKitPrivate.h: Modify ASSERT_MATCHING_ENUMS to make
it useful for non-WebCore enums.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewConstructed): Attach the policy client callbacks to the page.
(webkit_web_view_class_init): Add the decide-policy signal definition.
(webkitWebViewMakePolicyDecision): Added this private method to fire the signal.
* UIProcess/API/gtk/WebKitWebView.h: Added new signal to the list.
* UIProcess/API/gtk/WebKitWebViewPrivate.h: Added new method declaration.
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new classes to the docs.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
* UIProcess/API/gtk/tests/GNUmakefile.am: Added new test to the source list.
* UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp: Added.
* UIProcess/API/gtk/webkit2marshal.list: decide-policy has a new signature.

Tools:

* gtk/generate-gtkdoc:
(get_webkit2_options): Update the list of skipped source files to include all clients.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@106142 268f45cc-cd09-0410-ab3c-d52691b4dbfc
22 files changed:
Source/WebKit2/ChangeLog
Source/WebKit2/GNUmakefile.am
Source/WebKit2/UIProcess/API/gtk/WebKitError.cpp
Source/WebKit2/UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitNavigationPolicyDecision.h [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPolicyClient.cpp [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPolicyClient.h [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPolicyDecision.cpp [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPolicyDecision.h [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/WebKitPrivate.h
Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h
Source/WebKit2/UIProcess/API/gtk/WebKitWebViewPrivate.h
Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-docs.sgml
Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt
Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp [new file with mode: 0644]
Source/WebKit2/UIProcess/API/gtk/webkit2marshal.list
Tools/ChangeLog
Tools/gtk/generate-gtkdoc