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 e6e061fd43441c0744f6756e3e144a599401666e..6be792f3adad27dde1371b8def2c19f719cfe199 100644 |
--- a/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp |
+++ b/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp |
@@ -43,6 +43,7 @@ using namespace HTMLNames; |
inline HTMLSlotElement::HTMLSlotElement(Document& document) |
: HTMLElement(slotTag, document) |
{ |
+ setHasCustomStyleCallbacks(); |
} |
DEFINE_NODE_FACTORY(HTMLSlotElement); |
@@ -201,6 +202,15 @@ void HTMLSlotElement::removedFrom(ContainerNode* insertionPoint) |
HTMLElement::removedFrom(insertionPoint); |
} |
+void HTMLSlotElement::willRecalcStyle(StyleRecalcChange change) |
+{ |
+ if (change < Inherit && styleChangeType() < SubtreeStyleChange) |
+ return; |
+ |
+ for (Node* node : m_distributedNodes) |
kochi
2016/02/19 08:04:56
Hmm, this should have been RefPtrWillBeRawPtr<Node
|
+ node->setNeedsStyleRecalc(LocalStyleChange, StyleChangeReasonForTracing::create(StyleChangeReason::PropagateInheritChangeToDistributedNodes)); |
+} |
+ |
void HTMLSlotElement::updateDistributedNodesWithFallback() |
{ |
if (!m_distributedNodes.isEmpty()) |