OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2012, Google Inc. All rights reserved. | 2 * Copyright (C) 2012, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 657 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
668 | 668 |
669 if (isHTMLHRElement(*GetNode())) | 669 if (isHTMLHRElement(*GetNode())) |
670 return kSplitterRole; | 670 return kSplitterRole; |
671 | 671 |
672 if (IsFieldset()) | 672 if (IsFieldset()) |
673 return kGroupRole; | 673 return kGroupRole; |
674 | 674 |
675 return kUnknownRole; | 675 return kUnknownRole; |
676 } | 676 } |
677 | 677 |
678 // Determine an accessibility role. | |
dmazzoni
2017/05/24 21:57:02
This comment doesn't really add much value. :)
Ei
aleventhal
2017/05/25 17:28:34
Yeah I'm not sure how that happened, duh.
| |
678 AccessibilityRole AXNodeObject::DetermineAccessibilityRole() { | 679 AccessibilityRole AXNodeObject::DetermineAccessibilityRole() { |
679 if (!GetNode()) | 680 if (!GetNode()) |
680 return kUnknownRole; | 681 return kUnknownRole; |
681 | 682 |
682 if ((aria_role_ = DetermineAriaRoleAttribute()) != kUnknownRole) | 683 if ((aria_role_ = DetermineAriaRoleAttribute()) != kUnknownRole) |
683 return aria_role_; | 684 return aria_role_; |
684 if (GetNode()->IsTextNode()) | 685 if (GetNode()->IsTextNode()) |
685 return kStaticTextRole; | 686 return kStaticTextRole; |
686 | 687 |
687 AccessibilityRole role = NativeAccessibilityRoleIgnoringAria(); | 688 AccessibilityRole role = NativeAccessibilityRoleIgnoringAria(); |
688 if (role != kUnknownRole) | 689 return role == kUnknownRole ? kGenericContainerRole : role; |
689 return role; | |
690 if (GetNode()->IsElementNode()) { | |
691 Element* element = ToElement(GetNode()); | |
692 // A generic element with tabIndex explicitly set gets GroupRole. | |
693 // The layout checks for focusability aren't critical here; a false | |
694 // positive would be harmless. | |
695 if (element->IsInCanvasSubtree() && element->SupportsFocus()) | |
696 return kGenericContainerRole; | |
697 } | |
698 return kUnknownRole; | |
699 } | 690 } |
700 | 691 |
701 AccessibilityRole AXNodeObject::DetermineAriaRoleAttribute() const { | 692 AccessibilityRole AXNodeObject::DetermineAriaRoleAttribute() const { |
702 const AtomicString& aria_role = | 693 const AtomicString& aria_role = |
703 GetAOMPropertyOrARIAAttribute(AOMStringProperty::kRole); | 694 GetAOMPropertyOrARIAAttribute(AOMStringProperty::kRole); |
704 if (aria_role.IsNull() || aria_role.IsEmpty()) | 695 if (aria_role.IsNull() || aria_role.IsEmpty()) |
705 return kUnknownRole; | 696 return kUnknownRole; |
706 | 697 |
707 AccessibilityRole role = AriaRoleToWebCoreRole(aria_role); | 698 AccessibilityRole role = AriaRoleToWebCoreRole(aria_role); |
708 | 699 |
(...skipping 2520 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3229 return String(); | 3220 return String(); |
3230 return ToTextControlElement(node)->StrippedPlaceholder(); | 3221 return ToTextControlElement(node)->StrippedPlaceholder(); |
3231 } | 3222 } |
3232 | 3223 |
3233 DEFINE_TRACE(AXNodeObject) { | 3224 DEFINE_TRACE(AXNodeObject) { |
3234 visitor->Trace(node_); | 3225 visitor->Trace(node_); |
3235 AXObjectImpl::Trace(visitor); | 3226 AXObjectImpl::Trace(visitor); |
3236 } | 3227 } |
3237 | 3228 |
3238 } // namespace blink | 3229 } // namespace blink |
OLD | NEW |