[Curl] Compile errors related to http header field names.
https://bugs.webkit.org/show_bug.cgi?id=134029

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-06-19
Reviewed by Brent Fulgham.

Http header field names should now be specified with an enum, not a string.

* platform/network/curl/MultipartHandle.cpp:
(WebCore::MultipartHandle::didReceiveResponse):
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::getProtectionSpace):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Copy SharedBuffer data into IPC message directly
https://bugs.webkit.org/show_bug.cgi?id=133920

Reviewed by Anders Carlsson.

When data array callbacks are enabled, we currently merge all the CFDataRefs in SharedBuffer
into one contiguous memory buffer when creating IPC::DataReference. This patch creates a
subclass of DataReference that uses SharedBuffer::getSomeData() to copy the data directly
into the IPC message.

* NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
(WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
* Platform/IPC/ArgumentEncoder.cpp:
(IPC::ArgumentEncoder::reserve): Added.
(IPC::ArgumentEncoder::grow):
* Platform/IPC/ArgumentEncoder.h:
* Platform/IPC/DataReference.cpp:
(IPC::SharedBufferDataReference::encode):
* Platform/IPC/DataReference.h:
(IPC::DataReference::~DataReference):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-06-19  Oliver Hunt  <oliver@apple.com>

        Switch to using the process parameters during initialisation
        to determine whether we hsould be using the network process.

        RS=Sam Weinig

        * WebProcess/cocoa/WebProcessCocoa.mm:
        (WebKit::WebProcess::platformInitializeWebProcess):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't kill the UIProcess until all local storage transactions have been committed.
https://bugs.webkit.org/show_bug.cgi?id=134042.
<rdar://problem/16660724>.

Reviewed by Anders Carlsson.

* UIProcess/API/mac/WKView.mm: Add a listener for the application will terminate notification.
(-[WKView _applicationWillTerminate:]):
(-[WKView initWithFrame:context:configuration:webView:]):
* UIProcess/WebContext.cpp: Calls code in StorageManager to cleanup local storage transactions upon application termination.
(WebKit::WebContext::applicationWillTerminate):
* UIProcess/WebContext.h:

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::applicationWillTerminate):
Dispatch local storage cleanup task to background thread and make sure the UIProcess can't exit early.
* UIProcess/Storage/StorageManager.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
No way to handle HTTP Authentication with WKWebView
https://bugs.webkit.org/show_bug.cgi?id=134067
<rdar://problem/17317874>

Reviewed by Dan Bernstein.

Add a public webView:didReceiveAuthenticationChallenge:completionHandler: delegate method and get rid of the SPI.

* Shared/API/Cocoa/WKFoundation.h:
* UIProcess/API/Cocoa/WKNavigationDelegate.h:
* UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use a single map for all callback types in WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=134069

Reviewed by Anders Carlsson.

* UIProcess/GenericCallback.h:
(WebKit::CallbackBase::as): Added. Performs a dynamic cast to a specific callback type.
(WebKit::CallbackBase::CallbackBase): Added a type parameter, which is used to initialize
the new m_type member.
(WebKit::GenericCallback::GenericCallback): Pass the type to the base class constructor.
(WebKit::GenericCallback::type): Added. Returns a unique type.
(WebKit::GenericCallback::invalidate): Now virtual.

(WebKit::CallbackMap::put): Adds the callback to the map.
(WebKit::CallbackMap::take): Removes the callback from the map, and dynamically casts it to
the specified type.
(WebKit::CallbackMap::invalidate): Invalidates the map.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::validateCommand):
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
(WebKit::WebPageProxy::getSourceForFrame):
(WebKit::WebPageProxy::getContentsAsString):
(WebKit::WebPageProxy::getBytecodeProfile):
(WebKit::WebPageProxy::getSelectionOrContentsAsString):
(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit::WebPageProxy::getMainResourceDataOfFrame):
(WebKit::WebPageProxy::getResourceDataFromFrame):
(WebKit::WebPageProxy::getWebArchiveOfFrame):
(WebKit::WebPageProxy::forceRepaint):
(WebKit::WebPageProxy::clearLoadDependentCallbacks):
(WebKit::WebPageProxy::voidCallback):
(WebKit::WebPageProxy::dataCallback):
(WebKit::WebPageProxy::imageCallback):
(WebKit::WebPageProxy::stringCallback):
(WebKit::WebPageProxy::scriptValueCallback):
(WebKit::WebPageProxy::computedPagesCallback):
(WebKit::WebPageProxy::validateCommandCallback):
(WebKit::WebPageProxy::unsignedCallback):
(WebKit::WebPageProxy::editingRangeCallback):
(WebKit::WebPageProxy::rectForCharacterRangeCallback):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::computePagesForPrinting):
(WebKit::WebPageProxy::drawRectToImage):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::getMarkedRangeAsync):
(WebKit::WebPageProxy::getSelectedRangeAsync):
(WebKit::WebPageProxy::characterIndexForPointAsync):
(WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
(WebKit::WebPageProxy::takeSnapshot):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::gestureCallback):
(WebKit::WebPageProxy::touchesCallback):
(WebKit::WebPageProxy::autocorrectionDataCallback):
(WebKit::WebPageProxy::dictationContextCallback):
(WebKit::WebPageProxy::autocorrectionContextCallback):
(WebKit::WebPageProxy::selectWithGesture):
(WebKit::WebPageProxy::updateSelectionWithTouches):
(WebKit::WebPageProxy::requestAutocorrectionData):
(WebKit::WebPageProxy::applyAutocorrection):
(WebKit::WebPageProxy::requestDictationContext):
(WebKit::WebPageProxy::requestAutocorrectionContext):
(WebKit::WebPageProxy::selectWithTwoTouches):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170158 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Cocoa] Need SPI to determine if the WKWebView is displaying a standalone image
https://bugs.webkit.org/show_bug.cgi?id=134071

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isDisplayingStandaloneImageDocument]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Try to fix the Mavericks build.

* Shared/API/Cocoa/WKFoundation.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unfreeze the layer tree on DidFirstVisuallyNonEmptyLayout
https://bugs.webkit.org/show_bug.cgi?id=134073

Reviewed by Simon Fraser.
        
DidFirstLayout is too early and we usually get a blank page. This doesn't match the existing iOS behavior either.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidLayout):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
It's OS X, not OSX...

* Shared/API/Cocoa/WKFoundation.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Legacy processes are installed inside WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=134079

Reviewed by Anders Carlsson.

* Configurations/All.xcconfig: Exclude the legacy processes on iOS so they don’t get copied.
* Configurations/BaseLegacyProcess.xcconfig: Set SKIP_INSTALL to YES on iOS.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170165 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Another build fix attempt.

* Shared/API/Cocoa/WKFoundation.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move generate prototype and constructor classes into the generated implementation files
https://bugs.webkit.org/show_bug.cgi?id=134054

Reviewed by Oliver Hunt.

In an effort to reduce the size of the generated bindings headers, which is important
as the generated headers get included in a lot of places, this patch moves the prototype
and constructor declarations from the header to implementation file. This works because,
for the most part, no code cares about the prototype or constructors except the instance.

There are a few exceptions which had to be accounted for:
- The global objects (JSDOMWindow and JSWorkerGlobalScope) need to have their prototypes
  available during initialization, so they remain in the header.
- JSLocation requires customizing some aspects of the prototype behavior, so its prototype,
  and any future class that uses JSCustomNamedGetterOnPrototype or JSCustomDefineOwnPropertyOnPrototype,
  remains in the header.
- A few classes had custom constructor functions. Instead of keeping the entire constructor
  in the header, I opted for pulling just the static constructor function into the header, and
  modifying the custom constructors to use the DOMConstructorObject type as the callee, since the
  more specific type was unnecessary.

As a result of making these changes, I was also able to remove the #include of JSDOMBinding.h from
all the headers, which brought in quite a bit.

* bindings/js/JSAudioContextCustom.cpp:
(WebCore::constructJSAudioContext):
(WebCore::JSAudioContextConstructor::constructJSAudioContext): Deleted.
* bindings/js/JSBlobCustom.cpp:
(WebCore::constructJSBlob):
(WebCore::JSBlobConstructor::constructJSBlob): Deleted.
* bindings/js/JSCryptoCustom.cpp:
* bindings/js/JSDOMFormDataCustom.cpp:
(WebCore::constructJSDOMFormData):
(WebCore::JSDOMFormDataConstructor::constructJSDOMFormData): Deleted.
* bindings/js/JSDOMMimeTypeArrayCustom.cpp:
* bindings/js/JSDOMPluginArrayCustom.cpp:
* bindings/js/JSDOMPluginCustom.cpp:
* bindings/js/JSDataCueCustom.cpp:
(WebCore::constructJSDataCue):
(WebCore::JSDataCueConstructor::constructJSDataCue): Deleted.
* bindings/js/JSDataTransferCustom.cpp:
* bindings/js/JSEventCustom.cpp:
* bindings/js/JSFileReaderCustom.cpp:
* bindings/js/JSHistoryCustom.cpp:
* bindings/js/JSIDBAnyCustom.cpp:
* bindings/js/JSIDBDatabaseCustom.cpp:
* bindings/js/JSIDBObjectStoreCustom.cpp:
* bindings/js/JSImageConstructor.cpp:
(WebCore::JSImageConstructor::finishCreation):
* bindings/js/JSImageDataCustom.cpp:
* bindings/js/JSInspectorFrontendHostCustom.cpp:
* bindings/js/JSLocationCustom.cpp:
* bindings/js/JSMessagePortCustom.cpp:
* bindings/js/JSMutationObserverCustom.cpp:
(WebCore::constructJSMutationObserver):
(WebCore::JSMutationObserverConstructor::constructJSMutationObserver): Deleted.
* bindings/js/JSSQLResultSetRowListCustom.cpp:
* bindings/js/JSSQLTransactionSyncCustom.cpp:
* bindings/js/JSSVGLengthCustom.cpp:
* bindings/js/JSSharedWorkerCustom.cpp:
(WebCore::constructJSSharedWorker):
(WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): Deleted.
* bindings/js/JSStorageCustom.cpp:
* bindings/js/JSUserMessageHandlersNamespaceCustom.cpp:
* bindings/js/JSWebKitPointCustom.cpp:
(WebCore::constructJSWebKitPoint):
(WebCore::JSWebKitPointConstructor::constructJSWebKitPoint): Deleted.
* bindings/js/JSWorkerCustom.cpp:
(WebCore::constructJSWorker):
(WebCore::JSWorkerConstructor::constructJSWorker): Deleted.
* bindings/js/SerializedScriptValue.cpp:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(GeneratePrototypeDeclaration):
(GenerateConstructorDeclaration):
(GenerateConstructorHelperMethods):
(HeaderNeedsPrototypeDeclaration):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestActiveDOMObject.h:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.h:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.h:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestException.h:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestInterface.h:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.h:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestNode.h:
* bindings/scripts/test/JS/JSTestNondeterministic.cpp:
* bindings/scripts/test/JS/JSTestNondeterministic.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.h:
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSattribute.h:
* bindings/scripts/test/JS/JSreadonly.cpp:
* bindings/scripts/test/JS/JSreadonly.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use a single map for all callback types in WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=134069

Reviewed by Tim Horton.

* UIProcess/GenericCallback.h:
(WebKit::CallbackMap::take):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::printFinishedCallback):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::drawPagesForPrinting):
* UIProcess/WebPageProxy.h:
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):
(WebKit::WebPageProxy::attributedStringForCharacterRangeCallback):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170168 268f45cc-cd09-0410-ab3c-d52691b4dbfc
When simulating memory pressure, GC *after* releasing WebCore resources.

Since clearing the page cache is likely to create lots of garbage, defer the
synchronous GC until after the WebCore pressure relief, so we can see the
effect of clearing out all those pages.

Rubber-stamped by Gavin Barraclough.

* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::install):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Removed unused SPI -[WKWebView _runJavaScriptInMainFrame:].

Rubber-stamped by Simon Fraser.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _runJavaScriptInMainFrame:]): Deleted.
* UIProcess/API/Cocoa/WKWebViewPrivate.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed fix after r170130.

* JavaScriptCore.vcxproj/libllvmForJSC/libllvmForJSC.vcxproj:
Corrected directory so it can find common.props when opening Visual Studio.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove efl wk1 buildbot and ews
https://bugs.webkit.org/show_bug.cgi?id=134089

Reviewed by Benjamin Poulain.

EFL WK1 is not supported anymore. Removed all bots for EFL WK1 bots.

* BuildSlaveSupport/build.webkit.org-config/config.json:
* QueueStatusServer/config/queues.py:
* Scripts/webkitpy/common/config/ews.json:
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.port):
(QtWK2Port.run_webkit_tests_command):
(EflPort): Deleted.
(EflPort.build_webkit_command): Deleted.
* Scripts/webkitpy/port/builders.py:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
* TestResultServer/static-dashboards/loader_unittests.js:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Limit the amount of API exposed to GObject DOM bindings API
https://bugs.webkit.org/show_bug.cgi?id=133726

Reviewed by Gustavo Noronha Silva.

Source/WebCore:
Split the GObject DOM bindings API into stable and unstable. The
unstable API is not included in the main webkitdom.h file, so that
to use it users have to include the headers individually and
define a macro WEBKIT_DOM_USE_UNSTABLE_API. For unstable methods
of stable classes we generate a {ClassName}Unstable.h header file
containing the unstable API. From now on we only keep backwards
compatibility for the stable API.

* PlatformGTK.cmake: Split GObject DOM bindings related variables
into Stable and Unstable. Add also
* bindings/gobject/WebKitDOMCustom.cpp:
(webkit_dom_html_media_element_set_current_time): Deleted.
(webkit_dom_text_track_get_kind): Deleted.
(webkit_dom_text_track_get_mode): Deleted.
(webkit_dom_text_track_set_mode): Deleted.
* bindings/gobject/WebKitDOMCustom.h:
* bindings/gobject/WebKitDOMCustom.symbols: Remove custom symbols
added due to API changes.
* bindings/gobject/WebKitDOMPrivate.h: Include webkitdomdefines-unstable.h.
* bindings/gobject/webkitdom.symbols: Remove all unstable symbols.
* bindings/scripts/CodeGeneratorGObject.pm:
(SkipFunction): Do not skip webkit_dom_html_media_element_set_current_time anymore.
(GenerateHeader): Only force single header include for stable
headers and add WEBKIT_DOM_USE_UNSTABLE_API #ifdef to unstable headers.
(GenerateFunction): Only add stable symbols to the symbols
array. Add function prototypes to main header or unstable header
depending on whether it's an unstable symbol for a stable class or
not. Also add Stability gtk-doc tag to unstable methods.
(GenerateEndHeader): Add required #endifs
(WriteData): Write also an Unstable.h header when appropriate and
only generate a symbols file for stable classes.
(ReadStableSymbols): Read the stable symbols for the current class.
(GenerateInterface): Call ReadStableSymbols.
* bindings/scripts/gobject-generate-headers.pl: Generate webkitdomdefines-unstable.h.
* bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
* bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
* bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
* bindings/scripts/test/GObject/WebKitDOMTestException.h:
* bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.h:
* bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
* bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
* bindings/scripts/test/GObject/WebKitDOMTestNode.h:
* bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
* bindings/scripts/test/GObject/WebKitDOMattribute.h:
* bindings/scripts/test/GObject/WebKitDOMreadonly.h:

Tools:
Don't make fatal finding files without a .symbols file, since now
only the stable DOM API has .symbols files.

* gtk/webkitdom.py:
(get_all_webkitdom_symbol_files):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170173 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] webkit_dom_document_create_tree_walker impossible to use due to WebKitDOMNodeFilter
https://bugs.webkit.org/show_bug.cgi?id=93002

Reviewed by Gustavo Noronha Silva.

Source/WebCore:
Add custom implementation of WebKitDOMNodeFilter to expose it as
an interface instead of a class.

* PlatformGTK.cmake: Add new files to compilation.
* bindings/gobject/GObjectNodeFilterCondition.cpp: Added.
(WebCore::GObjectNodeFilterCondition::~GObjectNodeFilterCondition):
Reset the NodeFilter WebCore object associated to the
WebKitDOMNodeFilter object.
(WebCore::GObjectNodeFilterCondition::acceptNode): Call webkit_dom_node_filter_accept_node().
* bindings/gobject/GObjectNodeFilterCondition.h: Added.
(WebCore::GObjectNodeFilterCondition::create): Create a new
GObjectNodeFilterCondition for the given WebKitDOMNodeFilter.
(WebCore::GObjectNodeFilterCondition::GObjectNodeFilterCondition):
* bindings/gobject/WebKitDOMNodeFilter.cpp: Added.
(webkit_dom_node_filter_default_init):
(webkit_dom_node_filter_accept_node):
(WebKit::nodeFilterMap): Map NodeFilter WebCore objects to
WebKitDOMNodeFilter objects.
(WebKit::nodeFilterObjectDestroyedCallback): Remove the node
filter form the map when the WebKitDOMNodeFilter objecrt is destroyed.
(WebKit::kit): Return the WebKitDOMNodeFilter object for the given
NodeFilter WebCore object.
(WebKit::core): Get or create a NodeFilter WebCore object
associated to the given WebKitDOMNodeFilter.
* bindings/gobject/WebKitDOMNodeFilter.h: Added.
* bindings/gobject/WebKitDOMNodeFilter.symbols: Added.
* bindings/gobject/WebKitDOMNodeFilterPrivate.h: Added.
* bindings/scripts/CodeGeneratorGObject.pm:
(GenerateFunction): Add exceptions for NodeFilter parameters since
the core method returns a PassRefPtr.

Tools:
Add unit tests to check WebKitDOMNodefilter API used from both
TreeWalker and NodeIterator.

* Scripts/webkitpy/style/checker.py: Add exceptions for GTK+
public headers and add WebKitDOMNodeFilter to the list of exceptions.
* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Add new files to compilation.
* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp: Added.
(webkitNodeFilterAcceptNode):
(webkitNodeFilterDOMNodeFilterIfaceInit):
(webkit_node_filter_init):
(webkit_node_filter_class_init):
(WebKitDOMNodeFilterTest::create):
(WebKitDOMNodeFilterTest::webPageFromArgs):
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
(WebKitDOMNodeFilterTest::runTest):
(registerTests):
* TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp: Added.
(runTest):
(testWebKitDOMNodeFilterTreeWalker):
(testWebKitDOMNodeFilterNodeIterator):
(beforeAll):
(afterAll):
* gtk/webkitdom.py:
(WebKitDOMDocGeneratorSections.__init__):
(WebKitDOMDocGeneratorSections._symbol_list):
(WebKitDOMDocGeneratorSections.write_section):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170174 268f45cc-cd09-0410-ab3c-d52691b4dbfc