summaryrefslogtreecommitdiffstats
path: root/layout/style/ServoElementSnapshot.h
diff options
context:
space:
mode:
Diffstat (limited to 'layout/style/ServoElementSnapshot.h')
-rw-r--r--layout/style/ServoElementSnapshot.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/layout/style/ServoElementSnapshot.h b/layout/style/ServoElementSnapshot.h
index b702975c4b..5a86b4c13d 100644
--- a/layout/style/ServoElementSnapshot.h
+++ b/layout/style/ServoElementSnapshot.h
@@ -33,6 +33,7 @@ enum class ServoElementSnapshotFlags : uint8_t {
Id = 1 << 2,
MaybeClass = 1 << 3,
OtherPseudoClassState = 1 << 4,
+ CustomState = 1 << 5,
};
MOZ_MAKE_ENUM_CLASS_BITWISE_OPERATORS(ServoElementSnapshotFlags)
@@ -89,6 +90,11 @@ class ServoElementSnapshot {
void AddAttrs(const Element&, int32_t aNameSpaceID, nsAtom* aAttribute);
/**
+ * Captures the given element custom states.
+ */
+ void AddCustomStates(Element&);
+
+ /**
* Captures some other pseudo-class matching state not included in
* ElementState.
*/
@@ -155,6 +161,7 @@ class ServoElementSnapshot {
// snapshots.
nsTArray<AttrArray::InternalAttr> mAttrs;
nsTArray<RefPtr<nsAtom>> mChangedAttrNames;
+ nsTArray<RefPtr<nsAtom>> mCustomStates;
nsAttrValue mClass;
ServoStateType mState;
Flags mContains;