[webkit-changes] [WebKit/WebKit] c32407: ScrollingStateNode::m_children should be a Vector ...
Alex Christensen
noreply at github.com
Tue Aug 22 19:44:44 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c32407025177e9f14ae61fb833c0811c4bfe95ac
https://github.com/WebKit/WebKit/commit/c32407025177e9f14ae61fb833c0811c4bfe95ac
Author: Alex Christensen <achristensen at apple.com>
Date: 2023-08-22 (Tue, 22 Aug 2023)
Changed paths:
M LayoutTests/platform/ios-wk2/scrollingcoordinator/scrolling-tree/remove-coordinated-frame-expected.txt
M LayoutTests/platform/wpe/scrollingcoordinator/scrolling-tree/remove-coordinated-frame-expected.txt
M LayoutTests/scrollingcoordinator/scrolling-tree/remove-coordinated-frame-expected.txt
M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
M Source/WebCore/page/scrolling/ScrollingStateNode.cpp
M Source/WebCore/page/scrolling/ScrollingStateNode.h
M Source/WebCore/page/scrolling/ScrollingStateTree.cpp
M Source/WebCore/page/scrolling/ScrollingTree.cpp
M Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp
A Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp.orig
A Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp.rej
Log Message:
-----------
ScrollingStateNode::m_children should be a Vector instead of a unique_ptr<Vector>
https://bugs.webkit.org/show_bug.cgi?id=260500
rdar://114229385
Reviewed by Simon Fraser.
This removes double allocation and double pointer dereferencing. It adds a pointer size to the node.
There was one layout test that printed that it had 0 children in the scroll tree and that is no longer printed.
This is of no consequence.
* Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::childrenOfNode const):
* Source/WebCore/page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::cloneAndResetChildren):
(WebCore::ScrollingStateNode::appendChild):
(WebCore::ScrollingStateNode::insertChild):
(WebCore::ScrollingStateNode::removeChildAtIndex):
(WebCore::ScrollingStateNode::indexOfChild const):
(WebCore::ScrollingStateNode::dump const):
* Source/WebCore/page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::children):
(WebCore::ScrollingStateNode::children const):
(WebCore::ScrollingStateNode::takeChildren):
* Source/WebCore/page/scrolling/ScrollingStateTree.cpp:
(WebCore::nodeWasReattachedRecursive):
(WebCore::ScrollingStateTree::unparentChildrenAndDestroyNode):
(WebCore::ScrollingStateTree::traverse const):
(WebCore::ScrollingStateTree::removeNodeAndAllDescendants):
(WebCore::ScrollingStateTree::recursiveNodeWillBeRemoved):
(WebCore::reconcileLayerPositionsRecursive):
* Source/WebCore/page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNodeRecursive):
* Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(encodeNodeAndDescendants):
(WebKit::recursiveDumpNodes):
Canonical link: https://commits.webkit.org/267174@main
More information about the webkit-changes
mailing list