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

Unified Diff: third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp

Issue 1568303002: Renamed check for requiring ShadowPseudo combinator. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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
« no previous file with comments | « third_party/WebKit/Source/core/css/parser/CSSParserSelector.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp
diff --git a/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp b/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp
index bfd0f9fab4f5a90fbc5758c04248954b227fa73a..e57f99f54877dc9b67405c0bbb656190efdcd26a 100644
--- a/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp
+++ b/third_party/WebKit/Source/core/css/parser/CSSSelectorParser.cpp
@@ -563,7 +563,7 @@ const AtomicString& CSSSelectorParser::determineNamespace(const AtomicString& pr
void CSSSelectorParser::prependTypeSelectorIfNeeded(const AtomicString& namespacePrefix, const AtomicString& elementName, CSSParserSelector* compoundSelector)
{
- if (elementName.isNull() && defaultNamespace() == starAtom && !compoundSelector->crossesTreeScopes())
+ if (elementName.isNull() && defaultNamespace() == starAtom && !compoundSelector->needsImplicitShadowCrossingCombinatorForMatching())
return;
AtomicString determinedElementName = elementName.isNull() ? starAtom : elementName;
@@ -572,7 +572,7 @@ void CSSSelectorParser::prependTypeSelectorIfNeeded(const AtomicString& namespac
return;
QualifiedName tag = QualifiedName(namespacePrefix, determinedElementName, namespaceURI);
- if (compoundSelector->crossesTreeScopes())
+ if (compoundSelector->needsImplicitShadowCrossingCombinatorForMatching())
return rewriteSpecifiersWithElementNameForCustomPseudoElement(tag, compoundSelector, elementName.isNull());
if (compoundSelector->pseudoType() == CSSSelector::PseudoContent)
@@ -591,11 +591,14 @@ void CSSSelectorParser::rewriteSpecifiersWithElementNameForCustomPseudoElement(c
CSSParserSelector* history = specifiers;
while (history->tagHistory()) {
history = history->tagHistory();
- if (history->crossesTreeScopes() || history->hasShadowPseudo())
+ if (history->needsImplicitShadowCrossingCombinatorForMatching()
+ || history->hasImplicitShadowCrossingCombinatorForMatching()) {
lastShadowPseudo = history;
+ }
}
if (lastShadowPseudo->tagHistory()) {
+ ASSERT(lastShadowPseudo->hasImplicitShadowCrossingCombinatorForMatching());
if (tag != anyQName())
lastShadowPseudo->tagHistory()->prependTagSelector(tag, tagIsImplicit);
return;
@@ -662,14 +665,14 @@ PassOwnPtr<CSSParserSelector> CSSSelectorParser::addSimpleSelectorToCompound(Pas
CSSSelector::Relation relation = CSSSelector::SubSelector;
- if (simpleSelector->crossesTreeScopes() || simpleSelector->pseudoType() == CSSSelector::PseudoContent) {
- if (simpleSelector->crossesTreeScopes())
+ if (simpleSelector->needsImplicitShadowCrossingCombinatorForMatching() || simpleSelector->pseudoType() == CSSSelector::PseudoContent) {
+ if (simpleSelector->needsImplicitShadowCrossingCombinatorForMatching())
relation = CSSSelector::ShadowPseudo;
simpleSelector->appendTagHistory(relation, compoundSelector);
return simpleSelector;
}
- if (compoundSelector->crossesTreeScopes() || compoundSelector->pseudoType() == CSSSelector::PseudoContent) {
- if (compoundSelector->crossesTreeScopes())
+ if (compoundSelector->needsImplicitShadowCrossingCombinatorForMatching() || compoundSelector->pseudoType() == CSSSelector::PseudoContent) {
+ if (compoundSelector->needsImplicitShadowCrossingCombinatorForMatching())
relation = CSSSelector::ShadowPseudo;
compoundSelector->insertTagHistory(CSSSelector::SubSelector, simpleSelector, relation);
return compoundSelector;
« no previous file with comments | « third_party/WebKit/Source/core/css/parser/CSSParserSelector.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698