Index: Source/core/css/resolver/ScopedStyleTree.cpp |
diff --git a/Source/core/css/resolver/ScopedStyleTree.cpp b/Source/core/css/resolver/ScopedStyleTree.cpp |
index 729faf15e8ff4603c139a9b8a43b29a0c722eff7..fe3f8a3d2cb031f689dde5679ab7c84a80743faf 100644 |
--- a/Source/core/css/resolver/ScopedStyleTree.cpp |
+++ b/Source/core/css/resolver/ScopedStyleTree.cpp |
@@ -138,6 +138,10 @@ void ScopedStyleTree::resolveScopedKeyframesRules(const Element* element, Vector |
TreeScope& treeScope = element->treeScope(); |
bool applyAuthorStyles = treeScope.applyAuthorStyles(); |
+ // Add resolvers for shadow roots hosted by the given element. |
+ collectScopedResolversForHostedShadowTrees(element, resolvers); |
+ |
+ // Add resolvers while walking up DOM tree from the given element. |
for (ScopedStyleResolver* scopedResolver = scopedResolverFor(element); scopedResolver; scopedResolver = scopedResolver->parent()) { |
if (scopedResolver->treeScope() == treeScope || (applyAuthorStyles && scopedResolver->treeScope() == document)) |
resolvers.append(scopedResolver); |