Index: Source/core/css/SelectorChecker.cpp |
diff --git a/Source/core/css/SelectorChecker.cpp b/Source/core/css/SelectorChecker.cpp |
index 7d05b704e5231a59543b1a704821063e02beb54b..f03f7f6f5a635d7fed15d72ff55390a86396a6a0 100644 |
--- a/Source/core/css/SelectorChecker.cpp |
+++ b/Source/core/css/SelectorChecker.cpp |
@@ -398,6 +398,8 @@ SelectorChecker::Match SelectorChecker::matchForRelation(const SelectorCheckingC |
case CSSSelector::ShadowPseudo: |
{ |
+ if (!context.isUARule && context.selector->pseudoType() == CSSSelector::PseudoShadow) |
+ UseCounter::countDeprecation(context.element->document(), UseCounter::CSSSelectorPseudoShadow); |
// If we're in the same tree-scope as the scoping element, then following a shadow descendant combinator would escape that and thus the scope. |
if (context.scope && context.scope->shadowHost() && context.scope->shadowHost()->treeScope() == context.element->treeScope()) |
return SelectorFailsCompletely; |
@@ -413,6 +415,8 @@ SelectorChecker::Match SelectorChecker::matchForRelation(const SelectorCheckingC |
case CSSSelector::ShadowDeep: |
{ |
+ if (!context.isUARule) |
+ UseCounter::countDeprecation(context.element->document(), UseCounter::CSSDeepCombinator); |
if (ShadowRoot* root = context.element->containingShadowRoot()) { |
if (root->type() == ShadowRoot::UserAgentShadowRoot) |
return SelectorFailsCompletely; |