<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[200636] trunk</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/200636">200636</a></dd>
<dt>Author</dt> <dd>simon.fraser@apple.com</dd>
<dt>Date</dt> <dd>2016-05-10 12:31:22 -0700 (Tue, 10 May 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>Fix scrolling tree dumping
https://bugs.webkit.org/show_bug.cgi?id=157529
Reviewed by Tim Horton.
Source/WebCore:
Scrolling tree dumps cannot contain layerIDs because they are not stable between
runs. Fix by adding ScrollingStateTreeAsTextBehavior flags, and not dumping
the layerID for tests.
Sadly RemoteScrollingCoordinatorTransaction has a lot of duplicated code for dumping
the scrolling state tree, which should be converted to dumpProperties() at some point.
Fix the one test that suffered from this problem, and unskip it.
Test: fast/scrolling/ios/remove-scrolling-role.html
* page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::dumpProperties):
* page/scrolling/ScrollingStateFixedNode.h:
* page/scrolling/ScrollingStateFrameScrollingNode.cpp:
(WebCore::ScrollingStateFrameScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateFrameScrollingNode.h:
* page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::dump):
(WebCore::ScrollingStateNode::scrollingStateTreeAsText):
* page/scrolling/ScrollingStateNode.h:
* page/scrolling/ScrollingStateOverflowScrollingNode.cpp:
(WebCore::ScrollingStateOverflowScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateOverflowScrollingNode.h:
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateScrollingNode.h:
* page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::dumpProperties):
* page/scrolling/ScrollingStateStickyNode.h:
LayoutTests:
* fast/scrolling/ios/remove-scrolling-role-expected.txt: Renamed from LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt.
* fast/scrolling/ios/remove-scrolling-role.html: Renamed from LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html.
* platform/ios-simulator-wk2/TestExpectations:</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsplatformiossimulatorwk2TestExpectations">trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateFixedNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateFixedNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateFrameScrollingNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateFrameScrollingNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateOverflowScrollingNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateOverflowScrollingNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateScrollingNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateScrollingNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateStickyNodecpp">trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingStateStickyNodeh">trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.h</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastscrollingiosremovescrollingroleexpectedtxt">trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastscrollingiosremovescrollingrolehtml">trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role.html</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingroleexpectedtxt">trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingrolehtml">trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/LayoutTests/ChangeLog        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -1,5 +1,16 @@
</span><span class="cx"> 2016-05-10 Simon Fraser <simon.fraser@apple.com>
</span><span class="cx">
</span><ins>+ Fix scrolling tree dumping
+ https://bugs.webkit.org/show_bug.cgi?id=157529
+
+ Reviewed by Tim Horton.
+
+ * fast/scrolling/ios/remove-scrolling-role-expected.txt: Renamed from LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt.
+ * fast/scrolling/ios/remove-scrolling-role.html: Renamed from LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html.
+ * platform/ios-simulator-wk2/TestExpectations:
+
+2016-05-10 Simon Fraser <simon.fraser@apple.com>
+
</ins><span class="cx"> Mark fast/scrolling/ios/scroll-events-back-forward-after-pageshow.html as flakey.
</span><span class="cx">
</span><span class="cx"> * platform/ios-simulator-wk2/TestExpectations:
</span></span></pre></div>
<a id="trunkLayoutTestsfastscrollingiosremovescrollingroleexpectedtxtfromrev200635trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingroleexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role-expected.txt (from rev 200635, trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt) (0 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role-expected.txt         (rev 0)
+++ trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role-expected.txt        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+(Frame scrolling node
+ (scrollable area size 800 600)
+ (contents size 800 2513)
+ (children 1
+ (Overflow scrolling node
+ (scrollable area size 300 400)
+ (contents size 300 2000)
+ )
+ )
+)
+
</ins></span></pre></div>
<a id="trunkLayoutTestsfastscrollingiosremovescrollingrolehtmlfromrev200635trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingrolehtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role.html (from rev 200635, trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html) (0 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role.html         (rev 0)
+++ trunk/LayoutTests/fast/scrolling/ios/remove-scrolling-role.html        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+<!DOCTYPE html>
+<html>
+
+<head>
+ <style>
+ body {
+ margin: 0;
+ height: 2500px;
+ }
+
+ #fixed {
+ position: fixed;
+ left: 10px;
+ top: 10px;
+ -webkit-overflow-scrolling: touch;
+ height: 400px;
+ width: 300px;
+ overflow: auto;
+ border: 4px solid black;
+ }
+
+ #fixed.changed {
+ position: absolute;
+ border: 4px solid green;
+ }
+
+ .content {
+ height: 2000px;
+ background-color: silver;
+ }
+
+ </style>
+ <script>
+ if (window.testRunner) {
+ testRunner.waitUntilDone();
+ testRunner.dumpAsText();
+ }
+
+ function doTest()
+ {
+ window.setTimeout(function() {
+ document.getElementById('fixed').classList.add('changed');
+
+ if (window.internals)
+ document.getElementById('results').innerText = internals.scrollingStateTreeAsText();
+
+ if (window.testRunner)
+ testRunner.notifyDone();
+
+ }, 0);
+ }
+
+ window.addEventListener('load', doTest, false);
+ </script>
+</head>
+<body>
+ <pre id="results"></pre>
+ <div id="fixed">
+ <div class="content">
+ </div>
+ </div>
+</body>
+</html>
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatorwk2TestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -1664,7 +1664,7 @@
</span><span class="cx"> http/tests/loading/preload-img-srcset-sizes.html [ Failure ]
</span><span class="cx"> http/tests/navigation/postredirect-basic.html [ Failure ]
</span><span class="cx"> http/tests/navigation/postredirect-goback1.html [ Failure ]
</span><del>-platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html [ Failure ]
</del><ins>+
</ins><span class="cx"> platform/ios-simulator/ios/fast/text/underline-scaling.html [ Failure ]
</span><span class="cx"> compositing/masks/compositing-clip-path-on-subpixel-position.html [ ImageOnlyFailure ]
</span><span class="cx"> fast/borders/dashed-border-on-subpixel-position.html [ ImageOnlyFailure ]
</span></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingroleexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role-expected.txt        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -1,12 +0,0 @@
</span><del>-(Frame scrolling node
- (scrollable area size 800 600)
- (contents size 800 2513)
- (children 1
- (Overflow scrolling node
- (scrollable area size 300 400)
- (contents size 300 2000)
- (scrolled contents layer 22)
- )
- )
-)
-
</del></span></pre></div>
<a id="trunkLayoutTestsplatformiossimulatorwk2scrollingremovescrollingrolehtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/scrolling/remove-scrolling-role.html        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -1,63 +0,0 @@
</span><del>-<!DOCTYPE html>
-<html>
-
-<head>
- <style>
- body {
- margin: 0;
- height: 2500px;
- }
-
- #fixed {
- position: fixed;
- left: 10px;
- top: 10px;
- -webkit-overflow-scrolling: touch;
- height: 400px;
- width: 300px;
- overflow: auto;
- border: 4px solid black;
- }
-
- #fixed.changed {
- position: absolute;
- border: 4px solid green;
- }
-
- .content {
- height: 2000px;
- background-color: silver;
- }
-
- </style>
- <script>
- if (window.testRunner) {
- testRunner.waitUntilDone();
- testRunner.dumpAsText();
- }
-
- function doTest()
- {
- window.setTimeout(function() {
- document.getElementById('fixed').classList.add('changed');
-
- if (window.internals)
- document.getElementById('results').innerText = internals.scrollingStateTreeAsText();
-
- if (window.testRunner)
- testRunner.notifyDone();
-
- }, 0);
- }
-
- window.addEventListener('load', doTest, false);
- </script>
-</head>
-<body>
- <pre id="results"></pre>
- <div id="fixed">
- <div class="content">
- </div>
- </div>
-</body>
-</html>
</del></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/ChangeLog        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -1,3 +1,41 @@
</span><ins>+2016-05-10 Simon Fraser <simon.fraser@apple.com>
+
+ Fix scrolling tree dumping
+ https://bugs.webkit.org/show_bug.cgi?id=157529
+
+ Reviewed by Tim Horton.
+
+ Scrolling tree dumps cannot contain layerIDs because they are not stable between
+ runs. Fix by adding ScrollingStateTreeAsTextBehavior flags, and not dumping
+ the layerID for tests.
+
+ Sadly RemoteScrollingCoordinatorTransaction has a lot of duplicated code for dumping
+ the scrolling state tree, which should be converted to dumpProperties() at some point.
+
+ Fix the one test that suffered from this problem, and unskip it.
+
+ Test: fast/scrolling/ios/remove-scrolling-role.html
+
+ * page/scrolling/ScrollingStateFixedNode.cpp:
+ (WebCore::ScrollingStateFixedNode::dumpProperties):
+ * page/scrolling/ScrollingStateFixedNode.h:
+ * page/scrolling/ScrollingStateFrameScrollingNode.cpp:
+ (WebCore::ScrollingStateFrameScrollingNode::dumpProperties):
+ * page/scrolling/ScrollingStateFrameScrollingNode.h:
+ * page/scrolling/ScrollingStateNode.cpp:
+ (WebCore::ScrollingStateNode::dump):
+ (WebCore::ScrollingStateNode::scrollingStateTreeAsText):
+ * page/scrolling/ScrollingStateNode.h:
+ * page/scrolling/ScrollingStateOverflowScrollingNode.cpp:
+ (WebCore::ScrollingStateOverflowScrollingNode::dumpProperties):
+ * page/scrolling/ScrollingStateOverflowScrollingNode.h:
+ * page/scrolling/ScrollingStateScrollingNode.cpp:
+ (WebCore::ScrollingStateScrollingNode::dumpProperties):
+ * page/scrolling/ScrollingStateScrollingNode.h:
+ * page/scrolling/ScrollingStateStickyNode.cpp:
+ (WebCore::ScrollingStateStickyNode::dumpProperties):
+ * page/scrolling/ScrollingStateStickyNode.h:
+
</ins><span class="cx"> 2016-05-10 Csaba Osztrogonác <ossy@webkit.org>
</span><span class="cx">
</span><span class="cx"> Fix the !ENABLE(CSS_REGIONS) build after r198990
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateFixedNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -75,7 +75,7 @@
</span><span class="cx"> static_cast<GraphicsLayer*>(layer())->syncPosition(position);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollingStateFixedNode::dumpProperties(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateFixedNode::dumpProperties(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior) const
</ins><span class="cx"> {
</span><span class="cx"> ts << "(" << "Fixed node" << "\n";
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateFixedNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx">
</span><span class="cx"> void syncLayerPositionForViewportRect(const LayoutRect& viewportRect) override;
</span><span class="cx">
</span><del>- void dumpProperties(TextStream&, int indent) const override;
</del><ins>+ void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const override;
</ins><span class="cx">
</span><span class="cx"> FixedPositionViewportConstraints m_constraints;
</span><span class="cx"> };
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateFrameScrollingNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -221,11 +221,11 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void ScrollingStateFrameScrollingNode::dumpProperties(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateFrameScrollingNode::dumpProperties(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior behavior) const
</ins><span class="cx"> {
</span><span class="cx"> ts << "(Frame scrolling node" << "\n";
</span><span class="cx">
</span><del>- ScrollingStateScrollingNode::dumpProperties(ts, indent);
</del><ins>+ ScrollingStateScrollingNode::dumpProperties(ts, indent, behavior);
</ins><span class="cx">
</span><span class="cx"> if (m_frameScaleFactor != 1) {
</span><span class="cx"> writeIndent(ts, indent + 1);
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateFrameScrollingNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -119,7 +119,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> void setScrollerImpsFromScrollbars(Scrollbar* verticalScrollbar, Scrollbar* horizontalScrollbar);
</span><span class="cx">
</span><del>- void dumpProperties(TextStream&, int indent) const override;
</del><ins>+ void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const override;
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> ScrollingStateFrameScrollingNode(ScrollingStateTree&, ScrollingNodeID);
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -112,17 +112,17 @@
</span><span class="cx"> setPropertyChanged(ScrollLayer);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollingStateNode::dump(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateNode::dump(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior behavior) const
</ins><span class="cx"> {
</span><span class="cx"> writeIndent(ts, indent);
</span><del>- dumpProperties(ts, indent);
</del><ins>+ dumpProperties(ts, indent, behavior);
</ins><span class="cx">
</span><span class="cx"> if (m_children) {
</span><span class="cx"> writeIndent(ts, indent + 1);
</span><span class="cx"> ts << "(children " << children()->size() << "\n";
</span><span class="cx">
</span><span class="cx"> for (auto& child : *m_children)
</span><del>- child->dump(ts, indent + 2);
</del><ins>+ child->dump(ts, indent + 2, behavior);
</ins><span class="cx"> writeIndent(ts, indent + 1);
</span><span class="cx"> ts << ")\n";
</span><span class="cx"> }
</span><span class="lines">@@ -135,7 +135,7 @@
</span><span class="cx"> {
</span><span class="cx"> TextStream ts;
</span><span class="cx">
</span><del>- dump(ts, 0);
</del><ins>+ dump(ts, 0, ScrollingStateTreeAsTextBehaviorNormal);
</ins><span class="cx"> return ts.release();
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -40,6 +40,13 @@
</span><span class="cx"> class ScrollingStateTree;
</span><span class="cx"> class TextStream;
</span><span class="cx">
</span><ins>+enum ScrollingStateTreeAsTextBehaviorFlags {
+ ScrollingStateTreeAsTextBehaviorNormal = 0,
+ ScrollingStateTreeAsTextBehaviorIncludeLayerIDs = 1 << 0,
+ ScrollingStateTreeAsTextBehaviorDebug = ScrollingStateTreeAsTextBehaviorIncludeLayerIDs
+};
+typedef unsigned ScrollingStateTreeAsTextBehavior;
+
</ins><span class="cx"> // Used to allow ScrollingStateNodes to refer to layers in various contexts:
</span><span class="cx"> // a) Async scrolling, main thread: ScrollingStateNode holds onto a GraphicsLayer, and uses m_layerID
</span><span class="cx"> // to detect whether that GraphicsLayer's underlying PlatformLayer changed.
</span><span class="lines">@@ -238,9 +245,9 @@
</span><span class="cx"> ScrollingStateNode(const ScrollingStateNode&, ScrollingStateTree&);
</span><span class="cx">
</span><span class="cx"> private:
</span><del>- void dump(TextStream&, int indent) const;
</del><ins>+ void dump(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const;
</ins><span class="cx">
</span><del>- virtual void dumpProperties(TextStream&, int indent) const = 0;
</del><ins>+ virtual void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const = 0;
</ins><span class="cx">
</span><span class="cx"> const ScrollingNodeType m_nodeType;
</span><span class="cx"> ScrollingNodeID m_nodeID;
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateOverflowScrollingNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -68,13 +68,13 @@
</span><span class="cx"> setPropertyChanged(ScrolledContentsLayer);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollingStateOverflowScrollingNode::dumpProperties(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateOverflowScrollingNode::dumpProperties(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior behavior) const
</ins><span class="cx"> {
</span><span class="cx"> ts << "(" << "Overflow scrolling node" << "\n";
</span><span class="cx">
</span><del>- ScrollingStateScrollingNode::dumpProperties(ts, indent);
</del><ins>+ ScrollingStateScrollingNode::dumpProperties(ts, indent, behavior);
</ins><span class="cx">
</span><del>- if (m_scrolledContentsLayer.layerID()) {
</del><ins>+ if ((behavior & ScrollingStateTreeAsTextBehaviorIncludeLayerIDs) && m_scrolledContentsLayer.layerID()) {
</ins><span class="cx"> writeIndent(ts, indent + 1);
</span><span class="cx"> ts << "(scrolled contents layer " << m_scrolledContentsLayer.layerID() << ")\n";
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateOverflowScrollingNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -48,7 +48,7 @@
</span><span class="cx"> const LayerRepresentation& scrolledContentsLayer() const { return m_scrolledContentsLayer; }
</span><span class="cx"> WEBCORE_EXPORT void setScrolledContentsLayer(const LayerRepresentation&);
</span><span class="cx">
</span><del>- void dumpProperties(TextStream&, int indent) const override;
</del><ins>+ void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const override;
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> ScrollingStateOverflowScrollingNode(ScrollingStateTree&, ScrollingNodeID);
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateScrollingNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -168,7 +168,7 @@
</span><span class="cx"> setPropertyChanged(ExpectsWheelEventTestTrigger);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollingStateScrollingNode::dumpProperties(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateScrollingNode::dumpProperties(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior) const
</ins><span class="cx"> {
</span><span class="cx"> if (m_scrollPosition != FloatPoint()) {
</span><span class="cx"> writeIndent(ts, indent + 1);
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateScrollingNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -95,11 +95,11 @@
</span><span class="cx"> bool expectsWheelEventTestTrigger() const { return m_expectsWheelEventTestTrigger; }
</span><span class="cx"> WEBCORE_EXPORT void setExpectsWheelEventTestTrigger(bool);
</span><span class="cx">
</span><del>- void dumpProperties(TextStream&, int indent) const override;
-
</del><span class="cx"> protected:
</span><span class="cx"> ScrollingStateScrollingNode(ScrollingStateTree&, ScrollingNodeType, ScrollingNodeID);
</span><span class="cx"> ScrollingStateScrollingNode(const ScrollingStateScrollingNode&, ScrollingStateTree&);
</span><ins>+
+ void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const override;
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> FloatSize m_scrollableAreaSize;
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateStickyNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -75,7 +75,7 @@
</span><span class="cx"> static_cast<GraphicsLayer*>(layer())->syncPosition(position);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollingStateStickyNode::dumpProperties(TextStream& ts, int indent) const
</del><ins>+void ScrollingStateStickyNode::dumpProperties(TextStream& ts, int indent, ScrollingStateTreeAsTextBehavior) const
</ins><span class="cx"> {
</span><span class="cx"> ts << "(" << "Sticky node" << "\n";
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingStateStickyNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.h (200635 => 200636)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.h        2016-05-10 19:31:16 UTC (rev 200635)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.h        2016-05-10 19:31:22 UTC (rev 200636)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx">
</span><span class="cx"> void syncLayerPositionForViewportRect(const LayoutRect& viewportRect) override;
</span><span class="cx">
</span><del>- void dumpProperties(TextStream&, int indent) const override;
</del><ins>+ void dumpProperties(TextStream&, int indent, ScrollingStateTreeAsTextBehavior) const override;
</ins><span class="cx">
</span><span class="cx"> StickyPositionViewportConstraints m_constraints;
</span><span class="cx"> };
</span></span></pre>
</div>
</div>
</body>
</html>