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

Unified Diff: Source/core/css/CSSSelector.h

Issue 210713002: Implement ::shadow pseudo element and replace /shadow/ with ::shadow. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixed patch conflict Created 6 years, 9 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: Source/core/css/CSSSelector.h
diff --git a/Source/core/css/CSSSelector.h b/Source/core/css/CSSSelector.h
index 5d2845a7541c5fffb052927a42bc4a80d7cbb517..5ea949385cfab4f21ecb2d789edd3458843fc2e8 100644
--- a/Source/core/css/CSSSelector.h
+++ b/Source/core/css/CSSSelector.h
@@ -128,11 +128,8 @@ namespace WebCore {
DirectAdjacent, // + combinator
IndirectAdjacent, // ~ combinator
SubSelector, // "No space" combinator
- ShadowPseudo, // Special case of shadow DOM pseudo elements
- // FIXME: implement named combinator (i.e. named relation) and
- // replace the following /shadow/ and /shadow-deep/ with the implementation.
- Shadow, // /shadow/ combinator
- ShadowDeep, // /shadow-deep/ combinator
+ ShadowPseudo, // Special case of shadow DOM pseudo elements / shadow pseudo element
dglazkov 2014/03/25 17:10:53 This needs to be renamed to CustomPseudoElement or
tasak 2014/03/26 11:01:46 The actual shadow pseudo uses this relation, becau
+ ShadowDeep // /shadow-deep/ combinator
};
enum PseudoType {
@@ -218,7 +215,8 @@ namespace WebCore {
PseudoUnresolved,
PseudoContent,
PseudoHost,
- PseudoAncestor
+ PseudoAncestor,
+ PseudoShadow
};
enum OptionalPseudoTypeRequirements {
@@ -294,6 +292,7 @@ namespace WebCore {
bool isAttributeSelector() const;
bool isDistributedPseudoElement() const;
bool isContentPseudoElement() const;
+ bool isShadowPseudoElement() const;
bool isHostPseudoClass() const;
// FIXME: selectors with no tagHistory() get a relation() of Descendant. It should instead be
@@ -429,6 +428,11 @@ inline bool CSSSelector::isContentPseudoElement() const
return m_match == PseudoElement && pseudoType() == PseudoContent;
}
+inline bool CSSSelector::isShadowPseudoElement() const
+{
+ return m_match == PseudoElement && pseudoType() == PseudoShadow;
+}
+
inline void CSSSelector::setValue(const AtomicString& value)
{
ASSERT(m_match != Tag);

Powered by Google App Engine
This is Rietveld 408576698