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

Unified Diff: sky/engine/core/css/CSSSelector.cpp

Issue 836383004: Remove all attribute selectors that are not Set or Exact. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: ojan comment. Created 5 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 | « sky/engine/core/css/CSSSelector.h ('k') | sky/engine/core/css/SelectorChecker.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/engine/core/css/CSSSelector.cpp
diff --git a/sky/engine/core/css/CSSSelector.cpp b/sky/engine/core/css/CSSSelector.cpp
index 41e489445e09b74ddc02821468f5868bf61b3cf1..d49e5f5ee83f17fc5eca42d1bfea2bf256bb94a4 100644
--- a/sky/engine/core/css/CSSSelector.cpp
+++ b/sky/engine/core/css/CSSSelector.cpp
@@ -266,38 +266,14 @@ String CSSSelector::selectorText(const String& rightSide) const
} else if (cs->isAttributeSelector()) {
str.append('[');
str.append(cs->attribute().localName());
- switch (cs->m_match) {
- case CSSSelector::Exact:
- str.append('=');
- break;
- case CSSSelector::Set:
- // set has no operator or value, just the attrName
- str.append(']');
- break;
- case CSSSelector::List:
- str.appendLiteral("~=");
- break;
- case CSSSelector::Hyphen:
- str.appendLiteral("|=");
- break;
- case CSSSelector::Begin:
- str.appendLiteral("^=");
- break;
- case CSSSelector::End:
- str.appendLiteral("$=");
- break;
- case CSSSelector::Contain:
- str.appendLiteral("*=");
- break;
- default:
- break;
- }
+ if (cs->m_match == CSSSelector::Exact)
+ str.append('=');
if (cs->m_match != CSSSelector::Set) {
serializeString(cs->value(), str);
if (cs->attributeMatchType() == CaseInsensitive)
str.appendLiteral(" i");
- str.append(']');
}
+ str.append(']');
}
if (!cs->tagHistory())
break;
@@ -334,11 +310,6 @@ static bool validateSubSelector(const CSSSelector* selector)
case CSSSelector::Class:
case CSSSelector::Exact:
case CSSSelector::Set:
- case CSSSelector::List:
- case CSSSelector::Hyphen:
- case CSSSelector::Contain:
- case CSSSelector::Begin:
- case CSSSelector::End:
return true;
case CSSSelector::PseudoElement:
case CSSSelector::Unknown:
« no previous file with comments | « sky/engine/core/css/CSSSelector.h ('k') | sky/engine/core/css/SelectorChecker.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698