Index: third_party/WebKit/Source/core/dom/Node.cpp |
diff --git a/third_party/WebKit/Source/core/dom/Node.cpp b/third_party/WebKit/Source/core/dom/Node.cpp |
index 600af2f195aadbeb1136ad3b602b9d93b4d01122..8ab5a175be03c4b89defc9e5a44b310ff1f5cec2 100644 |
--- a/third_party/WebKit/Source/core/dom/Node.cpp |
+++ b/third_party/WebKit/Source/core/dom/Node.cpp |
@@ -779,6 +779,17 @@ bool Node::isInert() const { |
(!canParticipateInFlatTree() || |
!FlatTreeTraversal::containsIncludingPseudoElement(*dialog, *this))) |
return true; |
+ |
+ if (RuntimeEnabledFeatures::inertAttributeEnabled()) { |
+ const Node* node = this; |
+ do { |
+ if (node->isElementNode() && |
+ toElement(node)->hasAttribute(HTMLNames::inertAttr)) |
+ return true; |
+ node = node->parentOrShadowHostElement(); |
+ } while (node); |
+ } |
+ |
return document().localOwner() && document().localOwner()->isInert(); |
} |