Index: content/renderer/accessibility/blink_ax_tree_source.cc |
diff --git a/content/renderer/accessibility/blink_ax_tree_source.cc b/content/renderer/accessibility/blink_ax_tree_source.cc |
index eab8b3462e26349ed3eb479b67c6a588f99fe89b..1936535d32eca779153db6b86bb2eb95de799c1d 100644 |
--- a/content/renderer/accessibility/blink_ax_tree_source.cc |
+++ b/content/renderer/accessibility/blink_ax_tree_source.cc |
@@ -145,6 +145,10 @@ AXContentTreeData BlinkAXTreeSource::GetTreeData() const { |
tree_data.loading_progress = root.estimatedLoadingProgress(); |
tree_data.doctype = "html"; |
+ WebAXObject focus = document.focusedAccessibilityObject(); |
+ if (!focus.isNull()) |
+ tree_data.focus_id = focus.axID(); |
+ |
WebAXObject anchor_object, focus_object; |
int anchor_offset, focus_offset; |
root.selection(anchor_object, anchor_offset, focus_object, focus_offset); |
@@ -402,12 +406,6 @@ void BlinkAXTreeSource::SerializeNode(blink::WebAXObject src, |
if (src.posInSet()) |
dst->AddIntAttribute(ui::AX_ATTR_POS_IN_SET, src.posInSet()); |
- // Treat the active list box item as focused. |
- if (dst->role == ui::AX_ROLE_LIST_BOX_OPTION && |
- src.isSelectedOptionActive()) { |
- dst->state |= (1 << ui::AX_STATE_FOCUSED); |
- } |
- |
if (src.canvasHasFallbackContent()) |
dst->AddBoolAttribute(ui::AX_ATTR_CANVAS_HAS_FALLBACK, true); |