| Index: Source/core/css/invalidation/DescendantInvalidationSet.h
|
| diff --git a/Source/core/css/invalidation/DescendantInvalidationSet.h b/Source/core/css/invalidation/DescendantInvalidationSet.h
|
| index 748eef3768938ab70a2fbe75cb37e81393ee5f2d..b86c93b03c63408deea9ed3facf970fa9d86776d 100644
|
| --- a/Source/core/css/invalidation/DescendantInvalidationSet.h
|
| +++ b/Source/core/css/invalidation/DescendantInvalidationSet.h
|
| @@ -64,6 +64,9 @@ public:
|
| void setWholeSubtreeInvalid();
|
| bool wholeSubtreeInvalid() const { return m_allDescendantsMightBeInvalid; }
|
|
|
| + void setTreeBoundaryCrossing() { m_treeBoundaryCrossing = true; }
|
| + bool treeBoundaryCrossing() const { return m_treeBoundaryCrossing; }
|
| +
|
| void setCustomPseudoInvalid() { m_customPseudoInvalid = true; }
|
| bool customPseudoInvalid() const { return m_customPseudoInvalid; }
|
|
|
| @@ -79,17 +82,20 @@ private:
|
| WillBeHeapHashSet<AtomicString>& ensureTagNameSet();
|
| WillBeHeapHashSet<AtomicString>& ensureAttributeSet();
|
|
|
| - // If true, all descendants might be invalidated, so a full subtree recalc is required.
|
| - bool m_allDescendantsMightBeInvalid;
|
| -
|
| - // If true, all descendants which are custom pseudo elements must be invalidated.
|
| - bool m_customPseudoInvalid;
|
| -
|
| // FIXME: optimize this if it becomes a memory issue.
|
| OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString> > m_classes;
|
| OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString> > m_ids;
|
| OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString> > m_tagNames;
|
| OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString> > m_attributes;
|
| +
|
| + // If true, all descendants might be invalidated, so a full subtree recalc is required.
|
| + unsigned m_allDescendantsMightBeInvalid : 1;
|
| +
|
| + // If true, all descendants which are custom pseudo elements must be invalidated.
|
| + unsigned m_customPseudoInvalid : 1;
|
| +
|
| + // If true, the invalidation must traverse into ShadowRoots with this set.
|
| + unsigned m_treeBoundaryCrossing : 1;
|
| };
|
|
|
| } // namespace WebCore
|
|
|