| Index: Source/core/css/CSSSelector.h
|
| diff --git a/Source/core/css/CSSSelector.h b/Source/core/css/CSSSelector.h
|
| index aa80e17cd9d4f26dab8ce600e148974f3d7b4fdb..32ee1f5aa9840d870a1df2b0c71f50ae75075b8e 100644
|
| --- a/Source/core/css/CSSSelector.h
|
| +++ b/Source/core/css/CSSSelector.h
|
| @@ -161,7 +161,8 @@ namespace WebCore {
|
| PseudoSeamlessDocument,
|
| PseudoDistributed,
|
| PseudoPart,
|
| - PseudoUnresolved
|
| + PseudoUnresolved,
|
| + PseudoContent
|
| };
|
|
|
| enum MarginBoxType {
|
| @@ -219,6 +220,7 @@ namespace WebCore {
|
| bool isSiblingSelector() const;
|
| bool isAttributeSelector() const;
|
| bool isDistributedPseudoElement() const;
|
| + bool isContentPseudoElement() const;
|
|
|
| Relation relation() const { return static_cast<Relation>(m_relation); }
|
|
|
| @@ -232,8 +234,8 @@ namespace WebCore {
|
| bool isForPage() const { return m_isForPage; }
|
| void setForPage() { m_isForPage = true; }
|
|
|
| - bool relationIsForShadowDistributed() const { return m_relationIsForShadowDistributed; }
|
| - void setRelationIsForShadowDistributed() { m_relationIsForShadowDistributed = true; }
|
| + bool relationIsAffectedByPseudoContent() const { return m_relationIsAffectedByPseudoContent; }
|
| + void setRelationIsAffectedByPseudoContent() { m_relationIsAffectedByPseudoContent = true; }
|
|
|
| unsigned m_relation : 3; // enum Relation
|
| mutable unsigned m_match : 4; // enum Match
|
| @@ -246,7 +248,7 @@ namespace WebCore {
|
| unsigned m_hasRareData : 1;
|
| unsigned m_isForPage : 1;
|
| unsigned m_tagIsForNamespaceRule : 1;
|
| - unsigned m_relationIsForShadowDistributed : 1;
|
| + unsigned m_relationIsAffectedByPseudoContent : 1;
|
|
|
| unsigned specificityForOneSelector() const;
|
| unsigned specificityForPage() const;
|
| @@ -341,6 +343,11 @@ inline bool CSSSelector::isDistributedPseudoElement() const
|
| return m_match == PseudoElement && pseudoType() == PseudoDistributed;
|
| }
|
|
|
| +inline bool CSSSelector::isContentPseudoElement() const
|
| +{
|
| + return m_match == PseudoElement && pseudoType() == PseudoContent;
|
| +}
|
| +
|
| inline void CSSSelector::setValue(const AtomicString& value)
|
| {
|
| ASSERT(m_match != Tag);
|
| @@ -369,7 +376,7 @@ inline CSSSelector::CSSSelector()
|
| , m_hasRareData(false)
|
| , m_isForPage(false)
|
| , m_tagIsForNamespaceRule(false)
|
| - , m_relationIsForShadowDistributed(false)
|
| + , m_relationIsAffectedByPseudoContent(false)
|
| {
|
| }
|
|
|
| @@ -383,7 +390,7 @@ inline CSSSelector::CSSSelector(const QualifiedName& tagQName, bool tagIsForName
|
| , m_hasRareData(false)
|
| , m_isForPage(false)
|
| , m_tagIsForNamespaceRule(tagIsForNamespaceRule)
|
| - , m_relationIsForShadowDistributed(false)
|
| + , m_relationIsAffectedByPseudoContent(false)
|
| {
|
| m_data.m_tagQName = tagQName.impl();
|
| m_data.m_tagQName->ref();
|
| @@ -399,7 +406,7 @@ inline CSSSelector::CSSSelector(const CSSSelector& o)
|
| , m_hasRareData(o.m_hasRareData)
|
| , m_isForPage(o.m_isForPage)
|
| , m_tagIsForNamespaceRule(o.m_tagIsForNamespaceRule)
|
| - , m_relationIsForShadowDistributed(o.m_relationIsForShadowDistributed)
|
| + , m_relationIsAffectedByPseudoContent(o.m_relationIsAffectedByPseudoContent)
|
| {
|
| if (o.m_match == Tag) {
|
| m_data.m_tagQName = o.m_data.m_tagQName;
|
|
|