Title: [142561] trunk/Source/WebCore
- Revision
- 142561
- Author
- simon.fra...@apple.com
- Date
- 2013-02-11 17:35:34 -0800 (Mon, 11 Feb 2013)
Log Message
REGRESSION (r142520?): Space no longer scrolls the page
https://bugs.webkit.org/show_bug.cgi?id=109526
Reviewed by Tim Horton.
ScrollingTree::updateTreeFromStateNode() used to bail early when it had
no children (no fixed or sticky elements), but that left updateAfterChildren()
uncalled. Fix by always calling updateAfterChildren(), which updates the scroll
position.
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNode):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (142560 => 142561)
--- trunk/Source/WebCore/ChangeLog 2013-02-12 01:31:46 UTC (rev 142560)
+++ trunk/Source/WebCore/ChangeLog 2013-02-12 01:35:34 UTC (rev 142561)
@@ -1,3 +1,18 @@
+2013-02-11 Simon Fraser <simon.fra...@apple.com>
+
+ REGRESSION (r142520?): Space no longer scrolls the page
+ https://bugs.webkit.org/show_bug.cgi?id=109526
+
+ Reviewed by Tim Horton.
+
+ ScrollingTree::updateTreeFromStateNode() used to bail early when it had
+ no children (no fixed or sticky elements), but that left updateAfterChildren()
+ uncalled. Fix by always calling updateAfterChildren(), which updates the scroll
+ position.
+
+ * page/scrolling/ScrollingTree.cpp:
+ (WebCore::ScrollingTree::updateTreeFromStateNode):
+
2013-02-11 Tim Horton <timothy_hor...@apple.com>
Remove extra early-return in FrameView::setScrollPosition
Modified: trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp (142560 => 142561)
--- trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp 2013-02-12 01:31:46 UTC (rev 142560)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp 2013-02-12 01:35:34 UTC (rev 142561)
@@ -193,13 +193,11 @@
// Now update the children if we have any.
Vector<OwnPtr<ScrollingStateNode> >* stateNodeChildren = stateNode->children();
- if (!stateNodeChildren)
- return;
-
- size_t size = stateNodeChildren->size();
- for (size_t i = 0; i < size; ++i)
- updateTreeFromStateNode(stateNodeChildren->at(i).get());
-
+ if (stateNodeChildren) {
+ size_t size = stateNodeChildren->size();
+ for (size_t i = 0; i < size; ++i)
+ updateTreeFromStateNode(stateNodeChildren->at(i).get());
+ }
node->updateAfterChildren(stateNode);
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes