| Index: third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
|
| diff --git a/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp b/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
|
| index 57e12cdf66c11d1110710dc922d8aee4b3414593..6fac6d5708706305d36ad804451a4f4140b604b5 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
|
| +++ b/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
|
| @@ -32,6 +32,8 @@
|
| #include "core/html/HTMLSlotElement.h"
|
|
|
| #include "core/HTMLNames.h"
|
| +#include "core/dom/NodeTraversal.h"
|
| +#include "core/dom/shadow/InsertionPoint.h"
|
|
|
| namespace blink {
|
|
|
| @@ -99,6 +101,21 @@ void HTMLSlotElement::detach(const AttachContext& context)
|
| HTMLElement::detach(context);
|
| }
|
|
|
| +void HTMLSlotElement::updateDistributedNodesWithFallback()
|
| +{
|
| + if (!m_distributedNodes.isEmpty())
|
| + return;
|
| + for (auto& child : NodeTraversal::childrenOf(*this)) {
|
| + // Insertion points are not supported as slots fallback
|
| + if (isActiveInsertionPoint(child))
|
| + continue;
|
| + if (isHTMLSlotElement(child))
|
| + appendDistributedNodes(toHTMLSlotElement(child).getDistributedNodes());
|
| + else
|
| + appendDistributedNode(child);
|
| + }
|
| +}
|
| +
|
| DEFINE_TRACE(HTMLSlotElement)
|
| {
|
| visitor->trace(m_assignedNodes);
|
|
|