| Index: Source/core/rendering/RenderView.cpp
|
| diff --git a/Source/core/rendering/RenderView.cpp b/Source/core/rendering/RenderView.cpp
|
| index 8f43eaf3883078874dc0b71d86c4e88914d47460..9f98e8d92ecf23e9d19647615bcfc23b1739a586 100644
|
| --- a/Source/core/rendering/RenderView.cpp
|
| +++ b/Source/core/rendering/RenderView.cpp
|
| @@ -161,7 +161,7 @@ void RenderView::positionDialogs()
|
| }
|
| }
|
|
|
| -void RenderView::layoutContent(const LayoutState& state)
|
| +void RenderView::layoutContent()
|
| {
|
| ASSERT(needsLayout());
|
|
|
| @@ -172,27 +172,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()
|
| @@ -228,18 +228,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();
|
| }
|
|
|
|
|