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 5fa5f18dc3504f6d2823f06e6c74b1494a6fe762..1716a574cb3e05693ca4d63e874e80627fee7e31 100644 |
--- a/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
+++ b/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp |
@@ -140,7 +140,7 @@ void AXNodeObject::alterSliderValue(bool increase) |
value += increase ? step : -step; |
setValue(String::number(value)); |
- axObjectCache().postNotification(node(), AXObjectCacheImpl::AXValueChanged); |
+ axObjectCache().postNotification(getNode(), AXObjectCacheImpl::AXValueChanged); |
} |
String AXNodeObject::ariaAccessibilityDescription() const |
@@ -176,7 +176,7 @@ bool AXNodeObject::computeAccessibilityIsIgnored(IgnoredReasons* ignoredReasons) |
if (controlObject && controlObject->isCheckboxOrRadio() && controlObject->nameFromLabelElement()) { |
if (ignoredReasons) { |
HTMLLabelElement* label = labelElementContainer(); |
- if (label && label != node()) { |
+ if (label && label != getNode()) { |
AXObject* labelAXObject = axObjectCache().getOrCreate(label); |
ignoredReasons->append(IgnoredReason(AXLabelContainer, labelAXObject)); |
} |
@@ -186,8 +186,8 @@ bool AXNodeObject::computeAccessibilityIsIgnored(IgnoredReasons* ignoredReasons) |
return true; |
} |
- Element* element = node()->isElementNode() ? toElement(node()) : node()->parentElement(); |
- if (!layoutObject() |
+ Element* element = getNode()->isElementNode() ? toElement(getNode()) : getNode()->parentElement(); |
+ if (!getLayoutObject() |
&& (!element || !element->isInCanvasSubtree()) |
&& !equalIgnoringCase(getAttribute(aria_hiddenAttr), "false")) { |
if (ignoredReasons) |
@@ -213,7 +213,7 @@ static bool isPresentationalInTable(AXObject* parent, HTMLElement* currentElemen |
if (!currentElement) |
return false; |
- Node* parentNode = parent->node(); |
+ Node* parentNode = parent->getNode(); |
if (!parentNode || !parentNode->isHTMLElement()) |
return false; |
@@ -230,7 +230,7 @@ static bool isPresentationalInTable(AXObject* parent, HTMLElement* currentElemen |
if (isHTMLTableRowElement(*currentElement) && isHTMLTableSectionElement(toHTMLElement(*parentNode))) { |
// Because TableSections have ignored role, presentation should be checked with its parent node |
AXObject* tableObject = parent->parentObject(); |
- Node* tableNode = tableObject ? tableObject->node() : 0; |
+ Node* tableNode = tableObject ? tableObject->getNode() : 0; |
return isHTMLTableElement(tableNode) && tableObject->hasInheritedPresentationalRole(); |
} |
return false; |
@@ -238,7 +238,7 @@ static bool isPresentationalInTable(AXObject* parent, HTMLElement* currentElemen |
static bool isRequiredOwnedElement(AXObject* parent, AccessibilityRole currentRole, HTMLElement* currentElement) |
{ |
- Node* parentNode = parent->node(); |
+ Node* parentNode = parent->getNode(); |
if (!parentNode || !parentNode->isHTMLElement()) |
return false; |
@@ -283,13 +283,13 @@ const AXObject* AXNodeObject::inheritsPresentationalRoleFrom() const |
return 0; |
HTMLElement* element = nullptr; |
- if (node() && node()->isHTMLElement()) |
- element = toHTMLElement(node()); |
+ if (getNode() && getNode()->isHTMLElement()) |
+ element = toHTMLElement(getNode()); |
if (!parent->hasInheritedPresentationalRole()) { |
- if (!layoutObject() || !layoutObject()->isBoxModelObject()) |
+ if (!getLayoutObject() || !getLayoutObject()->isBoxModelObject()) |
return 0; |
- LayoutBoxModelObject* cssBox = toLayoutBoxModelObject(layoutObject()); |
+ LayoutBoxModelObject* cssBox = toLayoutBoxModelObject(getLayoutObject()); |
if (!cssBox->isTableCell() && !cssBox->isTableRow()) |
return 0; |
@@ -305,10 +305,10 @@ const AXObject* AXNodeObject::inheritsPresentationalRoleFrom() const |
bool AXNodeObject::isDescendantOfElementType(const HTMLQualifiedName& tagName) const |
{ |
- if (!node()) |
+ if (!getNode()) |
return false; |
- for (Element* parent = node()->parentElement(); parent; parent = parent->parentElement()) { |
+ for (Element* parent = getNode()->parentElement(); parent; parent = parent->parentElement()) { |
if (parent->hasTagName(tagName)) |
return true; |
} |
@@ -317,39 +317,39 @@ bool AXNodeObject::isDescendantOfElementType(const HTMLQualifiedName& tagName) c |
AccessibilityRole AXNodeObject::nativeAccessibilityRoleIgnoringAria() const |
{ |
- if (!node()) |
+ if (!getNode()) |
return UnknownRole; |
// HTMLAnchorElement sets isLink only when it has hrefAttr. |
// We assume that it is also LinkRole if it has event listners even though it doesn't have hrefAttr. |
- if (node()->isLink() || (isHTMLAnchorElement(*node()) && isClickable())) |
+ if (getNode()->isLink() || (isHTMLAnchorElement(*getNode()) && isClickable())) |
return LinkRole; |
- if (isHTMLButtonElement(*node())) |
+ if (isHTMLButtonElement(*getNode())) |
return buttonRoleType(); |
- if (isHTMLDetailsElement(*node())) |
+ if (isHTMLDetailsElement(*getNode())) |
return DetailsRole; |
- if (isHTMLSummaryElement(*node())) { |
- ContainerNode* parent = FlatTreeTraversal::parent(*node()); |
+ if (isHTMLSummaryElement(*getNode())) { |
+ ContainerNode* parent = FlatTreeTraversal::parent(*getNode()); |
if (parent && isHTMLDetailsElement(parent)) |
return DisclosureTriangleRole; |
return UnknownRole; |
} |
- if (isHTMLInputElement(*node())) { |
- HTMLInputElement& input = toHTMLInputElement(*node()); |
+ if (isHTMLInputElement(*getNode())) { |
+ HTMLInputElement& input = toHTMLInputElement(*getNode()); |
const AtomicString& type = input.type(); |
if (input.dataList()) |
return ComboBoxRole; |
if (type == InputTypeNames::button) { |
- if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
+ if ((getNode()->parentNode() && isHTMLMenuElement(getNode()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
return MenuItemRole; |
return buttonRoleType(); |
} |
if (type == InputTypeNames::checkbox) { |
- if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
+ if ((getNode()->parentNode() && isHTMLMenuElement(getNode()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
return MenuItemCheckBoxRole; |
return CheckBoxRole; |
} |
@@ -363,7 +363,7 @@ AccessibilityRole AXNodeObject::nativeAccessibilityRoleIgnoringAria() const |
if (type == InputTypeNames::file) |
return ButtonRole; |
if (type == InputTypeNames::radio) { |
- if ((node()->parentNode() && isHTMLMenuElement(node()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
+ if ((getNode()->parentNode() && isHTMLMenuElement(getNode()->parentNode())) || (parentObject() && parentObject()->roleValue() == MenuRole)) |
return MenuItemRadioRole; |
return RadioButtonRole; |
} |
@@ -380,91 +380,91 @@ AccessibilityRole AXNodeObject::nativeAccessibilityRoleIgnoringAria() const |
return TextFieldRole; |
} |
- if (isHTMLSelectElement(*node())) { |
- HTMLSelectElement& selectElement = toHTMLSelectElement(*node()); |
+ if (isHTMLSelectElement(*getNode())) { |
+ HTMLSelectElement& selectElement = toHTMLSelectElement(*getNode()); |
return selectElement.multiple() ? ListBoxRole : PopUpButtonRole; |
} |
- if (isHTMLTextAreaElement(*node())) |
+ if (isHTMLTextAreaElement(*getNode())) |
return TextFieldRole; |
if (headingLevel()) |
return HeadingRole; |
- if (isHTMLDivElement(*node())) |
+ if (isHTMLDivElement(*getNode())) |
return DivRole; |
- if (isHTMLMeterElement(*node())) |
+ if (isHTMLMeterElement(*getNode())) |
return MeterRole; |
- if (isHTMLOutputElement(*node())) |
+ if (isHTMLOutputElement(*getNode())) |
return StatusRole; |
- if (isHTMLParagraphElement(*node())) |
+ if (isHTMLParagraphElement(*getNode())) |
return ParagraphRole; |
- if (isHTMLLabelElement(*node())) |
+ if (isHTMLLabelElement(*getNode())) |
return LabelRole; |
- if (isHTMLLegendElement(*node())) |
+ if (isHTMLLegendElement(*getNode())) |
return LegendRole; |
- if (isHTMLRubyElement(*node())) |
+ if (isHTMLRubyElement(*getNode())) |
return RubyRole; |
- if (isHTMLDListElement(*node())) |
+ if (isHTMLDListElement(*getNode())) |
return DescriptionListRole; |
- if (node()->hasTagName(ddTag)) |
+ if (getNode()->hasTagName(ddTag)) |
return DescriptionListDetailRole; |
- if (node()->hasTagName(dtTag)) |
+ if (getNode()->hasTagName(dtTag)) |
return DescriptionListTermRole; |
- if (node()->nodeName() == "math") |
+ if (getNode()->nodeName() == "math") |
return MathRole; |
- if (node()->hasTagName(rpTag) || node()->hasTagName(rtTag)) |
+ if (getNode()->hasTagName(rpTag) || getNode()->hasTagName(rtTag)) |
return AnnotationRole; |
- if (isHTMLFormElement(*node())) |
+ if (isHTMLFormElement(*getNode())) |
return FormRole; |
- if (node()->hasTagName(abbrTag)) |
+ if (getNode()->hasTagName(abbrTag)) |
return AbbrRole; |
- if (node()->hasTagName(articleTag)) |
+ if (getNode()->hasTagName(articleTag)) |
return ArticleRole; |
- if (node()->hasTagName(mainTag)) |
+ if (getNode()->hasTagName(mainTag)) |
return MainRole; |
- if (node()->hasTagName(markTag)) |
+ if (getNode()->hasTagName(markTag)) |
return MarkRole; |
- if (node()->hasTagName(navTag)) |
+ if (getNode()->hasTagName(navTag)) |
return NavigationRole; |
- if (node()->hasTagName(asideTag)) |
+ if (getNode()->hasTagName(asideTag)) |
return ComplementaryRole; |
- if (node()->hasTagName(preTag)) |
+ if (getNode()->hasTagName(preTag)) |
return PreRole; |
- if (node()->hasTagName(sectionTag)) |
+ if (getNode()->hasTagName(sectionTag)) |
return RegionRole; |
- if (node()->hasTagName(addressTag)) |
+ if (getNode()->hasTagName(addressTag)) |
return ContentInfoRole; |
- if (isHTMLDialogElement(*node())) |
+ if (isHTMLDialogElement(*getNode())) |
return DialogRole; |
// The HTML element should not be exposed as an element. That's what the LayoutView element does. |
- if (isHTMLHtmlElement(*node())) |
+ if (isHTMLHtmlElement(*getNode())) |
return IgnoredRole; |
- if (isHTMLIFrameElement(*node())) { |
+ if (isHTMLIFrameElement(*getNode())) { |
const AtomicString& ariaRole = getAttribute(roleAttr); |
if (ariaRole == "none" || ariaRole == "presentation") |
return IframePresentationalRole; |
@@ -473,31 +473,31 @@ AccessibilityRole AXNodeObject::nativeAccessibilityRoleIgnoringAria() const |
// There should only be one banner/contentInfo per page. If header/footer are being used within an article or section |
// then it should not be exposed as whole page's banner/contentInfo |
- if (node()->hasTagName(headerTag) && !isDescendantOfElementType(articleTag) && !isDescendantOfElementType(sectionTag)) |
+ if (getNode()->hasTagName(headerTag) && !isDescendantOfElementType(articleTag) && !isDescendantOfElementType(sectionTag)) |
return BannerRole; |
- if (node()->hasTagName(footerTag) && !isDescendantOfElementType(articleTag) && !isDescendantOfElementType(sectionTag)) |
+ if (getNode()->hasTagName(footerTag) && !isDescendantOfElementType(articleTag) && !isDescendantOfElementType(sectionTag)) |
return FooterRole; |
- if (node()->hasTagName(blockquoteTag)) |
+ if (getNode()->hasTagName(blockquoteTag)) |
return BlockquoteRole; |
- if (node()->hasTagName(captionTag)) |
+ if (getNode()->hasTagName(captionTag)) |
return CaptionRole; |
- if (node()->hasTagName(figcaptionTag)) |
+ if (getNode()->hasTagName(figcaptionTag)) |
return FigcaptionRole; |
- if (node()->hasTagName(figureTag)) |
+ if (getNode()->hasTagName(figureTag)) |
return FigureRole; |
- if (node()->nodeName() == "TIME") |
+ if (getNode()->nodeName() == "TIME") |
return TimeRole; |
if (isEmbeddedObject()) |
return EmbeddedObjectRole; |
- if (isHTMLHRElement(*node())) |
+ if (isHTMLHRElement(*getNode())) |
return SplitterRole; |
return UnknownRole; |
@@ -505,21 +505,21 @@ AccessibilityRole AXNodeObject::nativeAccessibilityRoleIgnoringAria() const |
AccessibilityRole AXNodeObject::determineAccessibilityRole() |
{ |
- if (!node()) |
+ if (!getNode()) |
return UnknownRole; |
if ((m_ariaRole = determineAriaRoleAttribute()) != UnknownRole) |
return m_ariaRole; |
- if (node()->isTextNode()) |
+ if (getNode()->isTextNode()) |
return StaticTextRole; |
AccessibilityRole role = nativeAccessibilityRoleIgnoringAria(); |
if (role != UnknownRole) |
return role; |
- if (node()->isElementNode()) { |
- Element* element = toElement(node()); |
+ if (getNode()->isElementNode()) { |
+ Element* element = toElement(getNode()); |
if (element->isInCanvasSubtree()) { |
- document()->updateLayoutTreeForNode(element); |
+ getDocument()->updateLayoutTreeForNode(element); |
if (element->isFocusable()) |
return GroupRole; |
} |
@@ -614,7 +614,7 @@ bool AXNodeObject::isGenericFocusableElement() const |
// cases already, so we don't need to include them here. |
if (roleValue() == WebAreaRole) |
return false; |
- if (isHTMLBodyElement(node())) |
+ if (isHTMLBodyElement(getNode())) |
return false; |
// An SVG root is focusable by default, but it's probably not interactive, so don't |
@@ -676,12 +676,12 @@ Element* AXNodeObject::menuItemElementForMenu() const |
if (ariaRoleAttribute() != MenuRole) |
return 0; |
- return siblingWithAriaRole("menuitem", node()); |
+ return siblingWithAriaRole("menuitem", getNode()); |
} |
Element* AXNodeObject::mouseButtonListener() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return 0; |
@@ -751,7 +751,7 @@ bool AXNodeObject::isAnchor() const |
bool AXNodeObject::isControl() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -761,7 +761,7 @@ bool AXNodeObject::isControl() const |
bool AXNodeObject::isControllingVideoElement() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return true; |
@@ -770,12 +770,12 @@ bool AXNodeObject::isControllingVideoElement() const |
bool AXNodeObject::isEmbeddedObject() const |
{ |
- return isHTMLPlugInElement(node()); |
+ return isHTMLPlugInElement(getNode()); |
} |
bool AXNodeObject::isFieldset() const |
{ |
- return isHTMLFieldSetElement(node()); |
+ return isHTMLFieldSetElement(getNode()); |
} |
bool AXNodeObject::isHeading() const |
@@ -785,7 +785,7 @@ bool AXNodeObject::isHeading() const |
bool AXNodeObject::isHovered() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -804,7 +804,7 @@ bool AXNodeObject::isImageButton() const |
bool AXNodeObject::isInputImage() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (roleValue() == ButtonRole && isHTMLInputElement(node)) |
return toHTMLInputElement(*node).type() == InputTypeNames::image; |
@@ -839,12 +839,12 @@ bool AXNodeObject::isMultiSelectable() const |
if (equalIgnoringCase(ariaMultiSelectable, "false")) |
return false; |
- return isHTMLSelectElement(node()) && toHTMLSelectElement(*node()).multiple(); |
+ return isHTMLSelectElement(getNode()) && toHTMLSelectElement(*getNode()).multiple(); |
} |
bool AXNodeObject::isNativeCheckboxOrRadio() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!isHTMLInputElement(node)) |
return false; |
@@ -854,7 +854,7 @@ bool AXNodeObject::isNativeCheckboxOrRadio() const |
bool AXNodeObject::isNativeImage() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -872,7 +872,7 @@ bool AXNodeObject::isNativeImage() const |
bool AXNodeObject::isNativeTextControl() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -901,7 +901,7 @@ bool AXNodeObject::isNonNativeTextControl() const |
bool AXNodeObject::isPasswordField() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!isHTMLInputElement(node)) |
return false; |
@@ -929,7 +929,7 @@ bool AXNodeObject::isSlider() const |
bool AXNodeObject::isNativeSlider() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -941,7 +941,7 @@ bool AXNodeObject::isNativeSlider() const |
bool AXNodeObject::isChecked() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -970,12 +970,12 @@ bool AXNodeObject::isChecked() const |
bool AXNodeObject::isClickable() const |
{ |
- if (node()) { |
- if (node()->isElementNode() && toElement(node())->isDisabledFormControl()) |
+ if (getNode()) { |
+ if (getNode()->isElementNode() && toElement(getNode())->isDisabledFormControl()) |
return false; |
- // Note: we can't call node()->willRespondToMouseClickEvents() because that triggers a style recalc and can delete this. |
- if (node()->hasEventListeners(EventTypeNames::mouseup) || node()->hasEventListeners(EventTypeNames::mousedown) || node()->hasEventListeners(EventTypeNames::click) || node()->hasEventListeners(EventTypeNames::DOMActivate)) |
+ // Note: we can't call getNode()->willRespondToMouseClickEvents() because that triggers a style recalc and can delete this. |
+ if (getNode()->hasEventListeners(EventTypeNames::mouseup) || getNode()->hasEventListeners(EventTypeNames::mousedown) || getNode()->hasEventListeners(EventTypeNames::click) || getNode()->hasEventListeners(EventTypeNames::DOMActivate)) |
return true; |
} |
@@ -987,7 +987,7 @@ bool AXNodeObject::isEnabled() const |
if (isDescendantOfDisabledNode()) |
return false; |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node || !node->isElementNode()) |
return true; |
@@ -996,9 +996,9 @@ bool AXNodeObject::isEnabled() const |
AccessibilityExpanded AXNodeObject::isExpanded() const |
{ |
- if (node() && isHTMLSummaryElement(*node())) { |
- if (node()->parentNode() && isHTMLDetailsElement(node()->parentNode())) |
- return toElement(node()->parentNode())->hasAttribute(openAttr) ? ExpandedExpanded : ExpandedCollapsed; |
+ if (getNode() && isHTMLSummaryElement(*getNode())) { |
+ if (getNode()->parentNode() && isHTMLDetailsElement(getNode()->parentNode())) |
+ return toElement(getNode()->parentNode())->hasAttribute(openAttr) ? ExpandedExpanded : ExpandedCollapsed; |
} |
const AtomicString& expanded = getAttribute(aria_expandedAttr); |
@@ -1015,11 +1015,11 @@ bool AXNodeObject::isPressed() const |
if (!isButton()) |
return false; |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
- // ARIA button with aria-pressed not undefined, then check for aria-pressed attribute rather than node()->active() |
+ // ARIA button with aria-pressed not undefined, then check for aria-pressed attribute rather than getNode()->active() |
if (ariaRoleAttribute() == ToggleButtonRole) { |
if (equalIgnoringCase(getAttribute(aria_pressedAttr), "true") |
|| equalIgnoringCase(getAttribute(aria_pressedAttr), "mixed")) |
@@ -1032,7 +1032,7 @@ bool AXNodeObject::isPressed() const |
bool AXNodeObject::isReadOnly() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return true; |
@@ -1050,7 +1050,7 @@ bool AXNodeObject::isReadOnly() const |
bool AXNodeObject::isRequired() const |
{ |
- Node* n = this->node(); |
+ Node* n = this->getNode(); |
if (n && (n->isElementNode() && toElement(n)->isFormControlElement()) && hasAttribute(requiredAttr)) |
return toHTMLFormControlElement(n)->isRequired(); |
@@ -1062,7 +1062,7 @@ bool AXNodeObject::isRequired() const |
bool AXNodeObject::canSetFocusAttribute() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return false; |
@@ -1099,7 +1099,7 @@ bool AXNodeObject::canSetValueAttribute() const |
bool AXNodeObject::canvasHasFallbackContent() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!isHTMLCanvasElement(node)) |
return false; |
@@ -1112,7 +1112,7 @@ bool AXNodeObject::canvasHasFallbackContent() const |
int AXNodeObject::headingLevel() const |
{ |
// headings can be in block flow and non-block flow |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return 0; |
@@ -1149,7 +1149,7 @@ int AXNodeObject::headingLevel() const |
unsigned AXNodeObject::hierarchicalLevel() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node || !node->isElementNode()) |
return 0; |
Element* element = toElement(node); |
@@ -1236,7 +1236,7 @@ String AXNodeObject::text() const |
if (!isTextControl()) |
return String(); |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return String(); |
@@ -1262,10 +1262,10 @@ AccessibilityButtonState AXNodeObject::checkboxOrRadioValue() const |
RGBA32 AXNodeObject::colorValue() const |
{ |
- if (!isHTMLInputElement(node()) || !isColorWell()) |
+ if (!isHTMLInputElement(getNode()) || !isColorWell()) |
return AXObject::colorValue(); |
- HTMLInputElement* input = toHTMLInputElement(node()); |
+ HTMLInputElement* input = toHTMLInputElement(getNode()); |
const AtomicString& type = input->getAttribute(typeAttr); |
if (!equalIgnoringCase(type, "color")) |
return AXObject::colorValue(); |
@@ -1294,9 +1294,9 @@ InvalidState AXNodeObject::getInvalidState() const |
return InvalidStateOther; |
} |
- if (node() && node()->isElementNode() |
- && toElement(node())->isFormControlElement()) { |
- HTMLFormControlElement* element = toHTMLFormControlElement(node()); |
+ if (getNode() && getNode()->isElementNode() |
+ && toElement(getNode())->isFormControlElement()) { |
+ HTMLFormControlElement* element = toHTMLFormControlElement(getNode()); |
WillBeHeapVector<RefPtrWillBeMember<HTMLFormControlElement>> |
invalidControls; |
bool isInvalid = !element->checkValidity( |
@@ -1355,10 +1355,10 @@ float AXNodeObject::valueForRange() const |
return getAttribute(aria_valuenowAttr).toFloat(); |
if (isNativeSlider()) |
- return toHTMLInputElement(*node()).valueAsNumber(); |
+ return toHTMLInputElement(*getNode()).valueAsNumber(); |
- if (isHTMLMeterElement(node())) |
- return toHTMLMeterElement(*node()).value(); |
+ if (isHTMLMeterElement(getNode())) |
+ return toHTMLMeterElement(*getNode()).value(); |
return 0.0; |
} |
@@ -1369,10 +1369,10 @@ float AXNodeObject::maxValueForRange() const |
return getAttribute(aria_valuemaxAttr).toFloat(); |
if (isNativeSlider()) |
- return toHTMLInputElement(*node()).maximum(); |
+ return toHTMLInputElement(*getNode()).maximum(); |
- if (isHTMLMeterElement(node())) |
- return toHTMLMeterElement(*node()).max(); |
+ if (isHTMLMeterElement(getNode())) |
+ return toHTMLMeterElement(*getNode()).max(); |
return 0.0; |
} |
@@ -1383,10 +1383,10 @@ float AXNodeObject::minValueForRange() const |
return getAttribute(aria_valueminAttr).toFloat(); |
if (isNativeSlider()) |
- return toHTMLInputElement(*node()).minimum(); |
+ return toHTMLInputElement(*getNode()).minimum(); |
- if (isHTMLMeterElement(node())) |
- return toHTMLMeterElement(*node()).min(); |
+ if (isHTMLMeterElement(getNode())) |
+ return toHTMLMeterElement(*getNode()).min(); |
return 0.0; |
} |
@@ -1396,13 +1396,13 @@ float AXNodeObject::stepValueForRange() const |
if (!isNativeSlider()) |
return 0.0; |
- Decimal step = toHTMLInputElement(*node()).createStepRange(RejectAny).step(); |
+ Decimal step = toHTMLInputElement(*getNode()).createStepRange(RejectAny).step(); |
return step.toString().toFloat(); |
} |
String AXNodeObject::stringValue() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return String(); |
@@ -1509,7 +1509,7 @@ String AXNodeObject::textAlternative(bool recursive, bool inAriaLabelledByTraver |
bool foundTextAlternative = false; |
- if (!node() && !layoutObject()) |
+ if (!getNode() && !getLayoutObject()) |
return String(); |
String textAlternative = ariaTextAlternative(recursive, inAriaLabelledByTraversal, visited, nameFrom, relatedObjects, nameSources, &foundTextAlternative); |
@@ -1545,7 +1545,7 @@ String AXNodeObject::textAlternative(bool recursive, bool inAriaLabelledByTraver |
nameSources->last().type = nameFrom; |
} |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (node && node->isTextNode()) |
textAlternative = toText(node)->wholeText(); |
else if (isHTMLBRElement(node)) |
@@ -1627,7 +1627,7 @@ String AXNodeObject::textFromDescendants(AXObjectSet& visited, bool recursive) c |
// so we should return "HelloWorld", but given <div>Hello</div><div>World</div> the |
// strings are in separate boxes so we should return "Hello World". |
if (previous && accumulatedText.length() && !isHTMLSpace(accumulatedText[accumulatedText.length() - 1])) { |
- if (!isInSameNonInlineBlockFlow(child->layoutObject(), previous->layoutObject())) |
+ if (!isInSameNonInlineBlockFlow(child->getLayoutObject(), previous->getLayoutObject())) |
accumulatedText.append(' '); |
} |
@@ -1649,7 +1649,7 @@ bool AXNodeObject::nameFromLabelElement() const |
// but it's necessary because nameFromLabelElement needs to be called from |
// computeAccessibilityIsIgnored, which isn't allowed to call axObjectCache->getOrCreate. |
- if (!node() && !layoutObject()) |
+ if (!getNode() && !getLayoutObject()) |
return false; |
// Step 2A from: http://www.w3.org/TR/accname-aam-1.1 |
@@ -1670,8 +1670,8 @@ bool AXNodeObject::nameFromLabelElement() const |
// Based on http://rawgit.com/w3c/aria/master/html-aam/html-aam.html#accessible-name-and-description-calculation |
// 5.1/5.5 Text inputs, Other labelable Elements |
HTMLElement* htmlElement = nullptr; |
- if (node()->isHTMLElement()) |
- htmlElement = toHTMLElement(node()); |
+ if (getNode()->isHTMLElement()) |
+ htmlElement = toHTMLElement(getNode()); |
if (htmlElement && htmlElement->isLabelable()) { |
HTMLLabelElement* label = labelForElement(htmlElement); |
if (label) |
@@ -1689,10 +1689,10 @@ LayoutRect AXNodeObject::elementRect() const |
// FIXME: If there are a lot of elements in the canvas, it will be inefficient. |
// We can avoid the inefficient calculations by using AXComputedObjectAttributeCache. |
- if (node()->parentElement()->isInCanvasSubtree()) { |
+ if (getNode()->parentElement()->isInCanvasSubtree()) { |
LayoutRect rect; |
- for (Node& child : NodeTraversal::childrenOf(*node())) { |
+ for (Node& child : NodeTraversal::childrenOf(*getNode())) { |
if (child.isHTMLElement()) { |
if (AXObject* obj = axObjectCache().get(&child)) { |
if (rect.isEmpty()) |
@@ -1745,7 +1745,7 @@ static Node* getParentNodeForComputeParent(Node* node) |
AXObject* AXNodeObject::computeParent() const |
{ |
ASSERT(!isDetached()); |
- if (Node* parentNode = getParentNodeForComputeParent(node())) |
+ if (Node* parentNode = getParentNodeForComputeParent(getNode())) |
return axObjectCache().getOrCreate(parentNode); |
return nullptr; |
@@ -1753,7 +1753,7 @@ AXObject* AXNodeObject::computeParent() const |
AXObject* AXNodeObject::computeParentIfExists() const |
{ |
- if (Node* parentNode = getParentNodeForComputeParent(node())) |
+ if (Node* parentNode = getParentNodeForComputeParent(getNode())) |
return axObjectCache().get(parentNode); |
return nullptr; |
@@ -1761,10 +1761,10 @@ AXObject* AXNodeObject::computeParentIfExists() const |
AXObject* AXNodeObject::rawFirstChild() const |
{ |
- if (!node()) |
+ if (!getNode()) |
return 0; |
- Node* firstChild = node()->firstChild(); |
+ Node* firstChild = getNode()->firstChild(); |
if (!firstChild) |
return 0; |
@@ -1774,10 +1774,10 @@ AXObject* AXNodeObject::rawFirstChild() const |
AXObject* AXNodeObject::rawNextSibling() const |
{ |
- if (!node()) |
+ if (!getNode()) |
return 0; |
- Node* nextSibling = node()->nextSibling(); |
+ Node* nextSibling = getNode()->nextSibling(); |
if (!nextSibling) |
return 0; |
@@ -1797,7 +1797,7 @@ void AXNodeObject::addChildren() |
m_haveChildren = true; |
// The only time we add children from the DOM tree to a node with a layoutObject is when it's a canvas. |
- if (layoutObject() && !isHTMLCanvasElement(*m_node)) |
+ if (getLayoutObject() && !isHTMLCanvasElement(*m_node)) |
return; |
HeapVector<Member<AXObject>> ownedChildren; |
@@ -1847,10 +1847,10 @@ bool AXNodeObject::canHaveChildren() const |
// If this is an AXLayoutObject, then it's okay if this object |
// doesn't have a node - there are some layoutObjects that don't have associated |
// nodes, like scroll areas and css-generated text. |
- if (!node() && !isAXLayoutObject()) |
+ if (!getNode() && !isAXLayoutObject()) |
return false; |
- if (node() && isHTMLMapElement(node())) |
+ if (getNode() && isHTMLMapElement(getNode())) |
return false; |
AccessibilityRole role = roleValue(); |
@@ -1883,7 +1883,7 @@ bool AXNodeObject::canHaveChildren() const |
Element* AXNodeObject::actionElement() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return 0; |
@@ -1926,7 +1926,7 @@ Element* AXNodeObject::actionElement() const |
Element* AXNodeObject::anchorElement() const |
{ |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (!node) |
return 0; |
@@ -1942,11 +1942,11 @@ Element* AXNodeObject::anchorElement() const |
return 0; |
} |
-Document* AXNodeObject::document() const |
+Document* AXNodeObject::getDocument() const |
{ |
- if (!node()) |
+ if (!getNode()) |
return 0; |
- return &node()->document(); |
+ return &getNode()->document(); |
} |
void AXNodeObject::setNode(Node* node) |
@@ -1974,7 +1974,7 @@ AXObject* AXNodeObject::correspondingControlForLabelElement() const |
HTMLLabelElement* AXNodeObject::labelElementContainer() const |
{ |
- if (!node()) |
+ if (!getNode()) |
return 0; |
// the control element should not be considered part of the label |
@@ -1986,7 +1986,7 @@ HTMLLabelElement* AXNodeObject::labelElementContainer() const |
return 0; |
// find if this has a ancestor that is a label |
- return Traversal<HTMLLabelElement>::firstAncestorOrSelf(*node()); |
+ return Traversal<HTMLLabelElement>::firstAncestorOrSelf(*getNode()); |
} |
void AXNodeObject::setFocused(bool on) |
@@ -1994,11 +1994,11 @@ void AXNodeObject::setFocused(bool on) |
if (!canSetFocusAttribute()) |
return; |
- Document* document = this->document(); |
+ Document* document = this->getDocument(); |
if (!on) { |
document->clearFocusedElement(); |
} else { |
- Node* node = this->node(); |
+ Node* node = this->getNode(); |
if (node && node->isElementNode()) { |
// If this node is already the currently focused node, then calling focus() won't do anything. |
// That is a problem when focus is removed from the webpage to chrome, and then returns. |
@@ -2028,7 +2028,7 @@ void AXNodeObject::decrement() |
void AXNodeObject::childrenChanged() |
{ |
// This method is meant as a quick way of marking a portion of the accessibility tree dirty. |
- if (!node() && !layoutObject()) |
+ if (!getNode() && !getLayoutObject()) |
return; |
// If this is not part of the accessibility tree because an ancestor |
@@ -2069,8 +2069,8 @@ void AXNodeObject::selectionChanged() |
// or the web area if the selection is just in the document somewhere. |
if (isFocused() || isWebArea()) { |
axObjectCache().postNotification(this, AXObjectCacheImpl::AXSelectedTextChanged); |
- if (document()) { |
- AXObject* documentObject = axObjectCache().getOrCreate(document()); |
+ if (getDocument()) { |
+ AXObject* documentObject = axObjectCache().getOrCreate(getDocument()); |
axObjectCache().postNotification(documentObject, AXObjectCacheImpl::AXDocumentSelectionChanged); |
} |
} else { |
@@ -2083,7 +2083,7 @@ void AXNodeObject::textChanged() |
// If this element supports ARIA live regions, or is part of a region with an ARIA editable role, |
// then notify the AT of changes. |
AXObjectCacheImpl& cache = axObjectCache(); |
- for (Node* parentNode = node(); parentNode; parentNode = parentNode->parentNode()) { |
+ for (Node* parentNode = getNode(); parentNode; parentNode = parentNode->parentNode()) { |
AXObject* parent = cache.get(parentNode); |
if (!parent) |
continue; |
@@ -2122,7 +2122,7 @@ void AXNodeObject::computeAriaOwnsChildren(HeapVector<Member<AXObject>>& ownedCh |
// Based on http://rawgit.com/w3c/aria/master/html-aam/html-aam.html#accessible-name-and-description-calculation |
String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nameFrom, AXRelatedObjectVector* relatedObjects, NameSources* nameSources, bool* foundTextAlternative) const |
{ |
- if (!node()) |
+ if (!getNode()) |
return String(); |
// If nameSources is non-null, relatedObjects is used in filling it in, so it must be non-null as well. |
@@ -2133,14 +2133,14 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
AXRelatedObjectVector localRelatedObjects; |
const HTMLInputElement* inputElement = nullptr; |
- if (isHTMLInputElement(node())) |
- inputElement = toHTMLInputElement(node()); |
+ if (isHTMLInputElement(getNode())) |
+ inputElement = toHTMLInputElement(getNode()); |
// 5.1/5.5 Text inputs, Other labelable Elements |
// If you change this logic, update AXNodeObject::nameFromLabelElement, too. |
HTMLElement* htmlElement = nullptr; |
- if (node()->isHTMLElement()) |
- htmlElement = toHTMLElement(node()); |
+ if (getNode()->isHTMLElement()) |
+ htmlElement = toHTMLElement(getNode()); |
if (htmlElement && htmlElement->isLabelable()) { |
// label |
nameFrom = AXNameFromRelatedElement; |
@@ -2263,7 +2263,7 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
NameSource& source = nameSources->last(); |
source.type = nameFrom; |
} |
- HTMLElement* element = toHTMLElement(node()); |
+ HTMLElement* element = toHTMLElement(getNode()); |
const AtomicString& placeholder = element->fastGetAttribute(placeholderAttr); |
if (!placeholder.isEmpty()) { |
textAlternative = placeholder; |
@@ -2279,7 +2279,7 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
} |
// 5.7 figure and figcaption Elements |
- if (node()->hasTagName(figureTag)) { |
+ if (getNode()->hasTagName(figureTag)) { |
// figcaption |
nameFrom = AXNameFromRelatedElement; |
if (nameSources) { |
@@ -2288,7 +2288,7 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
nameSources->last().nativeSource = AXTextFromNativeHTMLFigcaption; |
} |
Element* figcaption = nullptr; |
- for (Element& element : ElementTraversal::descendantsOf(*(node()))) { |
+ for (Element& element : ElementTraversal::descendantsOf(*(getNode()))) { |
if (element.hasTagName(figcaptionTag)) { |
figcaption = &element; |
break; |
@@ -2319,7 +2319,7 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
} |
// 5.8 img or area Element |
- if (isHTMLImageElement(node()) || isHTMLAreaElement(node()) || (layoutObject() && layoutObject()->isSVGImage())) { |
+ if (isHTMLImageElement(getNode()) || isHTMLAreaElement(getNode()) || (getLayoutObject() && getLayoutObject()->isSVGImage())) { |
// alt |
nameFrom = AXNameFromAttribute; |
if (nameSources) { |
@@ -2342,8 +2342,8 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
} |
// 5.9 table Element |
- if (isHTMLTableElement(node())) { |
- HTMLTableElement* tableElement = toHTMLTableElement(node()); |
+ if (isHTMLTableElement(getNode())) { |
+ HTMLTableElement* tableElement = toHTMLTableElement(getNode()); |
// caption |
nameFrom = AXNameFromCaption; |
@@ -2397,16 +2397,16 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
} |
// Per SVG AAM 1.0's modifications to 2D of this algorithm. |
- if (node()->isSVGElement()) { |
+ if (getNode()->isSVGElement()) { |
nameFrom = AXNameFromRelatedElement; |
if (nameSources) { |
nameSources->append(NameSource(*foundTextAlternative)); |
nameSources->last().type = nameFrom; |
nameSources->last().nativeSource = AXTextFromNativeHTMLTitleElement; |
} |
- ASSERT(node()->isContainerNode()); |
+ ASSERT(getNode()->isContainerNode()); |
Element* title = ElementTraversal::firstChild( |
- toContainerNode(*(node())), |
+ toContainerNode(*(getNode())), |
HasTagName(SVGNames::titleTag)); |
if (title) { |
@@ -2432,14 +2432,14 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
} |
// Fieldset / legend. |
- if (isHTMLFieldSetElement(node())) { |
+ if (isHTMLFieldSetElement(getNode())) { |
nameFrom = AXNameFromRelatedElement; |
if (nameSources) { |
nameSources->append(NameSource(*foundTextAlternative)); |
nameSources->last().type = nameFrom; |
nameSources->last().nativeSource = AXTextFromNativeHTMLLegend; |
} |
- HTMLElement* legend = toHTMLFieldSetElement(node())->legend(); |
+ HTMLElement* legend = toHTMLFieldSetElement(getNode())->legend(); |
if (legend) { |
AXObject* legendAXObject = axObjectCache().getOrCreate(legend); |
// Avoid an infinite loop |
@@ -2466,7 +2466,7 @@ String AXNodeObject::nativeTextAlternative(AXObjectSet& visited, AXNameFrom& nam |
// Document. |
if (isWebArea()) { |
- Document* document = this->document(); |
+ Document* document = this->getDocument(); |
if (document) { |
nameFrom = AXNameFromAttribute; |
if (nameSources) { |
@@ -2542,7 +2542,7 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
if (descriptionSources) |
ASSERT(relatedObjects); |
- if (!node()) |
+ if (!getNode()) |
return String(); |
String description; |
@@ -2578,8 +2578,8 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
} |
HTMLElement* htmlElement = nullptr; |
- if (node()->isHTMLElement()) |
- htmlElement = toHTMLElement(node()); |
+ if (getNode()->isHTMLElement()) |
+ htmlElement = toHTMLElement(getNode()); |
// placeholder, 5.1.2 from: http://rawgit.com/w3c/aria/master/html-aam/html-aam.html |
if (nameFrom != AXNameFromPlaceholder && htmlElement && htmlElement->isTextFormControl()) { |
@@ -2589,7 +2589,7 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
DescriptionSource& source = descriptionSources->last(); |
source.type = descriptionFrom; |
} |
- HTMLElement* element = toHTMLElement(node()); |
+ HTMLElement* element = toHTMLElement(getNode()); |
const AtomicString& placeholder = element->fastGetAttribute(placeholderAttr); |
if (!placeholder.isEmpty()) { |
description = placeholder; |
@@ -2605,8 +2605,8 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
} |
const HTMLInputElement* inputElement = nullptr; |
- if (isHTMLInputElement(node())) |
- inputElement = toHTMLInputElement(node()); |
+ if (isHTMLInputElement(getNode())) |
+ inputElement = toHTMLInputElement(getNode()); |
// value, 5.2.2 from: http://rawgit.com/w3c/aria/master/html-aam/html-aam.html |
if (nameFrom != AXNameFromValue && inputElement && inputElement->isTextButton()) { |
@@ -2629,8 +2629,8 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
} |
// table caption, 5.9.2 from: http://rawgit.com/w3c/aria/master/html-aam/html-aam.html |
- if (nameFrom != AXNameFromCaption && isHTMLTableElement(node())) { |
- HTMLTableElement* tableElement = toHTMLTableElement(node()); |
+ if (nameFrom != AXNameFromCaption && isHTMLTableElement(getNode())) { |
+ HTMLTableElement* tableElement = toHTMLTableElement(getNode()); |
descriptionFrom = AXDescriptionFromRelatedElement; |
if (descriptionSources) { |
@@ -2660,7 +2660,7 @@ String AXNodeObject::description(AXNameFrom nameFrom, AXDescriptionFrom& descrip |
} |
// summary, 5.6.2 from: http://rawgit.com/w3c/aria/master/html-aam/html-aam.html |
- if (nameFrom != AXNameFromContents && isHTMLSummaryElement(node())) { |
+ if (nameFrom != AXNameFromContents && isHTMLSummaryElement(getNode())) { |
descriptionFrom = AXDescriptionFromContents; |
if (descriptionSources) { |
descriptionSources->append(DescriptionSource(foundDescription)); |
@@ -2742,15 +2742,15 @@ String AXNodeObject::placeholder(AXNameFrom nameFrom, AXDescriptionFrom descript |
if (descriptionFrom == AXDescriptionFromPlaceholder) |
return String(); |
- if (!node()) |
+ if (!getNode()) |
return String(); |
String placeholder; |
- if (isHTMLInputElement(*node())) { |
- HTMLInputElement* inputElement = toHTMLInputElement(node()); |
+ if (isHTMLInputElement(*getNode())) { |
+ HTMLInputElement* inputElement = toHTMLInputElement(getNode()); |
placeholder = inputElement->strippedPlaceholder(); |
- } else if (isHTMLTextAreaElement(*node())) { |
- HTMLTextAreaElement* textAreaElement = toHTMLTextAreaElement(node()); |
+ } else if (isHTMLTextAreaElement(*getNode())) { |
+ HTMLTextAreaElement* textAreaElement = toHTMLTextAreaElement(getNode()); |
placeholder = textAreaElement->strippedPlaceholder(); |
} |
return placeholder; |