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

Side by Side Diff: Source/core/rendering/RenderBox.cpp

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 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com)
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com)
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. 7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 1755 matching lines...) Expand 10 before | Expand all | Expand 10 after
1766 offset += toRenderInline(o)->offsetForInFlowPositionedInline(this); 1766 offset += toRenderInline(o)->offsetForInFlowPositionedInline(this);
1767 1767
1768 if (offsetDependsOnPoint) 1768 if (offsetDependsOnPoint)
1769 *offsetDependsOnPoint |= o->isRenderFlowThread(); 1769 *offsetDependsOnPoint |= o->isRenderFlowThread();
1770 1770
1771 return offset; 1771 return offset;
1772 } 1772 }
1773 1773
1774 InlineBox* RenderBox::createInlineBox() 1774 InlineBox* RenderBox::createInlineBox()
1775 { 1775 {
1776 return new (renderArena()) InlineBox(this); 1776 return new InlineBox(this);
1777 } 1777 }
1778 1778
1779 void RenderBox::dirtyLineBoxes(bool fullLayout) 1779 void RenderBox::dirtyLineBoxes(bool fullLayout)
1780 { 1780 {
1781 if (m_inlineBoxWrapper) { 1781 if (m_inlineBoxWrapper) {
1782 if (fullLayout) { 1782 if (fullLayout) {
1783 m_inlineBoxWrapper->destroy(renderArena()); 1783 m_inlineBoxWrapper->destroy();
1784 m_inlineBoxWrapper = 0; 1784 m_inlineBoxWrapper = 0;
1785 } else 1785 } else
1786 m_inlineBoxWrapper->dirtyLineBoxes(); 1786 m_inlineBoxWrapper->dirtyLineBoxes();
1787 } 1787 }
1788 } 1788 }
1789 1789
1790 void RenderBox::positionLineBox(InlineBox* box) 1790 void RenderBox::positionLineBox(InlineBox* box)
1791 { 1791 {
1792 if (isOutOfFlowPositioned()) { 1792 if (isOutOfFlowPositioned()) {
1793 // Cache the x position only if we were an INLINE type originally. 1793 // Cache the x position only if we were an INLINE type originally.
(...skipping 11 matching lines...) Expand all
1805 // just below the line box (as though all the inlines that came befo re us got 1805 // just below the line box (as though all the inlines that came befo re us got
1806 // wrapped in an anonymous block, which is what would have happened had we been 1806 // wrapped in an anonymous block, which is what would have happened had we been
1807 // in flow). This value was cached in the y() of the box. 1807 // in flow). This value was cached in the y() of the box.
1808 layer()->setStaticBlockPosition(box->logicalTop()); 1808 layer()->setStaticBlockPosition(box->logicalTop());
1809 if (style()->hasStaticBlockPosition(box->isHorizontal())) 1809 if (style()->hasStaticBlockPosition(box->isHorizontal()))
1810 setChildNeedsLayout(true, MarkOnlyThis); // Just go ahead and ma rk the positioned object as needing layout, so it will update its position prope rly. 1810 setChildNeedsLayout(true, MarkOnlyThis); // Just go ahead and ma rk the positioned object as needing layout, so it will update its position prope rly.
1811 } 1811 }
1812 1812
1813 // Nuke the box. 1813 // Nuke the box.
1814 box->remove(); 1814 box->remove();
1815 box->destroy(renderArena()); 1815 box->destroy();
1816 } else if (isReplaced()) { 1816 } else if (isReplaced()) {
1817 setLocation(roundedLayoutPoint(box->topLeft())); 1817 setLocation(roundedLayoutPoint(box->topLeft()));
1818 setInlineBoxWrapper(box); 1818 setInlineBoxWrapper(box);
1819 } 1819 }
1820 } 1820 }
1821 1821
1822 void RenderBox::deleteLineBoxWrapper() 1822 void RenderBox::deleteLineBoxWrapper()
1823 { 1823 {
1824 if (m_inlineBoxWrapper) { 1824 if (m_inlineBoxWrapper) {
1825 if (!documentBeingDestroyed()) 1825 if (!documentBeingDestroyed())
1826 m_inlineBoxWrapper->remove(); 1826 m_inlineBoxWrapper->remove();
1827 m_inlineBoxWrapper->destroy(renderArena()); 1827 m_inlineBoxWrapper->destroy();
1828 m_inlineBoxWrapper = 0; 1828 m_inlineBoxWrapper = 0;
1829 } 1829 }
1830 } 1830 }
1831 1831
1832 LayoutRect RenderBox::clippedOverflowRectForRepaint(const RenderLayerModelObject * repaintContainer) const 1832 LayoutRect RenderBox::clippedOverflowRectForRepaint(const RenderLayerModelObject * repaintContainer) const
1833 { 1833 {
1834 if (style()->visibility() != VISIBLE && !enclosingLayer()->hasVisibleContent ()) 1834 if (style()->visibility() != VISIBLE && !enclosingLayer()->hasVisibleContent ())
1835 return LayoutRect(); 1835 return LayoutRect();
1836 1836
1837 LayoutRect r = visualOverflowRect(); 1837 LayoutRect r = visualOverflowRect();
(...skipping 2723 matching lines...) Expand 10 before | Expand all | Expand 10 after
4561 4561
4562 void RenderBox::reportStaticMembersMemoryUsage(MemoryInstrumentation* memoryInst rumentation) 4562 void RenderBox::reportStaticMembersMemoryUsage(MemoryInstrumentation* memoryInst rumentation)
4563 { 4563 {
4564 memoryInstrumentation->addRootObject(gOverrideHeightMap, WebCoreMemoryTypes: :RenderingStructures); 4564 memoryInstrumentation->addRootObject(gOverrideHeightMap, WebCoreMemoryTypes: :RenderingStructures);
4565 memoryInstrumentation->addRootObject(gOverrideWidthMap, WebCoreMemoryTypes:: RenderingStructures); 4565 memoryInstrumentation->addRootObject(gOverrideWidthMap, WebCoreMemoryTypes:: RenderingStructures);
4566 memoryInstrumentation->addRootObject(gOverrideContainingBlockLogicalHeightMa p, WebCoreMemoryTypes::RenderingStructures); 4566 memoryInstrumentation->addRootObject(gOverrideContainingBlockLogicalHeightMa p, WebCoreMemoryTypes::RenderingStructures);
4567 memoryInstrumentation->addRootObject(gOverrideContainingBlockLogicalWidthMap , WebCoreMemoryTypes::RenderingStructures); 4567 memoryInstrumentation->addRootObject(gOverrideContainingBlockLogicalWidthMap , WebCoreMemoryTypes::RenderingStructures);
4568 } 4568 }
4569 4569
4570 } // namespace WebCore 4570 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698