summaryrefslogtreecommitdiff
path: root/layout/style/nsRuleProcessorData.h
diff options
context:
space:
mode:
Diffstat (limited to 'layout/style/nsRuleProcessorData.h')
-rw-r--r--layout/style/nsRuleProcessorData.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/layout/style/nsRuleProcessorData.h b/layout/style/nsRuleProcessorData.h
index 938c2f9d35..07c885994f 100644
--- a/layout/style/nsRuleProcessorData.h
+++ b/layout/style/nsRuleProcessorData.h
@@ -371,6 +371,9 @@ struct MOZ_STACK_CLASS TreeMatchContext {
// match.
bool mOnlyMatchHostPseudo;
+ // Restrict matching to selectors that contain a :slotted() pseudo-class.
+ bool mRestrictToSlottedPseudo;
+
// Root of scoped stylesheet (set and unset by the supplier of the
// scoped stylesheet).
nsIContent* mScopedRoot;
@@ -403,6 +406,9 @@ struct MOZ_STACK_CLASS TreeMatchContext {
// for an HTML5 scoped style sheet.
bool mForScopedStyle;
+ // Whether we're currently in the topmost scope for shadow DOM.
+ bool mIsTopmostScope;
+
enum MatchVisited {
eNeverMatchVisited,
eMatchVisitedDefault
@@ -429,6 +435,7 @@ struct MOZ_STACK_CLASS TreeMatchContext {
, mVisitedHandling(aVisitedHandling)
, mDocument(aDocument)
, mOnlyMatchHostPseudo(false)
+ , mRestrictToSlottedPseudo(false)
, mScopedRoot(nullptr)
, mIsHTMLDocument(aDocument->IsHTMLDocument())
, mCompatMode(aDocument->GetCompatibilityMode())
@@ -436,6 +443,7 @@ struct MOZ_STACK_CLASS TreeMatchContext {
, mSkippingParentDisplayBasedStyleFixup(false)
, mForScopedStyle(false)
, mCurrentStyleScope(nullptr)
+ , mIsTopmostScope(false)
{
if (aMatchVisited != eNeverMatchVisited) {
nsILoadContext* loadContext = mDocument->GetLoadContext();