Index: Source/core/accessibility/AXRenderObject.cpp |
diff --git a/Source/core/accessibility/AXRenderObject.cpp b/Source/core/accessibility/AXRenderObject.cpp |
index 872cd1eb066051384e7aa4c3dfb2691253f5a435..a88b835373972585b88ab757e5412c1aa5d3379f 100644 |
--- a/Source/core/accessibility/AXRenderObject.cpp |
+++ b/Source/core/accessibility/AXRenderObject.cpp |
@@ -313,8 +313,16 @@ AccessibilityRole AXRenderObject::determineAccessibilityRole() |
if (isHTMLInputElement(node)) { |
HTMLInputElement& input = toHTMLInputElement(*node); |
const AtomicString& type = input.type(); |
- if (type == InputTypeNames::checkbox) |
+ if (type == InputTypeNames::button) { |
+ if (node->parentElement() && isHTMLMenuElement(node->parentElement())) |
+ return MenuItemRole; |
+ return buttonRoleType(); |
+ } |
+ if (type == InputTypeNames::checkbox) { |
+ if (node->parentElement() && isHTMLMenuElement(node->parentElement())) |
+ return CheckBoxMenuItemRole; |
return CheckBoxRole; |
+ } |
if (type == InputTypeNames::radio) |
return RadioButtonRole; |
if (input.isTextButton()) |