| Index: components/test_runner/web_ax_object_proxy.cc
|
| diff --git a/components/test_runner/web_ax_object_proxy.cc b/components/test_runner/web_ax_object_proxy.cc
|
| index 1e3de2563968680d7a3af6a0e8e3fd6e3b93531e..be5d6111cf4d80fee5c69b74233cca6280f5e7fc 100644
|
| --- a/components/test_runner/web_ax_object_proxy.cc
|
| +++ b/components/test_runner/web_ax_object_proxy.cc
|
| @@ -535,10 +535,14 @@ WebAXObjectProxy::GetObjectTemplateBuilder(v8::Isolate* isolate) {
|
| &WebAXObjectProxy::SelectionAnchorObject)
|
| .SetProperty("selectionAnchorOffset",
|
| &WebAXObjectProxy::SelectionAnchorOffset)
|
| + .SetProperty("selectionAnchorAffinity",
|
| + &WebAXObjectProxy::SelectionAnchorAffinity)
|
| .SetProperty("selectionFocusObject",
|
| &WebAXObjectProxy::SelectionFocusObject)
|
| .SetProperty("selectionFocusOffset",
|
| &WebAXObjectProxy::SelectionFocusOffset)
|
| + .SetProperty("selectionFocusAffinity",
|
| + &WebAXObjectProxy::SelectionFocusAffinity)
|
| .SetProperty("selectionStart", &WebAXObjectProxy::SelectionStart)
|
| .SetProperty("selectionEnd", &WebAXObjectProxy::SelectionEnd)
|
| .SetProperty("selectionStartLineNumber",
|
| @@ -788,10 +792,12 @@ v8::Local<v8::Value> WebAXObjectProxy::SelectionAnchorObject() {
|
|
|
| blink::WebAXObject anchorObject;
|
| int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| blink::WebAXObject focusObject;
|
| int focusOffset = -1;
|
| - accessibility_object_.selection(anchorObject, anchorOffset,
|
| - focusObject, focusOffset);
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| if (anchorObject.isNull())
|
| return v8::Null(blink::mainThreadIsolate());
|
|
|
| @@ -803,25 +809,44 @@ int WebAXObjectProxy::SelectionAnchorOffset() {
|
|
|
| blink::WebAXObject anchorObject;
|
| int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| blink::WebAXObject focusObject;
|
| int focusOffset = -1;
|
| - accessibility_object_.selection(anchorObject, anchorOffset,
|
| - focusObject, focusOffset);
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| if (anchorOffset < 0)
|
| return -1;
|
|
|
| return anchorOffset;
|
| }
|
|
|
| +std::string WebAXObjectProxy::SelectionAnchorAffinity() {
|
| + accessibility_object_.updateLayoutAndCheckValidity();
|
| +
|
| + blink::WebAXObject anchorObject;
|
| + int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| + blink::WebAXObject focusObject;
|
| + int focusOffset = -1;
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| + return anchorAffinity == blink::WebAXTextAffinityUpstream ?
|
| + "upstream" : "downstream";
|
| +}
|
| +
|
| v8::Local<v8::Value> WebAXObjectProxy::SelectionFocusObject() {
|
| accessibility_object_.updateLayoutAndCheckValidity();
|
|
|
| blink::WebAXObject anchorObject;
|
| int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| blink::WebAXObject focusObject;
|
| int focusOffset = -1;
|
| - accessibility_object_.selection(anchorObject, anchorOffset,
|
| - focusObject, focusOffset);
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| if (focusObject.isNull())
|
| return v8::Null(blink::mainThreadIsolate());
|
|
|
| @@ -833,16 +858,33 @@ int WebAXObjectProxy::SelectionFocusOffset() {
|
|
|
| blink::WebAXObject anchorObject;
|
| int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| blink::WebAXObject focusObject;
|
| int focusOffset = -1;
|
| - accessibility_object_.selection(anchorObject, anchorOffset,
|
| - focusObject, focusOffset);
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| if (focusOffset < 0)
|
| return -1;
|
|
|
| return focusOffset;
|
| }
|
|
|
| +std::string WebAXObjectProxy::SelectionFocusAffinity() {
|
| + accessibility_object_.updateLayoutAndCheckValidity();
|
| +
|
| + blink::WebAXObject anchorObject;
|
| + int anchorOffset = -1;
|
| + blink::WebAXTextAffinity anchorAffinity;
|
| + blink::WebAXObject focusObject;
|
| + int focusOffset = -1;
|
| + blink::WebAXTextAffinity focusAffinity;
|
| + accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity,
|
| + focusObject, focusOffset, focusAffinity);
|
| + return focusAffinity == blink::WebAXTextAffinityUpstream ?
|
| + "upstream" : "downstream";
|
| +}
|
| +
|
| int WebAXObjectProxy::SelectionStart() {
|
| accessibility_object_.updateLayoutAndCheckValidity();
|
| return accessibility_object_.selectionStart();
|
|
|