static const gchar* webkitAccessibleGetDescription(AtkObject* object) { AccessibilityObject* coreObject = core(object); Node* node = 0; if (coreObject->isAccessibilityRenderObject()) node = coreObject->node(); if (!node || !node->isHTMLElement() || coreObject->ariaRoleAttribute() != UnknownRole) return returnString(coreObject->accessibilityDescription()); // atk_table_get_summary returns an AtkObject. We have no summary object, so expose summary here. if (coreObject->roleValue() == TableRole) { String summary = static_cast<HTMLTableElement*>(node)->summary(); if (!summary.isEmpty()) return returnString(summary); } // The title attribute should be reliably available as the object's descripton. // We do not want to fall back on other attributes in its absence. See bug 25524. String title = toHTMLElement(node)->title(); if (!title.isEmpty()) return returnString(title); return returnString(coreObject->accessibilityDescription()); }
static const gchar* webkit_accessible_get_description(AtkObject* object) { AccessibilityObject* coreObject = core(object); // atk_table_get_summary returns an AtkObject. We have no summary object, so expose summary here. if (coreObject->roleValue() == TableRole && coreObject->ariaRoleAttribute() == UnknownRole) { Node* node = static_cast<AccessibilityRenderObject*>(coreObject)->renderer()->node(); if (node && node->isHTMLElement()) { String summary = static_cast<HTMLTableElement*>(node)->summary(); if (!summary.isEmpty()) return returnString(summary); } } return returnString(coreObject->accessibilityDescription()); }