Index: Source/core/rendering/RenderObject.h |
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h |
index bbd53eedf4cffd918e1f61829cb4e775fa519cde..1d692cd25b91cdfed4c061dc6fac5da5c44111d8 100644 |
--- a/Source/core/rendering/RenderObject.h |
+++ b/Source/core/rendering/RenderObject.h |
@@ -1102,6 +1102,8 @@ private: |
#endif |
const char* invalidationReasonToString(InvalidationReason) const; |
+ static bool isAllowedToModifyRenderTreeStructure(Document&); |
+ |
RefPtr<RenderStyle> m_style; |
Node* m_node; |
@@ -1275,6 +1277,20 @@ private: |
LayoutPoint m_previousPositionFromRepaintContainer; |
}; |
+enum ModifyRenderTreeStructureMode { |
+ ModifyRenderTreeStructureAnyState, |
+ ModifyRenderTreeStructureOnlyInRecalcStyle |
+}; |
+ |
+// FIXME: remove this once the render object lifecycle ASSERTS are no longer hit. |
+class DeprecatedDisableModifyRenderTreeStructureAsserts { |
+ WTF_MAKE_NONCOPYABLE(DeprecatedDisableModifyRenderTreeStructureAsserts); |
+public: |
+ DeprecatedDisableModifyRenderTreeStructureAsserts(); |
+private: |
+ TemporaryChange<ModifyRenderTreeStructureMode> m_disabler; |
+}; |
+ |
// Allow equality comparisons of RenderObject's by reference or pointer, interchangeably. |
inline bool operator==(const RenderObject& a, const RenderObject& b) { return &a == &b; } |
inline bool operator==(const RenderObject& a, const RenderObject* b) { return &a == b; } |