[GTK] Implement DumpRenderTreeSupportGtk (similarly to DumpRenderTreeSupportQt idea)
authortonikitoo@webkit.org <tonikitoo@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 27 Oct 2010 05:22:23 +0000 (05:22 +0000)
committertonikitoo@webkit.org <tonikitoo@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 27 Oct 2010 05:22:23 +0000 (05:22 +0000)
commita5e3eacda02a2d73a5bae145f1d0ba45aa393c10
treee5a94c302e78783fbee46ab7c398586685449e2e
parent34936bb6101cfa69aff81fcfac72660b8cc19993
[GTK] Implement DumpRenderTreeSupportGtk (similarly to DumpRenderTreeSupportQt idea)
https://bugs.webkit.org/show_bug.cgi?id=48199

Reviewed by Martin Robinson.
Patch by Antonio Gomes <agomes@rim.com>

.:

* GNUmakefile.am: Added WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp|h to GTK+'s build system;
* autotools/symbols.filter: Added DumpRenderTreeSupportGtk symbols to symbols.filter so they do not get
  filtered and get visible by DRT.

WebKit/gtk:

Implemented an initial version of the DumpRenderTreeSupportGtk class.
The main idea is that it groups together the bodies of many LayoutTestController
methods, so they can directly access WebCore features. This way we eliminate the
need of adding APIs to WebKitGTK just to expand its test coverage through DRT.

The DumpRenderTreeSupportGtk class so far includes a getter and setter for the WebKitTabToLinksPreferenceKey
property as a sample implementation. Also it makes it possible to unskip fast/events/tab-focus-anchor.html and
to fix stderr messages from all 22 spatial-navigation tests in fast/events/spatial-navigation.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::tabsToLinks):
* WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Added.
(DumpRenderTreeSupportGtk::DumpRenderTreeSupportGtk):
(DumpRenderTreeSupportGtk::~DumpRenderTreeSupportGtk):
(DumpRenderTreeSupportGtk::setDumpRenderTreeModeEnabled):
(DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled): Getter to the WebKitTabToLinksPreferenceKey property.
(DumpRenderTreeSupportGtk::setLinksIncludedInFocusChain): Setter to the WebKitTabToLinksPreferenceKey property.
(DumpRenderTreeSupportGtk::linksIncludedInFocusChain):
* WebCoreSupport/DumpRenderTreeSupportGtk.h: Added.

WebKitTools:

Implements support to WebKitTabToLinksPreferenceKey through LayoutTestController::overridePreference.
The corresponding DumpRenderTreeSupportGtk method is called in the DRT context only.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):
(createWebView):
* DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
(LayoutTestController::overridePreference):

LayoutTests:

* platform/gtk/Skipped: Unskiped fast/events/tab-focus-anchor.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@70609 268f45cc-cd09-0410-ab3c-d52691b4dbfc
12 files changed:
ChangeLog
GNUmakefile.am
LayoutTests/ChangeLog
LayoutTests/platform/gtk/Skipped
WebKit/gtk/ChangeLog
WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp [new file with mode: 0644]
WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h [new file with mode: 0644]
WebKitTools/ChangeLog
WebKitTools/DumpRenderTree/gtk/DumpRenderTree.cpp
WebKitTools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp
autotools/symbols.filter