void ScrollingStateNode::willBeRemovedFromStateTree() { ASSERT(m_scrollingStateTree); m_scrollingStateTree->didRemoveNode(scrollingNodeID()); if (!m_children) return; size_t size = m_children->size(); for (size_t i = 0; i < size; ++i) m_children->at(i)->willBeRemovedFromStateTree(); }
void ScrollingTreeScrollingNode::commitStateAfterChildren(const ScrollingStateNode& stateNode) { const ScrollingStateScrollingNode& scrollingStateNode = downcast<ScrollingStateScrollingNode>(stateNode); if (scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::RequestedScrollPosition)) scrollingTree().scrollingTreeNodeRequestsScroll(scrollingNodeID(), scrollingStateNode.requestedScrollPosition(), scrollingStateNode.requestedScrollPositionRepresentsProgrammaticScroll()); }
void ScrollingTreeScrollingNode::setScrollPositionWithoutContentEdgeConstraints(const FloatPoint& scrollPosition) { setScrollLayerPosition(scrollPosition, { }); scrollingTree().scrollingTreeNodeDidScroll(scrollingNodeID(), scrollPosition, Nullopt); }