Index: third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
diff --git a/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp b/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
index dd38c52ffd845461352cb724f04884cb149bffc5..26ceb1af171ffe0f400f2942055f5f20fd9332f2 100644 |
--- a/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
+++ b/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
@@ -1031,15 +1031,6 @@ AccessibilityExpanded AXNodeObject::isExpanded() const |
return ExpandedUndefined; |
} |
-bool AXNodeObject::isIndeterminate() const |
-{ |
- Node* node = this->node(); |
- if (!isHTMLInputElement(node)) |
- return false; |
- |
- return toHTMLInputElement(node)->shouldAppearIndeterminate(); |
-} |
- |
bool AXNodeObject::isPressed() const |
{ |
if (!isButton()) |
@@ -1338,6 +1329,9 @@ AXObject* AXNodeObject::deprecatedTitleUIElement() const |
AccessibilityButtonState AXNodeObject::checkboxOrRadioValue() const |
{ |
+ if (isNativeCheckboxInMixedState()) |
+ return ButtonStateMixed; |
+ |
if (isNativeCheckboxOrRadio()) |
return isChecked() ? ButtonStateOn : ButtonStateOff; |
@@ -1855,6 +1849,16 @@ String AXNodeObject::computedName() const |
return String(); |
} |
+bool AXNodeObject::isNativeCheckboxInMixedState() const |
+{ |
+ if (!isHTMLInputElement(m_node)) |
+ return false; |
+ |
+ HTMLInputElement* input = toHTMLInputElement(m_node); |
+ return input->type() == InputTypeNames::checkbox |
+ && input->shouldAppearIndeterminate(); |
+} |
+ |
// |
// New AX name calculation. |
// |