void AsyncScrollingCoordinator::updateOverflowScrollingNode(ScrollingNodeID nodeID, GraphicsLayer* layer, GraphicsLayer* scrolledContentsLayer, const ScrollingGeometry* scrollingGeometry) { ScrollingStateOverflowScrollingNode* node = toScrollingStateOverflowScrollingNode(m_scrollingStateTree->stateNodeForID(nodeID)); ASSERT(node); if (!node) return; node->setLayer(layer); node->setScrolledContentsLayer(scrolledContentsLayer); if (scrollingGeometry) { node->setScrollOrigin(scrollingGeometry->scrollOrigin); node->setScrollPosition(scrollingGeometry->scrollPosition); node->setTotalContentsSize(scrollingGeometry->contentSize); node->setScrollableAreaSize(scrollingGeometry->scrollableAreaSize); } }
void AsyncScrollingCoordinator::updateOverflowScrollingNode(ScrollingNodeID nodeID, GraphicsLayer* layer, GraphicsLayer* scrolledContentsLayer, const ScrollingGeometry* scrollingGeometry) { ScrollingStateOverflowScrollingNode* node = downcast<ScrollingStateOverflowScrollingNode>(m_scrollingStateTree->stateNodeForID(nodeID)); ASSERT(node); if (!node) return; node->setLayer(layer); node->setScrolledContentsLayer(scrolledContentsLayer); if (scrollingGeometry) { node->setScrollOrigin(scrollingGeometry->scrollOrigin); node->setScrollPosition(scrollingGeometry->scrollPosition); node->setTotalContentsSize(scrollingGeometry->contentSize); node->setReachableContentsSize(scrollingGeometry->reachableContentSize); node->setScrollableAreaSize(scrollingGeometry->scrollableAreaSize); #if ENABLE(CSS_SCROLL_SNAP) setStateScrollingNodeSnapOffsetsAsFloat(*node, ScrollEventAxis::Horizontal, scrollingGeometry->horizontalSnapOffsets, m_page->deviceScaleFactor()); setStateScrollingNodeSnapOffsetsAsFloat(*node, ScrollEventAxis::Vertical, scrollingGeometry->verticalSnapOffsets, m_page->deviceScaleFactor()); #endif } }