Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(99)

Side by Side Diff: Source/core/rendering/RenderView.h

Issue 16896019: Replace RenderArena with PartitionAlloc. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2006 Apple Computer, Inc. 3 * Copyright (C) 2006 Apple Computer, Inc.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 214
215 // These functions may only be accessed by LayoutStateMaintainer. 215 // These functions may only be accessed by LayoutStateMaintainer.
216 bool pushLayoutState(RenderBox* renderer, const LayoutSize& offset, LayoutUn it pageHeight = 0, bool pageHeightChanged = false, ColumnInfo* colInfo = 0) 216 bool pushLayoutState(RenderBox* renderer, const LayoutSize& offset, LayoutUn it pageHeight = 0, bool pageHeightChanged = false, ColumnInfo* colInfo = 0)
217 { 217 {
218 // We push LayoutState even if layoutState is disabled because it stores layoutDelta too. 218 // We push LayoutState even if layoutState is disabled because it stores layoutDelta too.
219 if (!doingFullRepaint() || m_layoutState->isPaginated() || renderer->has Columns() || renderer->flowThreadContainingBlock() 219 if (!doingFullRepaint() || m_layoutState->isPaginated() || renderer->has Columns() || renderer->flowThreadContainingBlock()
220 || m_layoutState->lineGrid() || (renderer->style()->lineGrid() != Re nderStyle::initialLineGrid() && renderer->isBlockFlow()) 220 || m_layoutState->lineGrid() || (renderer->style()->lineGrid() != Re nderStyle::initialLineGrid() && renderer->isBlockFlow())
221 || (renderer->isRenderBlock() && toRenderBlock(renderer)->exclusionS hapeInsideInfo()) 221 || (renderer->isRenderBlock() && toRenderBlock(renderer)->exclusionS hapeInsideInfo())
222 || (m_layoutState->exclusionShapeInsideInfo() && renderer->isRenderB lock() && !toRenderBlock(renderer)->allowsExclusionShapeInsideInfoSharing()) 222 || (m_layoutState->exclusionShapeInsideInfo() && renderer->isRenderB lock() && !toRenderBlock(renderer)->allowsExclusionShapeInsideInfoSharing())
223 ) { 223 ) {
224 m_layoutState = new (renderArena()) LayoutState(m_layoutState, rende rer, offset, pageHeight, pageHeightChanged, colInfo); 224 m_layoutState = new LayoutState(m_layoutState, renderer, offset, pag eHeight, pageHeightChanged, colInfo);
225 return true; 225 return true;
226 } 226 }
227 return false; 227 return false;
228 } 228 }
229 229
230 void popLayoutState() 230 void popLayoutState()
231 { 231 {
232 LayoutState* state = m_layoutState; 232 LayoutState* state = m_layoutState;
233 m_layoutState = state->m_next; 233 m_layoutState = state->m_next;
234 state->destroy(renderArena()); 234 state->destroy();
235 } 235 }
236 236
237 // Suspends the LayoutState optimization. Used under transforms that cannot be represented by 237 // Suspends the LayoutState optimization. Used under transforms that cannot be represented by
238 // LayoutState (common in SVG) and when manipulating the render tree during layout in ways 238 // LayoutState (common in SVG) and when manipulating the render tree during layout in ways
239 // that can trigger repaint of a non-child (e.g. when a list item moves its list marker around). 239 // that can trigger repaint of a non-child (e.g. when a list item moves its list marker around).
240 // Note that even when disabled, LayoutState is still used to store layoutDe lta. 240 // Note that even when disabled, LayoutState is still used to store layoutDe lta.
241 // These functions may only be accessed by LayoutStateMaintainer or LayoutSt ateDisabler. 241 // These functions may only be accessed by LayoutStateMaintainer or LayoutSt ateDisabler.
242 void disableLayoutState() { m_layoutStateDisableCount++; } 242 void disableLayoutState() { m_layoutStateDisableCount++; }
243 void enableLayoutState() { ASSERT(m_layoutStateDisableCount > 0); m_layoutSt ateDisableCount--; } 243 void enableLayoutState() { ASSERT(m_layoutStateDisableCount > 0); m_layoutSt ateDisableCount--; }
244 244
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 RenderObject::FlowThreadState m_flowThreadState; 399 RenderObject::FlowThreadState m_flowThreadState;
400 bool m_fragmenting; 400 bool m_fragmenting;
401 #ifndef NDEBUG 401 #ifndef NDEBUG
402 LayoutState* m_layoutState; 402 LayoutState* m_layoutState;
403 #endif 403 #endif
404 }; 404 };
405 405
406 } // namespace WebCore 406 } // namespace WebCore
407 407
408 #endif // RenderView_h 408 #endif // RenderView_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698