Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1480)

Unified Diff: content/shell/test_runner/web_ax_object_proxy.cc

Issue 2945773002: Relation properties for Accessibility Object Model phase 1 (Closed)
Patch Set: Fix merge error, format Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/shell/test_runner/web_ax_object_proxy.cc
diff --git a/content/shell/test_runner/web_ax_object_proxy.cc b/content/shell/test_runner/web_ax_object_proxy.cc
index 65f5241477818f23ad893355a65f6f730cd33fc0..e9a49191218860385a7c246a9ad6342c3524c327 100644
--- a/content/shell/test_runner/web_ax_object_proxy.cc
+++ b/content/shell/test_runner/web_ax_object_proxy.cc
@@ -646,8 +646,13 @@ gin::ObjectTemplateBuilder WebAXObjectProxy::GetObjectTemplateBuilder(
.SetMethod("allAttributes", &WebAXObjectProxy::AllAttributes)
.SetMethod("attributesOfChildren",
&WebAXObjectProxy::AttributesOfChildren)
+ .SetMethod("ariaActiveDescendantElement",
+ &WebAXObjectProxy::AriaActiveDescendantElement)
.SetMethod("ariaControlsElementAtIndex",
&WebAXObjectProxy::AriaControlsElementAtIndex)
+ .SetMethod("ariaDetailsElement", &WebAXObjectProxy::AriaDetailsElement)
+ .SetMethod("ariaErrorMessageElement",
+ &WebAXObjectProxy::AriaErrorMessageElement)
.SetMethod("ariaFlowToElementAtIndex",
&WebAXObjectProxy::AriaFlowToElementAtIndex)
.SetMethod("ariaOwnsElementAtIndex",
@@ -1263,6 +1268,16 @@ bool WebAXObjectProxy::IsClickable() {
return accessibility_object_.IsClickable();
}
+v8::Local<v8::Object> WebAXObjectProxy::AriaActiveDescendantElement() {
+ accessibility_object_.UpdateLayoutAndCheckValidity();
+ SparseAttributeAdapter attribute_adapter;
+ accessibility_object_.GetSparseAXAttributes(attribute_adapter);
+ blink::WebAXObject element =
+ attribute_adapter.object_attributes
+ [blink::WebAXObjectAttribute::kAriaActiveDescendant];
+ return factory_->GetOrCreate(element);
+}
+
v8::Local<v8::Object> WebAXObjectProxy::AriaControlsElementAtIndex(
unsigned index) {
accessibility_object_.UpdateLayoutAndCheckValidity();
@@ -1278,6 +1293,26 @@ v8::Local<v8::Object> WebAXObjectProxy::AriaControlsElementAtIndex(
return factory_->GetOrCreate(elements[index]);
}
+v8::Local<v8::Object> WebAXObjectProxy::AriaDetailsElement() {
+ accessibility_object_.UpdateLayoutAndCheckValidity();
+ SparseAttributeAdapter attribute_adapter;
+ accessibility_object_.GetSparseAXAttributes(attribute_adapter);
+ blink::WebAXObject element =
+ attribute_adapter
+ .object_attributes[blink::WebAXObjectAttribute::kAriaDetails];
+ return factory_->GetOrCreate(element);
+}
+
+v8::Local<v8::Object> WebAXObjectProxy::AriaErrorMessageElement() {
+ accessibility_object_.UpdateLayoutAndCheckValidity();
+ SparseAttributeAdapter attribute_adapter;
+ accessibility_object_.GetSparseAXAttributes(attribute_adapter);
+ blink::WebAXObject element =
+ attribute_adapter
+ .object_attributes[blink::WebAXObjectAttribute::kAriaErrorMessage];
+ return factory_->GetOrCreate(element);
+}
+
v8::Local<v8::Object> WebAXObjectProxy::AriaFlowToElementAtIndex(
unsigned index) {
accessibility_object_.UpdateLayoutAndCheckValidity();

Powered by Google App Engine
This is Rietveld 408576698