| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/test_runner/web_ax_object_proxy.h" | 5 #include "components/test_runner/web_ax_object_proxy.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
| (...skipping 517 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 528 .SetProperty("height", &WebAXObjectProxy::Height) | 528 .SetProperty("height", &WebAXObjectProxy::Height) |
| 529 .SetProperty("intValue", &WebAXObjectProxy::IntValue) | 529 .SetProperty("intValue", &WebAXObjectProxy::IntValue) |
| 530 .SetProperty("minValue", &WebAXObjectProxy::MinValue) | 530 .SetProperty("minValue", &WebAXObjectProxy::MinValue) |
| 531 .SetProperty("maxValue", &WebAXObjectProxy::MaxValue) | 531 .SetProperty("maxValue", &WebAXObjectProxy::MaxValue) |
| 532 .SetProperty("valueDescription", &WebAXObjectProxy::ValueDescription) | 532 .SetProperty("valueDescription", &WebAXObjectProxy::ValueDescription) |
| 533 .SetProperty("childrenCount", &WebAXObjectProxy::ChildrenCount) | 533 .SetProperty("childrenCount", &WebAXObjectProxy::ChildrenCount) |
| 534 .SetProperty("selectionAnchorObject", | 534 .SetProperty("selectionAnchorObject", |
| 535 &WebAXObjectProxy::SelectionAnchorObject) | 535 &WebAXObjectProxy::SelectionAnchorObject) |
| 536 .SetProperty("selectionAnchorOffset", | 536 .SetProperty("selectionAnchorOffset", |
| 537 &WebAXObjectProxy::SelectionAnchorOffset) | 537 &WebAXObjectProxy::SelectionAnchorOffset) |
| 538 .SetProperty("selectionAnchorAffinity", |
| 539 &WebAXObjectProxy::SelectionAnchorAffinity) |
| 538 .SetProperty("selectionFocusObject", | 540 .SetProperty("selectionFocusObject", |
| 539 &WebAXObjectProxy::SelectionFocusObject) | 541 &WebAXObjectProxy::SelectionFocusObject) |
| 540 .SetProperty("selectionFocusOffset", | 542 .SetProperty("selectionFocusOffset", |
| 541 &WebAXObjectProxy::SelectionFocusOffset) | 543 &WebAXObjectProxy::SelectionFocusOffset) |
| 544 .SetProperty("selectionFocusAffinity", |
| 545 &WebAXObjectProxy::SelectionFocusAffinity) |
| 542 .SetProperty("selectionStart", &WebAXObjectProxy::SelectionStart) | 546 .SetProperty("selectionStart", &WebAXObjectProxy::SelectionStart) |
| 543 .SetProperty("selectionEnd", &WebAXObjectProxy::SelectionEnd) | 547 .SetProperty("selectionEnd", &WebAXObjectProxy::SelectionEnd) |
| 544 .SetProperty("selectionStartLineNumber", | 548 .SetProperty("selectionStartLineNumber", |
| 545 &WebAXObjectProxy::SelectionStartLineNumber) | 549 &WebAXObjectProxy::SelectionStartLineNumber) |
| 546 .SetProperty("selectionEndLineNumber", | 550 .SetProperty("selectionEndLineNumber", |
| 547 &WebAXObjectProxy::SelectionEndLineNumber) | 551 &WebAXObjectProxy::SelectionEndLineNumber) |
| 548 .SetProperty("isEnabled", &WebAXObjectProxy::IsEnabled) | 552 .SetProperty("isEnabled", &WebAXObjectProxy::IsEnabled) |
| 549 .SetProperty("isRequired", &WebAXObjectProxy::IsRequired) | 553 .SetProperty("isRequired", &WebAXObjectProxy::IsRequired) |
| 550 .SetProperty("isEditable", &WebAXObjectProxy::IsEditable) | 554 .SetProperty("isEditable", &WebAXObjectProxy::IsEditable) |
| 551 .SetProperty("isRichlyEditable", &WebAXObjectProxy::IsRichlyEditable) | 555 .SetProperty("isRichlyEditable", &WebAXObjectProxy::IsRichlyEditable) |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 781 if (!IsRoot()) | 785 if (!IsRoot()) |
| 782 count = accessibility_object_.childCount(); | 786 count = accessibility_object_.childCount(); |
| 783 return count; | 787 return count; |
| 784 } | 788 } |
| 785 | 789 |
| 786 v8::Local<v8::Value> WebAXObjectProxy::SelectionAnchorObject() { | 790 v8::Local<v8::Value> WebAXObjectProxy::SelectionAnchorObject() { |
| 787 accessibility_object_.updateLayoutAndCheckValidity(); | 791 accessibility_object_.updateLayoutAndCheckValidity(); |
| 788 | 792 |
| 789 blink::WebAXObject anchorObject; | 793 blink::WebAXObject anchorObject; |
| 790 int anchorOffset = -1; | 794 int anchorOffset = -1; |
| 795 blink::WebAXTextAffinity anchorAffinity; |
| 791 blink::WebAXObject focusObject; | 796 blink::WebAXObject focusObject; |
| 792 int focusOffset = -1; | 797 int focusOffset = -1; |
| 793 accessibility_object_.selection(anchorObject, anchorOffset, | 798 blink::WebAXTextAffinity focusAffinity; |
| 794 focusObject, focusOffset); | 799 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 800 focusObject, focusOffset, focusAffinity); |
| 795 if (anchorObject.isNull()) | 801 if (anchorObject.isNull()) |
| 796 return v8::Null(blink::mainThreadIsolate()); | 802 return v8::Null(blink::mainThreadIsolate()); |
| 797 | 803 |
| 798 return factory_->GetOrCreate(anchorObject); | 804 return factory_->GetOrCreate(anchorObject); |
| 799 } | 805 } |
| 800 | 806 |
| 801 int WebAXObjectProxy::SelectionAnchorOffset() { | 807 int WebAXObjectProxy::SelectionAnchorOffset() { |
| 802 accessibility_object_.updateLayoutAndCheckValidity(); | 808 accessibility_object_.updateLayoutAndCheckValidity(); |
| 803 | 809 |
| 804 blink::WebAXObject anchorObject; | 810 blink::WebAXObject anchorObject; |
| 805 int anchorOffset = -1; | 811 int anchorOffset = -1; |
| 812 blink::WebAXTextAffinity anchorAffinity; |
| 806 blink::WebAXObject focusObject; | 813 blink::WebAXObject focusObject; |
| 807 int focusOffset = -1; | 814 int focusOffset = -1; |
| 808 accessibility_object_.selection(anchorObject, anchorOffset, | 815 blink::WebAXTextAffinity focusAffinity; |
| 809 focusObject, focusOffset); | 816 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 817 focusObject, focusOffset, focusAffinity); |
| 810 if (anchorOffset < 0) | 818 if (anchorOffset < 0) |
| 811 return -1; | 819 return -1; |
| 812 | 820 |
| 813 return anchorOffset; | 821 return anchorOffset; |
| 814 } | 822 } |
| 815 | 823 |
| 824 std::string WebAXObjectProxy::SelectionAnchorAffinity() { |
| 825 accessibility_object_.updateLayoutAndCheckValidity(); |
| 826 |
| 827 blink::WebAXObject anchorObject; |
| 828 int anchorOffset = -1; |
| 829 blink::WebAXTextAffinity anchorAffinity; |
| 830 blink::WebAXObject focusObject; |
| 831 int focusOffset = -1; |
| 832 blink::WebAXTextAffinity focusAffinity; |
| 833 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 834 focusObject, focusOffset, focusAffinity); |
| 835 return anchorAffinity == blink::WebAXTextAffinityUpstream ? |
| 836 "upstream" : "downstream"; |
| 837 } |
| 838 |
| 816 v8::Local<v8::Value> WebAXObjectProxy::SelectionFocusObject() { | 839 v8::Local<v8::Value> WebAXObjectProxy::SelectionFocusObject() { |
| 817 accessibility_object_.updateLayoutAndCheckValidity(); | 840 accessibility_object_.updateLayoutAndCheckValidity(); |
| 818 | 841 |
| 819 blink::WebAXObject anchorObject; | 842 blink::WebAXObject anchorObject; |
| 820 int anchorOffset = -1; | 843 int anchorOffset = -1; |
| 844 blink::WebAXTextAffinity anchorAffinity; |
| 821 blink::WebAXObject focusObject; | 845 blink::WebAXObject focusObject; |
| 822 int focusOffset = -1; | 846 int focusOffset = -1; |
| 823 accessibility_object_.selection(anchorObject, anchorOffset, | 847 blink::WebAXTextAffinity focusAffinity; |
| 824 focusObject, focusOffset); | 848 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 849 focusObject, focusOffset, focusAffinity); |
| 825 if (focusObject.isNull()) | 850 if (focusObject.isNull()) |
| 826 return v8::Null(blink::mainThreadIsolate()); | 851 return v8::Null(blink::mainThreadIsolate()); |
| 827 | 852 |
| 828 return factory_->GetOrCreate(focusObject); | 853 return factory_->GetOrCreate(focusObject); |
| 829 } | 854 } |
| 830 | 855 |
| 831 int WebAXObjectProxy::SelectionFocusOffset() { | 856 int WebAXObjectProxy::SelectionFocusOffset() { |
| 832 accessibility_object_.updateLayoutAndCheckValidity(); | 857 accessibility_object_.updateLayoutAndCheckValidity(); |
| 833 | 858 |
| 834 blink::WebAXObject anchorObject; | 859 blink::WebAXObject anchorObject; |
| 835 int anchorOffset = -1; | 860 int anchorOffset = -1; |
| 861 blink::WebAXTextAffinity anchorAffinity; |
| 836 blink::WebAXObject focusObject; | 862 blink::WebAXObject focusObject; |
| 837 int focusOffset = -1; | 863 int focusOffset = -1; |
| 838 accessibility_object_.selection(anchorObject, anchorOffset, | 864 blink::WebAXTextAffinity focusAffinity; |
| 839 focusObject, focusOffset); | 865 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 866 focusObject, focusOffset, focusAffinity); |
| 840 if (focusOffset < 0) | 867 if (focusOffset < 0) |
| 841 return -1; | 868 return -1; |
| 842 | 869 |
| 843 return focusOffset; | 870 return focusOffset; |
| 844 } | 871 } |
| 845 | 872 |
| 873 std::string WebAXObjectProxy::SelectionFocusAffinity() { |
| 874 accessibility_object_.updateLayoutAndCheckValidity(); |
| 875 |
| 876 blink::WebAXObject anchorObject; |
| 877 int anchorOffset = -1; |
| 878 blink::WebAXTextAffinity anchorAffinity; |
| 879 blink::WebAXObject focusObject; |
| 880 int focusOffset = -1; |
| 881 blink::WebAXTextAffinity focusAffinity; |
| 882 accessibility_object_.selection(anchorObject, anchorOffset, anchorAffinity, |
| 883 focusObject, focusOffset, focusAffinity); |
| 884 return focusAffinity == blink::WebAXTextAffinityUpstream ? |
| 885 "upstream" : "downstream"; |
| 886 } |
| 887 |
| 846 int WebAXObjectProxy::SelectionStart() { | 888 int WebAXObjectProxy::SelectionStart() { |
| 847 accessibility_object_.updateLayoutAndCheckValidity(); | 889 accessibility_object_.updateLayoutAndCheckValidity(); |
| 848 return accessibility_object_.selectionStart(); | 890 return accessibility_object_.selectionStart(); |
| 849 } | 891 } |
| 850 | 892 |
| 851 int WebAXObjectProxy::SelectionEnd() { | 893 int WebAXObjectProxy::SelectionEnd() { |
| 852 accessibility_object_.updateLayoutAndCheckValidity(); | 894 accessibility_object_.updateLayoutAndCheckValidity(); |
| 853 return accessibility_object_.selectionEnd(); | 895 return accessibility_object_.selectionEnd(); |
| 854 } | 896 } |
| 855 | 897 |
| (...skipping 796 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1652 v8::Local<v8::Value> value_handle = gin::CreateHandle( | 1694 v8::Local<v8::Value> value_handle = gin::CreateHandle( |
| 1653 isolate, new WebAXObjectProxy(object, this)).ToV8(); | 1695 isolate, new WebAXObjectProxy(object, this)).ToV8(); |
| 1654 if (value_handle.IsEmpty()) | 1696 if (value_handle.IsEmpty()) |
| 1655 return v8::Local<v8::Object>(); | 1697 return v8::Local<v8::Object>(); |
| 1656 v8::Local<v8::Object> handle = value_handle->ToObject(isolate); | 1698 v8::Local<v8::Object> handle = value_handle->ToObject(isolate); |
| 1657 elements_.Append(handle); | 1699 elements_.Append(handle); |
| 1658 return handle; | 1700 return handle; |
| 1659 } | 1701 } |
| 1660 | 1702 |
| 1661 } // namespace test_runner | 1703 } // namespace test_runner |
| OLD | NEW |