Index: Source/core/dom/Document.cpp |
diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp |
index b02ebb32ff5c130637a9a4f15feec854a4a9d5dd..f1fe5a9c24bfb41fff47583dfa5bd4ab8aa2e206 100644 |
--- a/Source/core/dom/Document.cpp |
+++ b/Source/core/dom/Document.cpp |
@@ -5433,7 +5433,7 @@ void Document::updateHoverActiveState(const HitTestRequest& request, Element* in |
setActiveHoverElement(nullptr); |
} else { |
Element* newActiveElement = innerElementInDocument; |
- if (!oldActiveElement && newActiveElement && request.active() && !request.touchMove()) { |
+ if (!oldActiveElement && newActiveElement && !newActiveElement->isDisabledFormControl() && request.active() && !request.touchMove()) { |
// We are setting the :active chain and freezing it. If future moves happen, they |
// will need to reference this chain. |
for (RenderObject* curr = newActiveElement->renderer(); curr; curr = curr->parent()) { |