| Index: Source/core/accessibility/AXNodeObject.cpp
|
| diff --git a/Source/core/accessibility/AXNodeObject.cpp b/Source/core/accessibility/AXNodeObject.cpp
|
| index 1140082d95d1d0efe228b4ba3fd2eb7612863ddc..8cb88e486284a92c7d0d34c76e0bf41a8c8aee48 100644
|
| --- a/Source/core/accessibility/AXNodeObject.cpp
|
| +++ b/Source/core/accessibility/AXNodeObject.cpp
|
| @@ -204,12 +204,14 @@ AccessibilityRole AXNodeObject::determineAccessibilityRole()
|
| HTMLInputElement& input = toHTMLInputElement(*node());
|
| const AtomicString& type = input.type();
|
| if (type == InputTypeNames::button) {
|
| - if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole))
|
| + if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->ariaRoleAttribute() == MenuRole))
|
| return MenuItemRole;
|
| + if (parentObject() && parentObject()->ariaRoleAttribute() == GroupRole)
|
| + return MenuButtonRole;
|
| return buttonRoleType();
|
| }
|
| if (type == InputTypeNames::checkbox) {
|
| - if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole))
|
| + if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->ariaRoleAttribute() == MenuRole))
|
| return MenuItemCheckBoxRole;
|
| return CheckBoxRole;
|
| }
|
| @@ -221,7 +223,7 @@ AccessibilityRole AXNodeObject::determineAccessibilityRole()
|
| || type == InputTypeNames::week)
|
| return DateTimeRole;
|
| if (type == InputTypeNames::radio) {
|
| - if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole))
|
| + if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->ariaRoleAttribute() == MenuRole))
|
| return MenuItemRadioRole;
|
| return RadioButtonRole;
|
| }
|
|
|