AX: Add AXUIElementCountForSearchPredicate parameterized attribute.
    https://bugs.webkit.org/show_bug.cgi?id=124561

    Reviewed by Chris Fleizach.

    Added test to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute
    works as it should and updated existing test that has exposes this new attribute.

    * platform/mac/accessibility/bounds-for-range-expected.txt:
    * platform/mac/accessibility/search-predicate-element-count-expected.txt: Added.
    * platform/mac/accessibility/search-predicate-element-count.html: Added.

    Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
    to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
    exist on a page, and then fetch them in chunks as needed.

    Test: platform/mac/accessibility/search-predicate-element-count.html

    * accessibility/AccessibilityObject.cpp:
    (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
    * accessibility/AccessibilityObject.h:
    (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
    * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
    (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
    (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
    (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

    Added function to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute works as it should.

    * DumpRenderTree/AccessibilityUIElement.cpp:
    (uiElementCountForSearchPredicateCallback):
    (uiElementForSearchPredicateCallback):
    (AccessibilityUIElement::getJSClass):
    * DumpRenderTree/AccessibilityUIElement.h:
    * DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
    (AccessibilityUIElement::uiElementCountForSearchPredicate):
    * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
    (AccessibilityUIElement::uiElementCountForSearchPredicate):
    * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
    (searchPredicateParameterizedAttributeForSearchCriteria):
    (AccessibilityUIElement::uiElementCountForSearchPredicate):
    (AccessibilityUIElement::uiElementForSearchPredicate):
    * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
    (AccessibilityUIElement::uiElementCountForSearchPredicate):
    * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
    (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
    * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
    * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
    * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
    (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
    * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
    (WTR::searchPredicateParameterizedAttributeForSearchCriteria):
    (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
    (WTR::AccessibilityUIElement::uiElementForSearchPredicate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
20 files changed