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

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

Issue 926193003: Move rendering/RenderBox to layout/LayoutBox. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 10 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
« no previous file with comments | « Source/core/plugins/PluginOcclusionSupport.cpp ('k') | Source/core/rendering/RenderBlock.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r ights reserved. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r ights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
11 * 11 *
12 * This library is distributed in the hope that it will be useful, 12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Library General Public License for more details. 15 * Library General Public License for more details.
16 * 16 *
17 * You should have received a copy of the GNU Library General Public License 17 * You should have received a copy of the GNU Library General Public License
18 * along with this library; see the file COPYING.LIB. If not, write to 18 * along with this library; see the file COPYING.LIB. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA. 20 * Boston, MA 02110-1301, USA.
21 */ 21 */
22 22
23 #ifndef RenderBlock_h 23 #ifndef RenderBlock_h
24 #define RenderBlock_h 24 #define RenderBlock_h
25 25
26 #include "core/layout/ColumnInfo.h" 26 #include "core/layout/ColumnInfo.h"
27 #include "core/layout/FloatingObjects.h" 27 #include "core/layout/FloatingObjects.h"
28 #include "core/layout/GapRects.h" 28 #include "core/layout/GapRects.h"
29 #include "core/layout/LayoutBox.h"
29 #include "core/layout/line/RootInlineBox.h" 30 #include "core/layout/line/RootInlineBox.h"
30 #include "core/layout/style/ShapeValue.h" 31 #include "core/layout/style/ShapeValue.h"
31 #include "core/rendering/RenderBox.h"
32 #include "core/rendering/RenderLineBoxList.h" 32 #include "core/rendering/RenderLineBoxList.h"
33 #include "platform/text/TextBreakIterator.h" 33 #include "platform/text/TextBreakIterator.h"
34 #include "platform/text/TextRun.h" 34 #include "platform/text/TextRun.h"
35 #include "wtf/ListHashSet.h" 35 #include "wtf/ListHashSet.h"
36 #include "wtf/OwnPtr.h" 36 #include "wtf/OwnPtr.h"
37 37
38 namespace blink { 38 namespace blink {
39 39
40 class LineLayoutState; 40 class LineLayoutState;
41 struct PaintInfo; 41 struct PaintInfo;
42 class RenderInline; 42 class RenderInline;
43 class WordMeasurement; 43 class WordMeasurement;
44 44
45 typedef WTF::ListHashSet<RenderBox*, 16> TrackedRendererListHashSet; 45 typedef WTF::ListHashSet<LayoutBox*, 16> TrackedRendererListHashSet;
46 typedef WTF::HashMap<const RenderBlock*, OwnPtr<TrackedRendererListHashSet> > Tr ackedDescendantsMap; 46 typedef WTF::HashMap<const RenderBlock*, OwnPtr<TrackedRendererListHashSet>> Tra ckedDescendantsMap;
47 typedef WTF::HashMap<const RenderBox*, OwnPtr<HashSet<RenderBlock*> > > TrackedC ontainerMap; 47 typedef WTF::HashMap<const LayoutBox*, OwnPtr<HashSet<RenderBlock*>>> TrackedCon tainerMap;
48 typedef Vector<WordMeasurement, 64> WordMeasurements; 48 typedef Vector<WordMeasurement, 64> WordMeasurements;
49 49
50 enum ContainingBlockState { NewContainingBlock, SameContainingBlock }; 50 enum ContainingBlockState { NewContainingBlock, SameContainingBlock };
51 51
52 typedef WTF::HashMap<RenderBlock*, OwnPtr<ListHashSet<RenderInline*> > > Continu ationOutlineTableMap; 52 typedef WTF::HashMap<RenderBlock*, OwnPtr<ListHashSet<RenderInline*>>> Continuat ionOutlineTableMap;
53 53
54 ContinuationOutlineTableMap* continuationOutlineTable(); 54 ContinuationOutlineTableMap* continuationOutlineTable();
55 55
56 class RenderBlock : public RenderBox { 56 class RenderBlock : public LayoutBox {
57 public: 57 public:
58 friend class LineLayoutState; 58 friend class LineLayoutState;
59 59
60 protected: 60 protected:
61 explicit RenderBlock(ContainerNode*); 61 explicit RenderBlock(ContainerNode*);
62 virtual ~RenderBlock(); 62 virtual ~RenderBlock();
63 63
64 public: 64 public:
65 LayoutObject* firstChild() const { ASSERT(children() == virtualChildren()); return children()->firstChild(); } 65 LayoutObject* firstChild() const { ASSERT(children() == virtualChildren()); return children()->firstChild(); }
66 LayoutObject* lastChild() const { ASSERT(children() == virtualChildren()); r eturn children()->lastChild(); } 66 LayoutObject* lastChild() const { ASSERT(children() == virtualChildren()); r eturn children()->lastChild(); }
(...skipping 24 matching lines...) Expand all
91 91
92 public: 92 public:
93 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow 93 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow
94 virtual void deleteLineBoxTree(); 94 virtual void deleteLineBoxTree();
95 95
96 virtual void addChild(LayoutObject* newChild, LayoutObject* beforeChild = 0) override; 96 virtual void addChild(LayoutObject* newChild, LayoutObject* beforeChild = 0) override;
97 virtual void removeChild(LayoutObject*) override; 97 virtual void removeChild(LayoutObject*) override;
98 98
99 virtual void layoutBlock(bool relayoutChildren); 99 virtual void layoutBlock(bool relayoutChildren);
100 100
101 void insertPositionedObject(RenderBox*); 101 void insertPositionedObject(LayoutBox*);
102 static void removePositionedObject(RenderBox*); 102 static void removePositionedObject(LayoutBox*);
103 void removePositionedObjects(RenderBlock*, ContainingBlockState = SameContai ningBlock); 103 void removePositionedObjects(RenderBlock*, ContainingBlockState = SameContai ningBlock);
104 104
105 TrackedRendererListHashSet* positionedObjects() const; 105 TrackedRendererListHashSet* positionedObjects() const;
106 bool hasPositionedObjects() const 106 bool hasPositionedObjects() const
107 { 107 {
108 TrackedRendererListHashSet* objects = positionedObjects(); 108 TrackedRendererListHashSet* objects = positionedObjects();
109 return objects && !objects->isEmpty(); 109 return objects && !objects->isEmpty();
110 } 110 }
111 111
112 void addPercentHeightDescendant(RenderBox*); 112 void addPercentHeightDescendant(LayoutBox*);
113 static void removePercentHeightDescendant(RenderBox*); 113 static void removePercentHeightDescendant(LayoutBox*);
114 static bool hasPercentHeightContainerMap(); 114 static bool hasPercentHeightContainerMap();
115 static bool hasPercentHeightDescendant(RenderBox*); 115 static bool hasPercentHeightDescendant(LayoutBox*);
116 static void clearPercentHeightDescendantsFrom(RenderBox*); 116 static void clearPercentHeightDescendantsFrom(LayoutBox*);
117 static void removePercentHeightDescendantIfNeeded(RenderBox*); 117 static void removePercentHeightDescendantIfNeeded(LayoutBox*);
118 118
119 TrackedRendererListHashSet* percentHeightDescendants() const; 119 TrackedRendererListHashSet* percentHeightDescendants() const;
120 bool hasPercentHeightDescendants() const 120 bool hasPercentHeightDescendants() const
121 { 121 {
122 TrackedRendererListHashSet* descendants = percentHeightDescendants(); 122 TrackedRendererListHashSet* descendants = percentHeightDescendants();
123 return descendants && !descendants->isEmpty(); 123 return descendants && !descendants->isEmpty();
124 } 124 }
125 125
126 void notifyScrollbarThicknessChanged() { m_widthAvailableToChildrenChanged = true; } 126 void notifyScrollbarThicknessChanged() { m_widthAvailableToChildrenChanged = true; }
127 127
128 void setHasMarkupTruncation(bool b) { m_hasMarkupTruncation = b; } 128 void setHasMarkupTruncation(bool b) { m_hasMarkupTruncation = b; }
129 bool hasMarkupTruncation() const { return m_hasMarkupTruncation; } 129 bool hasMarkupTruncation() const { return m_hasMarkupTruncation; }
130 130
131 void setHasMarginBeforeQuirk(bool b) { m_hasMarginBeforeQuirk = b; } 131 void setHasMarginBeforeQuirk(bool b) { m_hasMarginBeforeQuirk = b; }
132 void setHasMarginAfterQuirk(bool b) { m_hasMarginAfterQuirk = b; } 132 void setHasMarginAfterQuirk(bool b) { m_hasMarginAfterQuirk = b; }
133 133
134 bool hasMarginBeforeQuirk() const { return m_hasMarginBeforeQuirk; } 134 bool hasMarginBeforeQuirk() const { return m_hasMarginBeforeQuirk; }
135 bool hasMarginAfterQuirk() const { return m_hasMarginAfterQuirk; } 135 bool hasMarginAfterQuirk() const { return m_hasMarginAfterQuirk; }
136 136
137 bool hasMarginBeforeQuirk(const RenderBox* child) const; 137 bool hasMarginBeforeQuirk(const LayoutBox* child) const;
138 bool hasMarginAfterQuirk(const RenderBox* child) const; 138 bool hasMarginAfterQuirk(const LayoutBox* child) const;
139 139
140 void markPositionedObjectsForLayout(); 140 void markPositionedObjectsForLayout();
141 // FIXME: Do we really need this to be virtual? It's just so we can call thi s on 141 // FIXME: Do we really need this to be virtual? It's just so we can call thi s on
142 // RenderBoxes without needed to check whether they're RenderBlocks first. 142 // LayoutBoxes without needed to check whether they're RenderBlocks first.
143 virtual void markForPaginationRelayoutIfNeeded(SubtreeLayoutScope&) override final; 143 virtual void markForPaginationRelayoutIfNeeded(SubtreeLayoutScope&) override final;
144 144
145 LayoutUnit textIndentOffset() const; 145 LayoutUnit textIndentOffset() const;
146 146
147 virtual PositionWithAffinity positionForPoint(const LayoutPoint&) override; 147 virtual PositionWithAffinity positionForPoint(const LayoutPoint&) override;
148 148
149 // Block flows subclass availableWidth to handle multi column layout (shrink ing the width available to children when laying out.) 149 // Block flows subclass availableWidth to handle multi column layout (shrink ing the width available to children when laying out.)
150 virtual LayoutUnit availableLogicalWidth() const override final; 150 virtual LayoutUnit availableLogicalWidth() const override final;
151 151
152 LayoutPoint flipForWritingModeIncludingColumns(const LayoutPoint&) const; 152 LayoutPoint flipForWritingModeIncludingColumns(const LayoutPoint&) const;
(...skipping 28 matching lines...) Expand all
181 using LayoutBoxModelObject::continuation; 181 using LayoutBoxModelObject::continuation;
182 using LayoutBoxModelObject::setContinuation; 182 using LayoutBoxModelObject::setContinuation;
183 183
184 static RenderBlock* createAnonymousWithParentRendererAndDisplay(const Layout Object*, EDisplay = BLOCK); 184 static RenderBlock* createAnonymousWithParentRendererAndDisplay(const Layout Object*, EDisplay = BLOCK);
185 static RenderBlockFlow* createAnonymousColumnsWithParentRenderer(const Layou tObject*); 185 static RenderBlockFlow* createAnonymousColumnsWithParentRenderer(const Layou tObject*);
186 static RenderBlockFlow* createAnonymousColumnSpanWithParentRenderer(const La youtObject*); 186 static RenderBlockFlow* createAnonymousColumnSpanWithParentRenderer(const La youtObject*);
187 RenderBlock* createAnonymousBlock(EDisplay display = BLOCK) const { return c reateAnonymousWithParentRendererAndDisplay(this, display); } 187 RenderBlock* createAnonymousBlock(EDisplay display = BLOCK) const { return c reateAnonymousWithParentRendererAndDisplay(this, display); }
188 RenderBlockFlow* createAnonymousColumnsBlock() const { return createAnonymou sColumnsWithParentRenderer(this); } 188 RenderBlockFlow* createAnonymousColumnsBlock() const { return createAnonymou sColumnsWithParentRenderer(this); }
189 RenderBlockFlow* createAnonymousColumnSpanBlock() const { return createAnony mousColumnSpanWithParentRenderer(this); } 189 RenderBlockFlow* createAnonymousColumnSpanBlock() const { return createAnony mousColumnSpanWithParentRenderer(this); }
190 190
191 virtual RenderBox* createAnonymousBoxWithSameTypeAs(const LayoutObject* pare nt) const override; 191 virtual LayoutBox* createAnonymousBoxWithSameTypeAs(const LayoutObject* pare nt) const override;
192 192
193 ColumnInfo* columnInfo() const; 193 ColumnInfo* columnInfo() const;
194 int columnGap() const; 194 int columnGap() const;
195 195
196 // These two functions take the ColumnInfo* to avoid repeated lookups of the info in the global HashMap. 196 // These two functions take the ColumnInfo* to avoid repeated lookups of the info in the global HashMap.
197 unsigned columnCount(ColumnInfo*) const; 197 unsigned columnCount(ColumnInfo*) const;
198 LayoutRect columnRectAt(ColumnInfo*, unsigned) const; 198 LayoutRect columnRectAt(ColumnInfo*, unsigned) const;
199 199
200 // The page logical offset is the object's offset from the top of the page i n the page progression 200 // The page logical offset is the object's offset from the top of the page i n the page progression
201 // direction (so an x-offset in vertical text and a y-offset for horizontal text). 201 // direction (so an x-offset in vertical text and a y-offset for horizontal text).
202 LayoutUnit pageLogicalOffset() const { return m_pageLogicalOffset; } 202 LayoutUnit pageLogicalOffset() const { return m_pageLogicalOffset; }
203 void setPageLogicalOffset(LayoutUnit offset) { m_pageLogicalOffset = offset; } 203 void setPageLogicalOffset(LayoutUnit offset) { m_pageLogicalOffset = offset; }
204 204
205 // Accessors for logical width/height and margins in the containing block's block-flow direction. 205 // Accessors for logical width/height and margins in the containing block's block-flow direction.
206 LayoutUnit logicalWidthForChild(const RenderBox& child) const { return isHor izontalWritingMode() ? child.size().width() : child.size().height(); } 206 LayoutUnit logicalWidthForChild(const LayoutBox& child) const { return isHor izontalWritingMode() ? child.size().width() : child.size().height(); }
207 LayoutUnit logicalHeightForChild(const RenderBox& child) const { return isHo rizontalWritingMode() ? child.size().height() : child.size().width(); } 207 LayoutUnit logicalHeightForChild(const LayoutBox& child) const { return isHo rizontalWritingMode() ? child.size().height() : child.size().width(); }
208 LayoutSize logicalSizeForChild(const RenderBox& child) const { return isHori zontalWritingMode() ? child.size() : child.size().transposedSize(); } 208 LayoutSize logicalSizeForChild(const LayoutBox& child) const { return isHori zontalWritingMode() ? child.size() : child.size().transposedSize(); }
209 LayoutUnit logicalTopForChild(const RenderBox& child) const { return isHoriz ontalWritingMode() ? child.location().y() : child.location().x(); } 209 LayoutUnit logicalTopForChild(const LayoutBox& child) const { return isHoriz ontalWritingMode() ? child.location().y() : child.location().x(); }
210 LayoutUnit marginBeforeForChild(const LayoutBoxModelObject& child) const { r eturn child.marginBefore(style()); } 210 LayoutUnit marginBeforeForChild(const LayoutBoxModelObject& child) const { r eturn child.marginBefore(style()); }
211 LayoutUnit marginAfterForChild(const LayoutBoxModelObject& child) const { re turn child.marginAfter(style()); } 211 LayoutUnit marginAfterForChild(const LayoutBoxModelObject& child) const { re turn child.marginAfter(style()); }
212 LayoutUnit marginStartForChild(const LayoutBoxModelObject& child) const { re turn child.marginStart(style()); } 212 LayoutUnit marginStartForChild(const LayoutBoxModelObject& child) const { re turn child.marginStart(style()); }
213 LayoutUnit marginEndForChild(const LayoutBoxModelObject& child) const { retu rn child.marginEnd(style()); } 213 LayoutUnit marginEndForChild(const LayoutBoxModelObject& child) const { retu rn child.marginEnd(style()); }
214 void setMarginStartForChild(RenderBox& child, LayoutUnit value) const { chil d.setMarginStart(value, style()); } 214 void setMarginStartForChild(LayoutBox& child, LayoutUnit value) const { chil d.setMarginStart(value, style()); }
215 void setMarginEndForChild(RenderBox& child, LayoutUnit value) const { child. setMarginEnd(value, style()); } 215 void setMarginEndForChild(LayoutBox& child, LayoutUnit value) const { child. setMarginEnd(value, style()); }
216 void setMarginBeforeForChild(RenderBox& child, LayoutUnit value) const { chi ld.setMarginBefore(value, style()); } 216 void setMarginBeforeForChild(LayoutBox& child, LayoutUnit value) const { chi ld.setMarginBefore(value, style()); }
217 void setMarginAfterForChild(RenderBox& child, LayoutUnit value) const { chil d.setMarginAfter(value, style()); } 217 void setMarginAfterForChild(LayoutBox& child, LayoutUnit value) const { chil d.setMarginAfter(value, style()); }
218 LayoutUnit collapsedMarginBeforeForChild(const RenderBox& child) const; 218 LayoutUnit collapsedMarginBeforeForChild(const LayoutBox& child) const;
219 LayoutUnit collapsedMarginAfterForChild(const RenderBox& child) const; 219 LayoutUnit collapsedMarginAfterForChild(const LayoutBox& child) const;
220 220
221 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) override; 221 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) override;
222 222
223 virtual void scrollbarsChanged(bool /*horizontalScrollbarChanged*/, bool /*v erticalScrollbarChanged*/) { } 223 virtual void scrollbarsChanged(bool /*horizontalScrollbarChanged*/, bool /*v erticalScrollbarChanged*/) { }
224 224
225 LayoutUnit availableLogicalWidthForContent() const { return max<LayoutUnit>( 0, logicalRightOffsetForContent() - logicalLeftOffsetForContent()); } 225 LayoutUnit availableLogicalWidthForContent() const { return max<LayoutUnit>( 0, logicalRightOffsetForContent() - logicalLeftOffsetForContent()); }
226 LayoutUnit logicalLeftOffsetForContent() const { return isHorizontalWritingM ode() ? borderLeft() + paddingLeft() : borderTop() + paddingTop(); } 226 LayoutUnit logicalLeftOffsetForContent() const { return isHorizontalWritingM ode() ? borderLeft() + paddingLeft() : borderTop() + paddingTop(); }
227 LayoutUnit logicalRightOffsetForContent() const { return logicalLeftOffsetFo rContent() + availableLogicalWidth(); } 227 LayoutUnit logicalRightOffsetForContent() const { return logicalLeftOffsetFo rContent() + availableLogicalWidth(); }
228 LayoutUnit startOffsetForContent() const { return style()->isLeftToRightDire ction() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetFor Content(); } 228 LayoutUnit startOffsetForContent() const { return style()->isLeftToRightDire ction() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetFor Content(); }
229 LayoutUnit endOffsetForContent() const { return !style()->isLeftToRightDirec tion() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetForC ontent(); } 229 LayoutUnit endOffsetForContent() const { return !style()->isLeftToRightDirec tion() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetForC ontent(); }
(...skipping 22 matching lines...) Expand all
252 252
253 enum PositionedLayoutBehavior { 253 enum PositionedLayoutBehavior {
254 DefaultLayout, 254 DefaultLayout,
255 LayoutOnlyFixedPositionedObjects, 255 LayoutOnlyFixedPositionedObjects,
256 ForcedLayoutAfterContainingBlockMoved 256 ForcedLayoutAfterContainingBlockMoved
257 }; 257 };
258 258
259 void layoutPositionedObjects(bool relayoutChildren, PositionedLayoutBehavior = DefaultLayout); 259 void layoutPositionedObjects(bool relayoutChildren, PositionedLayoutBehavior = DefaultLayout);
260 void markFixedPositionObjectForLayoutIfNeeded(LayoutObject* child, SubtreeLa youtScope&); 260 void markFixedPositionObjectForLayoutIfNeeded(LayoutObject* child, SubtreeLa youtScope&);
261 261
262 LayoutUnit marginIntrinsicLogicalWidthForChild(RenderBox& child) const; 262 LayoutUnit marginIntrinsicLogicalWidthForChild(LayoutBox& child) const;
263 263
264 int beforeMarginInLineDirection(LineDirectionMode) const; 264 int beforeMarginInLineDirection(LineDirectionMode) const;
265 265
266 virtual void paint(const PaintInfo&, const LayoutPoint&) override; 266 virtual void paint(const PaintInfo&, const LayoutPoint&) override;
267 public: 267 public:
268 virtual void paintObject(const PaintInfo&, const LayoutPoint&) override; 268 virtual void paintObject(const PaintInfo&, const LayoutPoint&) override;
269 virtual void paintChildren(const PaintInfo&, const LayoutPoint&); 269 virtual void paintChildren(const PaintInfo&, const LayoutPoint&);
270 270
271 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow 271 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow
272 virtual void paintFloats(const PaintInfo&, const LayoutPoint&, bool) { } 272 virtual void paintFloats(const PaintInfo&, const LayoutPoint&, bool) { }
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
310 protected: 310 protected:
311 virtual void addOverflowFromChildren(); 311 virtual void addOverflowFromChildren();
312 void addOverflowFromPositionedObjects(); 312 void addOverflowFromPositionedObjects();
313 void addOverflowFromBlockChildren(); 313 void addOverflowFromBlockChildren();
314 void addVisualOverflowFromTheme(); 314 void addVisualOverflowFromTheme();
315 315
316 virtual void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& addit ionalOffset) const override; 316 virtual void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& addit ionalOffset) const override;
317 317
318 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const override; 318 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const override;
319 319
320 void updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, RenderBox& ); 320 void updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, LayoutBox& );
321 321
322 virtual bool isInlineBlockOrInlineTable() const override final { return isIn line() && isReplaced(); } 322 virtual bool isInlineBlockOrInlineTable() const override final { return isIn line() && isReplaced(); }
323 323
324 virtual void invalidatePaintOfSubtreesIfNeeded(const PaintInvalidationState& childPaintInvalidationState) override; 324 virtual void invalidatePaintOfSubtreesIfNeeded(const PaintInvalidationState& childPaintInvalidationState) override;
325 325
326 private: 326 private:
327 virtual LayoutObjectChildList* virtualChildren() override final { return chi ldren(); } 327 virtual LayoutObjectChildList* virtualChildren() override final { return chi ldren(); }
328 virtual const LayoutObjectChildList* virtualChildren() const override final { return children(); } 328 virtual const LayoutObjectChildList* virtualChildren() const override final { return children(); }
329 329
330 virtual const char* renderName() const override; 330 virtual const char* renderName() const override;
(...skipping 10 matching lines...) Expand all
341 void addChildToContinuation(LayoutObject* newChild, LayoutObject* beforeChil d); 341 void addChildToContinuation(LayoutObject* newChild, LayoutObject* beforeChil d);
342 virtual void addChildIgnoringContinuation(LayoutObject* newChild, LayoutObje ct* beforeChild) override; 342 virtual void addChildIgnoringContinuation(LayoutObject* newChild, LayoutObje ct* beforeChild) override;
343 void addChildToAnonymousColumnBlocks(LayoutObject* newChild, LayoutObject* b eforeChild); 343 void addChildToAnonymousColumnBlocks(LayoutObject* newChild, LayoutObject* b eforeChild);
344 344
345 void addChildIgnoringAnonymousColumnBlocks(LayoutObject* newChild, LayoutObj ect* beforeChild = 0); 345 void addChildIgnoringAnonymousColumnBlocks(LayoutObject* newChild, LayoutObj ect* beforeChild = 0);
346 346
347 virtual bool isSelfCollapsingBlock() const override; 347 virtual bool isSelfCollapsingBlock() const override;
348 348
349 void removeAnonymousWrappersIfRequired(); 349 void removeAnonymousWrappersIfRequired();
350 350
351 void insertIntoTrackedRendererMaps(RenderBox* descendant, TrackedDescendants Map*&, TrackedContainerMap*&); 351 void insertIntoTrackedRendererMaps(LayoutBox* descendant, TrackedDescendants Map*&, TrackedContainerMap*&);
352 static void removeFromTrackedRendererMaps(RenderBox* descendant, TrackedDesc endantsMap*&, TrackedContainerMap*&); 352 static void removeFromTrackedRendererMaps(LayoutBox* descendant, TrackedDesc endantsMap*&, TrackedContainerMap*&);
353 353
354 Node* nodeForHitTest() const; 354 Node* nodeForHitTest() const;
355 355
356 bool tryLayoutDoingPositionedMovementOnly(); 356 bool tryLayoutDoingPositionedMovementOnly();
357 357
358 virtual bool avoidsFloats() const override { return true; } 358 virtual bool avoidsFloats() const override { return true; }
359 359
360 bool hitTestColumns(const HitTestRequest&, HitTestResult&, const HitTestLoca tion& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction); 360 bool hitTestColumns(const HitTestRequest&, HitTestResult&, const HitTestLoca tion& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
361 bool hitTestContents(const HitTestRequest&, HitTestResult&, const HitTestLoc ation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction) ; 361 bool hitTestContents(const HitTestRequest&, HitTestResult&, const HitTestLoc ation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction) ;
362 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow 362 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend erBlockFlow
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 // FIXME: This is temporary as we move code that accesses block flow 473 // FIXME: This is temporary as we move code that accesses block flow
474 // member variables out of RenderBlock and into RenderBlockFlow. 474 // member variables out of RenderBlock and into RenderBlockFlow.
475 friend class RenderBlockFlow; 475 friend class RenderBlockFlow;
476 }; 476 };
477 477
478 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(RenderBlock, isRenderBlock()); 478 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(RenderBlock, isRenderBlock());
479 479
480 } // namespace blink 480 } // namespace blink
481 481
482 #endif // RenderBlock_h 482 #endif // RenderBlock_h
OLDNEW
« no previous file with comments | « Source/core/plugins/PluginOcclusionSupport.cpp ('k') | Source/core/rendering/RenderBlock.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698