Changeset 156639 in webkit for trunk/Source/WebCore/rendering/RenderObject.h
- Timestamp:
- Sep 30, 2013, 1:21:34 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/rendering/RenderObject.h
r156622 r156639 137 137 #endif 138 138 139 typedef WTF::HashSet<const RenderObject*> RenderObjectAncestorLineboxDirtySet;140 141 139 #ifndef NDEBUG 142 140 const int showTreeCharacterOffset = 39; … … 404 402 bool hasColumns() const { return m_bitfields.hasColumns(); } 405 403 void setHasColumns(bool b = true) { m_bitfields.setHasColumns(b); } 406 407 bool ancestorLineBoxDirty() const { return s_ancestorLineboxDirtySet && s_ancestorLineboxDirtySet->contains(this); }408 void setAncestorLineBoxDirty(bool b = true)409 {410 if (b) {411 if (!s_ancestorLineboxDirtySet)412 s_ancestorLineboxDirtySet = new RenderObjectAncestorLineboxDirtySet;413 s_ancestorLineboxDirtySet->add(this);414 setNeedsLayout(true);415 } else if (s_ancestorLineboxDirtySet) {416 s_ancestorLineboxDirtySet->remove(this);417 if (s_ancestorLineboxDirtySet->isEmpty()) {418 delete s_ancestorLineboxDirtySet;419 s_ancestorLineboxDirtySet = 0;420 }421 }422 }423 404 424 405 enum FlowThreadState { … … 703 684 VisiblePosition createVisiblePosition(const Position&); 704 685 705 virtual void dirtyLinesFromChangedChild(RenderObject*);706 707 686 // returns the containing block level element for this element. 708 687 RenderBlock* containingBlock() const; … … 982 961 RenderObject* m_previous; 983 962 RenderObject* m_next; 984 985 static RenderObjectAncestorLineboxDirtySet* s_ancestorLineboxDirtySet;986 963 987 964 #ifndef NDEBUG … … 1138 1115 } 1139 1116 1140 inline void RenderObject::setNeedsLayout(bool needsLayout, MarkingBehavior markParents)1141 {1142 bool alreadyNeededLayout = m_bitfields.needsLayout();1143 m_bitfields.setNeedsLayout(needsLayout);1144 if (needsLayout) {1145 ASSERT(!isSetNeedsLayoutForbidden());1146 if (!alreadyNeededLayout) {1147 if (markParents == MarkContainingBlockChain)1148 markContainingBlocksForLayout();1149 if (hasLayer())1150 setLayerNeedsFullRepaint();1151 }1152 } else {1153 setEverHadLayout(true);1154 setPosChildNeedsLayout(false);1155 setNeedsSimplifiedNormalFlowLayout(false);1156 setNormalChildNeedsLayout(false);1157 setNeedsPositionedMovementLayout(false);1158 setAncestorLineBoxDirty(false);1159 #ifndef NDEBUG1160 checkBlockPositionedObjectsNeedLayout();1161 #endif1162 }1163 }1164 1165 1117 inline void RenderObject::setChildNeedsLayout(bool childNeedsLayout, MarkingBehavior markParents) 1166 1118 {
Note:
See TracChangeset
for help on using the changeset viewer.