.: https://bugs.webkit.org/show_bug.cgi?id=100917
authorbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 1 Nov 2012 18:57:39 +0000 (18:57 +0000)
committerbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 1 Nov 2012 18:57:39 +0000 (18:57 +0000)
There should be a way to dump the scrolling tree from the layout tests

Reviewed by Simon Fraser.

* Source/autotools/symbols.filter:

Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=100917
There should be a way to dump the scrolling tree from the layout tests

Reviewed by Simon Fraser.

New Internals call to dump the scrolling state tree as text. Calls through to the
ScrollingCoordinator.
* testing/Internals.cpp:
(WebCore::Internals::scrollingStateTreeAsText):
(WebCore):
* testing/Internals.h:
* testing/Internals.idl:
* WebCore.exp.in:
* page/Page.cpp:
(WebCore::Page::scrollingStateTreeAsText):
(WebCore):
* page/Page.h:
(Page):

ScrollingCoordinator tells the rootStateNode to dump the tree as text.
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollingCoordinatorMac):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::scrollingStateTreeAsText):
(WebCore):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::scrollingStateTreeAsText):
(WebCore):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):

dumpNode() dumps generic stuff for each node, and dumpProperties will dump the
properties that are specific to different types of nodes.
* page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::writeIndent):
(WebCore):
(WebCore::ScrollingStateNode::dumpNode):
(WebCore::ScrollingStateNode::scrollingStateTreeAsText):
* page/scrolling/ScrollingStateNode.h:
(WebCore):
(ScrollingStateNode):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::dumpProperties):
(WebCore):
* page/scrolling/ScrollingStateScrollingNode.h:
(ScrollingStateScrollingNode):

Source/WebKit2: https://bugs.webkit.org/show_bug.cgi?id=100917
There should be a way to dump the scrolling tree from the layout tests

Reviewed by Simon Fraser.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=100917
There should be a way to dump the scrolling tree from the layout tests

Reviewed by Simon Fraser.

* platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt: Added.
* platform/mac/tiled-drawing/scrolling-tree-after-scroll.html: Added.
* platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Added.
* platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html: Added.

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

25 files changed:
ChangeLog
LayoutTests/ChangeLog
LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll.html [new file with mode: 0644]
LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/page/Page.cpp
Source/WebCore/page/Page.h
Source/WebCore/page/scrolling/ScrollingCoordinator.cpp
Source/WebCore/page/scrolling/ScrollingCoordinator.h
Source/WebCore/page/scrolling/ScrollingStateNode.cpp
Source/WebCore/page/scrolling/ScrollingStateNode.h
Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp
Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h
Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h
Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm
Source/WebCore/testing/Internals.cpp
Source/WebCore/testing/Internals.h
Source/WebCore/testing/Internals.idl
Source/WebKit2/ChangeLog
Source/WebKit2/win/WebKit2.def
Source/WebKit2/win/WebKit2CFLite.def
Source/autotools/symbols.filter

index 4583c21..b4ee463 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-11-01  Beth Dakin  <bdakin@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=100917
+        There should be a way to dump the scrolling tree from the layout tests
+
+        Reviewed by Simon Fraser.
+
+        * Source/autotools/symbols.filter:
+
 2012-10-31  Thiago Marcos P. Santos  <thiago.santos@intel.com>
 
         Added viewport at-rule to the CSS parser and tokenizer
index 19e3b81..042b651 100644 (file)
@@ -1,3 +1,15 @@
+2012-11-01  Beth Dakin  <bdakin@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=100917
+        There should be a way to dump the scrolling tree from the layout tests
+
+        Reviewed by Simon Fraser.
+
+        * platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt: Added.
+        * platform/mac/tiled-drawing/scrolling-tree-after-scroll.html: Added.
+        * platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Added.
+        * platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html: Added.
+
 2012-11-01  Dana Jansens  <danakj@chromium.org>
 
         Rebaseline after compositor migration to gfx types.
diff --git a/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt b/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt
new file mode 100644 (file)
index 0000000..d2abf04
--- /dev/null
@@ -0,0 +1,6 @@
+(Scrolling node
+  (viewport rect 0 0 785 600)
+  (contents size 785 5021)
+  (requested scroll position 0 3000)
+)
+
diff --git a/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll.html b/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll.html
new file mode 100644 (file)
index 0000000..acb8dd2
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+    <style>
+        body {
+            height: 5000px;
+        }
+    </style>
+    <script>
+        if (window.testRunner)
+            testRunner.dumpAsText();
+
+        function doTest()
+        {
+            window.scrollTo(0, 3000);
+            if (window.internals) {
+                document.getElementById('layers').innerText = internals.scrollingStateTreeAsText(document);
+            }
+        }
+        window.addEventListener('load', doTest, false);
+    </script>
+</head>
+<body>
+<pre id="layers">Scrolling tree goes here</p>
+</body>
+</html>
diff --git a/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt b/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt
new file mode 100644 (file)
index 0000000..7db6087
--- /dev/null
@@ -0,0 +1,6 @@
+(Scrolling node
+  (viewport rect 0 0 800 600)
+  (contents size 800 600)
+  (Scrolling on main thread because: Has viewport constrained objects without supporting fixed layers, )
+)
+
diff --git a/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html b/LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html
new file mode 100644 (file)
index 0000000..924ff4c
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+    <style>
+        .box {
+            height: 100px;
+            width: 100px;
+            position: fixed; /* At this time, position:fixed forces slow mode. */
+        }
+    </style>
+    <script>
+        if (window.testRunner)
+            testRunner.dumpAsText();
+
+        function doTest()
+        {
+            if (window.internals) {
+                document.getElementById('layers').innerText = internals.scrollingStateTreeAsText(document);
+            }
+        }
+        window.addEventListener('load', doTest, false);
+    </script>
+</head>
+<body>
+<div class="box">
+</div>
+<pre id="layers">Scrolling tree goes here</p>
+</body>
+</html>
index 3232029..7989d6f 100644 (file)
@@ -1,3 +1,52 @@
+2012-11-01  Beth Dakin  <bdakin@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=100917
+        There should be a way to dump the scrolling tree from the layout tests
+
+        Reviewed by Simon Fraser.
+
+        New Internals call to dump the scrolling state tree as text. Calls through to the 
+        ScrollingCoordinator.
+        * testing/Internals.cpp:
+        (WebCore::Internals::scrollingStateTreeAsText):
+        (WebCore):
+        * testing/Internals.h:
+        * testing/Internals.idl:
+        * WebCore.exp.in:
+        * page/Page.cpp:
+        (WebCore::Page::scrollingStateTreeAsText):
+        (WebCore):
+        * page/Page.h:
+        (Page):
+
+        ScrollingCoordinator tells the rootStateNode to dump the tree as text.
+        * page/scrolling/mac/ScrollingCoordinatorMac.h:
+        (ScrollingCoordinatorMac):
+        * page/scrolling/mac/ScrollingCoordinatorMac.mm:
+        (WebCore::ScrollingCoordinatorMac::scrollingStateTreeAsText):
+        (WebCore):
+        * page/scrolling/ScrollingCoordinator.cpp:
+        (WebCore::ScrollingCoordinator::scrollingStateTreeAsText):
+        (WebCore):
+        * page/scrolling/ScrollingCoordinator.h:
+        (ScrollingCoordinator):
+
+        dumpNode() dumps generic stuff for each node, and dumpProperties will dump the 
+        properties that are specific to different types of nodes.
+        * page/scrolling/ScrollingStateNode.cpp:
+        (WebCore::ScrollingStateNode::writeIndent):
+        (WebCore):
+        (WebCore::ScrollingStateNode::dumpNode):
+        (WebCore::ScrollingStateNode::scrollingStateTreeAsText):
+        * page/scrolling/ScrollingStateNode.h:
+        (WebCore):
+        (ScrollingStateNode):
+        * page/scrolling/ScrollingStateScrollingNode.cpp:
+        (WebCore::ScrollingStateScrollingNode::dumpProperties):
+        (WebCore):
+        * page/scrolling/ScrollingStateScrollingNode.h:
+        (ScrollingStateScrollingNode):
+
 2012-11-01  Kenneth Russell  <kbr@google.com>
 
         Add RGB to supported destination formats of ImageBuffer::copyToPlatformTexture
index 127025b..6428968 100644 (file)
@@ -729,6 +729,7 @@ __ZN7WebCore4Page21markAllMatchesForTextERKN3WTF6StringEjbj
 __ZN7WebCore4Page22allVisitedStateChangedEPNS_9PageGroupE
 __ZN7WebCore4Page23clearUndoRedoOperationsEv
 __ZN7WebCore4Page24resumeScriptedAnimationsEv
+__ZN7WebCore4Page24scrollingStateTreeAsTextEv
 __ZN7WebCore4Page25suspendScriptedAnimationsEv
 __ZN7WebCore4Page31setCustomHTMLTokenizerChunkSizeEi
 __ZN7WebCore4Page31setCustomHTMLTokenizerTimeDelayEd
index c837c6f..2504214 100644 (file)
@@ -244,6 +244,17 @@ ScrollingCoordinator* Page::scrollingCoordinator()
     return m_scrollingCoordinator.get();
 }
 
+String Page::scrollingStateTreeAsText()
+{
+    if (Document* document = m_mainFrame->document())
+        document->updateLayout();
+
+    if (ScrollingCoordinator* scrollingCoordinator = this->scrollingCoordinator())
+        return scrollingCoordinator->scrollingStateTreeAsText();
+
+    return String();
+}
+
 struct ViewModeInfo {
     const char* name;
     Page::ViewMode type;
index c16b57b..a1c4ab9 100644 (file)
@@ -195,6 +195,8 @@ namespace WebCore {
 
         ScrollingCoordinator* scrollingCoordinator();
 
+        String scrollingStateTreeAsText();
+
         Settings* settings() const { return m_settings.get(); }
         ProgressTracker* progress() const { return m_progress.get(); }
         BackForwardController* backForward() const { return m_backForwardController.get(); }
index dd252f7..9eb7b88 100644 (file)
@@ -323,4 +323,9 @@ ScrollingNodeID ScrollingCoordinator::uniqueScrollLayerID()
     return uniqueScrollLayerID++;
 }
 
+String ScrollingCoordinator::scrollingStateTreeAsText() const
+{
+    return String();
+}
+
 } // namespace WebCore
index 33194cf..1b386ef 100644 (file)
@@ -117,6 +117,7 @@ public:
     virtual ScrollingNodeID attachToStateTree(ScrollingNodeType, ScrollingNodeID newNodeID, ScrollingNodeID /*parentID*/) { return newNodeID; }
     virtual void detachFromStateTree(ScrollingNodeID) { }
     virtual void clearStateTree() { }
+    virtual String scrollingStateTreeAsText() const;
 
     // Generated a unique id for scroll layers.
     ScrollingNodeID uniqueScrollLayerID();
index 7d242c2..62c4181 100644 (file)
@@ -27,6 +27,9 @@
 #include "ScrollingStateNode.h"
 
 #include "ScrollingStateTree.h"
+#include "TextStream.h"
+
+#include <wtf/text/WTFString.h>
 
 #if ENABLE(THREADED_SCROLLING)
 
@@ -104,6 +107,40 @@ void ScrollingStateNode::removeChild(ScrollingStateNode* node)
         m_children->at(i)->removeChild(node);
 }
 
+void ScrollingStateNode::writeIndent(TextStream& ts, int indent)
+{
+    for (int i = 0; i != indent; ++i)
+        ts << "  ";
+}
+
+void ScrollingStateNode::dump(TextStream& ts, int indent) const
+{
+    writeIndent(ts, indent);
+    dumpProperties(ts, indent);
+
+    if (m_children) {
+        writeIndent(ts, indent + 1);
+        size_t size = children()->size();
+        ts << "(children " << size << "\n";
+        
+        for (size_t i = 0; i < size; i++)
+            m_children->at(i)->dump(ts, indent + 2);
+        writeIndent(ts, indent + 1);
+        ts << ")\n";
+    }
+
+    writeIndent(ts, indent);
+    ts << ")\n";
+}
+
+String ScrollingStateNode::scrollingStateTreeAsText() const
+{
+    TextStream ts;
+
+    dump(ts, 0);
+    return ts.release();
+}
+
 } // namespace WebCore
 
 #endif // ENABLE(THREADED_SCROLLING)
index 4a2b329..734cc8c 100644 (file)
@@ -42,6 +42,7 @@ namespace WebCore {
 
 class GraphicsLayer;
 class ScrollingStateTree;
+class TextStream;
 
 class ScrollingStateNode {
 public:
@@ -79,12 +80,19 @@ public:
     void appendChild(PassOwnPtr<ScrollingStateNode>);
     void removeChild(ScrollingStateNode*);
 
+    String scrollingStateTreeAsText() const;
+
 protected:
     ScrollingStateNode(const ScrollingStateNode&);
+    static void writeIndent(TextStream&, int indent);
 
     ScrollingStateTree* m_scrollingStateTree;
 
 private:
+    void dump(TextStream&, int indent) const;
+
+    virtual void dumpProperties(TextStream&, int indent) const = 0;
+
     ScrollingNodeID m_nodeID;
 
     ScrollingStateNode* m_parent;
index cc1e898..0456f63 100644 (file)
@@ -27,6 +27,7 @@
 #include "ScrollingStateScrollingNode.h"
 
 #include "ScrollingStateTree.h"
+#include "TextStream.h"
 #include <wtf/OwnPtr.h>
 
 #if ENABLE(THREADED_SCROLLING)
@@ -205,6 +206,48 @@ void ScrollingStateScrollingNode::setScrollOrigin(const IntPoint& scrollOrigin)
     m_scrollingStateTree->setHasChangedProperties(true);
 }
 
+void ScrollingStateScrollingNode::dumpProperties(TextStream& ts, int indent) const
+{
+    ts << "(" << "Scrolling node" << "\n";
+
+    if (!m_viewportRect.isEmpty()) {
+        writeIndent(ts, indent + 1);
+        ts << "(viewport rect " << m_viewportRect.x() << " " << m_viewportRect.y() << " " << m_viewportRect.width() << " " << m_viewportRect.height() << ")\n";
+    }
+
+    if (!m_contentsSize.isEmpty()) {
+        writeIndent(ts, indent + 1);
+        ts << "(contents size " << m_contentsSize.width() << " " << m_contentsSize.height() << ")\n";
+    }
+
+    if (m_shouldUpdateScrollLayerPositionOnMainThread) {
+        writeIndent(ts, indent + 1);
+        ts << "(Scrolling on main thread because: ";
+        if (m_shouldUpdateScrollLayerPositionOnMainThread & ScrollingCoordinator::ForcedOnMainThread)
+            ts << "Forced on main thread, ";
+        if (m_shouldUpdateScrollLayerPositionOnMainThread & ScrollingCoordinator::HasSlowRepaintObjects)
+            ts << "Has slow repaint objects, ";
+        if (m_shouldUpdateScrollLayerPositionOnMainThread & ScrollingCoordinator::HasViewportConstrainedObjectsWithoutSupportingFixedLayers)
+            ts << "Has viewport constrained objects without supporting fixed layers, ";
+        if (m_shouldUpdateScrollLayerPositionOnMainThread & ScrollingCoordinator::HasNonLayerFixedObjects)
+            ts << "Has non-layer fixed objects, ";
+        if (m_shouldUpdateScrollLayerPositionOnMainThread & ScrollingCoordinator::IsImageDocument)
+            ts << "Is image document";
+        ts << ")\n";
+    }
+
+    if (m_requestedScrollPosition != IntPoint()) {
+        writeIndent(ts, indent + 1);
+        ts << "(requested scroll position " << m_requestedScrollPosition.x() << " " << m_requestedScrollPosition.y() << ")\n";
+    }
+
+    if (m_scrollOrigin != IntPoint()) {
+        writeIndent(ts, indent + 1);
+        ts << "(scroll origin " << m_scrollOrigin.x() << " " << m_scrollOrigin.y() << ")\n";
+    }
+
+}
+
 } // namespace WebCore
 
 #endif // ENABLE(THREADED_SCROLLING)
index 1e1931a..71803eb 100644 (file)
@@ -107,6 +107,8 @@ public:
 
     bool requestedScrollPositionRepresentsProgrammaticScroll() const { return m_requestedScrollPositionRepresentsProgrammaticScroll; }
 
+    virtual void dumpProperties(TextStream&, int indent) const OVERRIDE;
+
 private:
     ScrollingStateScrollingNode(ScrollingStateTree*, ScrollingNodeID);
 
index e147a78..a408f13 100644 (file)
@@ -72,6 +72,8 @@ public:
     // This function wipes out the current tree.
     virtual void clearStateTree();
 
+    virtual String scrollingStateTreeAsText() const OVERRIDE;
+
 private:
     virtual void recomputeWheelEventHandlerCountForFrameView(FrameView*);
     virtual void setShouldUpdateScrollLayerPositionOnMainThread(MainThreadScrollingReasons);
index 4e26c20..1687dcf 100644 (file)
@@ -394,6 +394,11 @@ void ScrollingCoordinatorMac::commitTreeState()
     ScrollingThread::dispatch(bind(&ScrollingTree::commitNewTreeState, m_scrollingTree.get(), treeState.release()));
 }
 
+String ScrollingCoordinatorMac::scrollingStateTreeAsText() const
+{
+    return m_scrollingStateTree->rootStateNode()->scrollingStateTreeAsText();
+}
+
 } // namespace WebCore
 
 #endif // ENABLE(THREADED_SCROLLING)
index 829cff5..b37b84c 100644 (file)
@@ -1273,6 +1273,20 @@ String Internals::repaintRectsAsText(Document* document, ExceptionCode& ec) cons
     return document->frame()->trackedRepaintRectsAsText();
 }
 
+String Internals::scrollingStateTreeAsText(Document* document, ExceptionCode& ec) const
+{
+    if (!document || !document->frame()) {
+        ec = INVALID_ACCESS_ERR;
+        return String();
+    }
+
+    Page* page = document->page();
+    if (!page)
+        return String();
+
+    return page->scrollingStateTreeAsText();
+}
+
 void Internals::garbageCollectDocumentResources(Document* document, ExceptionCode& ec) const
 {
     if (!document) {
index e812785..6727d17 100644 (file)
@@ -196,6 +196,7 @@ public:
     String layerTreeAsText(Document*, unsigned flags, ExceptionCode&) const;
     String layerTreeAsText(Document*, ExceptionCode&) const;
     String repaintRectsAsText(Document*, ExceptionCode&) const;
+    String scrollingStateTreeAsText(Document*, ExceptionCode&) const;
 
     void garbageCollectDocumentResources(Document*, ExceptionCode&) const;
 
index 16ec1f8..0486322 100644 (file)
     const unsigned short LAYER_TREE_INCLUDES_TILE_CACHES = 2;
     DOMString layerTreeAsText(in Document document, in [Optional] unsigned short flags) raises (DOMException);
 
+    DOMString scrollingStateTreeAsText(in Document document) raises (DOMException);
+
     DOMString repaintRectsAsText(in Document document) raises (DOMException);
 
     void garbageCollectDocumentResources(in Document document) raises (DOMException);
index bfb2a6b..9f65ea4 100644 (file)
@@ -1,3 +1,13 @@
+2012-11-01  Beth Dakin  <bdakin@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=100917
+        There should be a way to dump the scrolling tree from the layout tests
+        
+        Reviewed by Simon Fraser.
+
+        * win/WebKit2.def:
+        * win/WebKit2CFLite.def:
+
 2012-11-01  Huang Dongsung  <luxtella@company100.net>
 
         Coordinated Graphics: Clean up headers of Coordinated Graphics.
index a307396..19389a9 100644 (file)
@@ -216,6 +216,7 @@ EXPORTS
         ?scriptExecutionContext@JSDOMGlobalObject@WebCore@@QBEPAVScriptExecutionContext@2@XZ
         ?scriptNameToCode@WebCore@@YA?AW4UScriptCode@@ABVString@WTF@@@Z
         ?scrollElementToRect@FrameView@WebCore@@QAEXPAVElement@2@ABVIntRect@2@@Z
+        ?scrollingStateTreeAsText@Page@WebCore@@QAE?AVString@WTF@@XZ
         ?setCanStartMedia@Page@WebCore@@QAEX_N@Z
         ?setCursiveFontFamily@Settings@WebCore@@QAEXABVAtomicString@WTF@@W4UScriptCode@@@Z
         ?setDeviceScaleFactor@Page@WebCore@@QAEXM@Z
index ee16388..a3152e2 100644 (file)
@@ -209,6 +209,7 @@ EXPORTS
         ?scriptExecutionContext@JSDOMGlobalObject@WebCore@@QBEPAVScriptExecutionContext@2@XZ
         ?scriptNameToCode@WebCore@@YA?AW4UScriptCode@@ABVString@WTF@@@Z
         ?scrollElementToRect@FrameView@WebCore@@QAEXPAVElement@2@ABVIntRect@2@@Z
+        ?scrollingStateTreeAsText@Page@WebCore@@QAE?AVString@WTF@@XZ
         ?setCanStartMedia@Page@WebCore@@QAEX_N@Z
         ?setCursiveFontFamily@Settings@WebCore@@QAEXABVAtomicString@WTF@@W4UScriptCode@@@Z
         ?setDeviceScaleFactor@Page@WebCore@@QAEXM@Z
index 8dcbf58..39ceede 100644 (file)
@@ -30,6 +30,7 @@ _ZN24DumpRenderTreeSupportGtk*;
 _ZN7WebCore4Page13setPaginationERKNS_10PaginationE;
 _ZN7WebCore4Page18setPageScaleFactorEfRKNS_8IntPointE;
 _ZN7WebCore4Page20setDeviceScaleFactorEf;
+_ZN7WebCore4Page24scrollingStateTreeAsTextEv;
 _ZN7WebCore4Page16setCanStartMediaEb;
 _ZN7WebCore4toJSEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_10ClientRectE;
 _ZN7WebCore4toJSEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_10ShadowRootE;