| Index: Source/core/rendering/RenderView.cpp
|
| diff --git a/Source/core/rendering/RenderView.cpp b/Source/core/rendering/RenderView.cpp
|
| index bbb9ce50e38269377d5167f7072fd73250449716..121f41e4e1052eca31cfe5dc67efc614ffd2f62b 100644
|
| --- a/Source/core/rendering/RenderView.cpp
|
| +++ b/Source/core/rendering/RenderView.cpp
|
| @@ -162,7 +162,7 @@ void RenderView::positionDialogs()
|
| }
|
| }
|
|
|
| -void RenderView::layoutContent(const LayoutState& state)
|
| +void RenderView::layoutContent()
|
| {
|
| ASSERT(needsLayout());
|
|
|
| @@ -173,27 +173,27 @@ void RenderView::layoutContent(const LayoutState& state)
|
| positionDialogs();
|
|
|
| #ifndef NDEBUG
|
| - checkLayoutState(state);
|
| + checkLayoutState();
|
| #endif
|
| }
|
|
|
| #ifndef NDEBUG
|
| -void RenderView::checkLayoutState(const LayoutState& state)
|
| +void RenderView::checkLayoutState()
|
| {
|
| if (!RuntimeEnabledFeatures::repaintAfterLayoutEnabled()) {
|
| ASSERT(layoutDeltaMatches(LayoutSize()));
|
| }
|
| ASSERT(!m_layoutStateDisableCount);
|
| - ASSERT(m_layoutState == &state);
|
| + ASSERT(!m_layoutState->m_next);
|
| }
|
| #endif
|
|
|
| -void RenderView::initializeLayoutState(LayoutState& state)
|
| +void RootLayoutStateScope::initializeLayoutState()
|
| {
|
| - state.m_clipped = false;
|
| - state.m_pageLogicalHeight = m_pageLogicalHeight;
|
| - state.m_pageLogicalHeightChanged = m_pageLogicalHeightChanged;
|
| - state.m_isPaginated = state.m_pageLogicalHeight;
|
| + m_rootLayoutState.m_clipped = false;
|
| + m_rootLayoutState.m_pageLogicalHeight = m_view.m_pageLogicalHeight;
|
| + m_rootLayoutState.m_pageLogicalHeightChanged = m_view.m_pageLogicalHeightChanged;
|
| + m_rootLayoutState.m_isPaginated = m_rootLayoutState.m_pageLogicalHeight;
|
| }
|
|
|
| void RenderView::layout()
|
| @@ -229,18 +229,15 @@ void RenderView::layout()
|
| if (!needsLayout())
|
| return;
|
|
|
| - LayoutState state;
|
| - initializeLayoutState(state);
|
| + RootLayoutStateScope rootLayoutStateScope(*this);
|
|
|
| m_pageLogicalHeightChanged = false;
|
| - m_layoutState = &state;
|
|
|
| - layoutContent(state);
|
| + layoutContent();
|
|
|
| #ifndef NDEBUG
|
| - checkLayoutState(state);
|
| + checkLayoutState();
|
| #endif
|
| - m_layoutState = 0;
|
| clearNeedsLayout();
|
| }
|
|
|
|
|