Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(889)

Unified Diff: third_party/WebKit/Source/core/css/RuleFeature.cpp

Issue 1575363006: Implement matching part of ::slotted() pseudo element (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@blink_slotted_parser
Patch Set: rebase Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/css/RuleFeature.cpp
diff --git a/third_party/WebKit/Source/core/css/RuleFeature.cpp b/third_party/WebKit/Source/core/css/RuleFeature.cpp
index c605524f3ca646f3c42dd6c144d9ad3838987f3b..59e3abdb63f4aac8d391f9187d3e84e023c9df03 100644
--- a/third_party/WebKit/Source/core/css/RuleFeature.cpp
+++ b/third_party/WebKit/Source/core/css/RuleFeature.cpp
@@ -152,6 +152,7 @@ bool supportsInvalidation(CSSSelector::PseudoType type)
case CSSSelector::PseudoShadow:
case CSSSelector::PseudoSpatialNavigationFocus:
case CSSSelector::PseudoListBox:
+ case CSSSelector::PseudoSlotted:
return true;
case CSSSelector::PseudoUnknown:
case CSSSelector::PseudoLeftPage:
@@ -173,7 +174,8 @@ bool supportsInvalidationWithSelectorList(CSSSelector::PseudoType pseudo)
|| pseudo == CSSSelector::PseudoCue
|| pseudo == CSSSelector::PseudoHost
|| pseudo == CSSSelector::PseudoHostContext
- || pseudo == CSSSelector::PseudoNot;
+ || pseudo == CSSSelector::PseudoNot
+ || pseudo == CSSSelector::PseudoSlotted;
}
#endif // ENABLE(ASSERT)
@@ -515,7 +517,7 @@ void RuleFeatureSet::addFeaturesToInvalidationSets(const CSSSelector* selector,
if (current->relation() == CSSSelector::SubSelector)
continue;
- if (current->relationIsAffectedByPseudoContent()) {
+ if (current->relationIsAffectedByPseudoContent() || current->relation() == CSSSelector::ShadowSlot) {
descendantFeatures.insertionPointCrossing = true;
descendantFeatures.contentPseudoCrossing = true;
}
« no previous file with comments | « third_party/WebKit/Source/core/css/CSSSelectorList.cpp ('k') | third_party/WebKit/Source/core/css/SelectorChecker.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698