Skip to content
  • jhoneycutt@apple.com's avatar
    MSAA: selected, selectable, extended selectable, and multiple · 8acea080
    jhoneycutt@apple.com authored
    selectable states are not reported
    
    https://bugs.webkit.org/show_bug.cgi?id=33574
    <rdar://problem/7536826>
    
    Reviewed by Darin Adler.
    
    WebCore:
    
    * accessibility/AccessibilityObject.h:
    (WebCore::AccessibilityObject::isMultiSelectable):
    Use the correct function name - the function name overriden by
    and used in AccessiblityRenderObject.
    
    * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
    (setAtkStateSetFromCoreObject):
    Update for function rename.
    (webkit_accessible_selection_select_all_selection):
    Ditto.
    
    WebKit/chromium:
    
    * public/WebAccessibilityObject.h:
    Update for WebCore::AccessibilityObject function rename.
    
    * src/WebAccessibilityObject.cpp:
    (WebKit::WebAccessibilityObject::isMultiSelectable):
    Ditto.
    
    WebKit/win:
    
    * AccessibleBase.cpp:
    (AccessibleBase::get_accState):
    Remove the call to isMultiSelect(). Call the correctly-named
    isMultiSelectable(), and if it returns true, set both the "extended
    selectable" and "multiple selectable" states. Check whether the object
    is selected or selectable, and report those states.
    
    WebKitTools:
    
    * DumpRenderTree/AccessibilityUIElement.cpp:
    (getIsSelectableCallback):
    Return the result of calling isSelectable().
    (getIsMultiSelectableCallback):
    Return the result of calling isMultiSelectable().
    (AccessibilityUIElement::getJSClass):
    Add isSelected and isMultiSelectable properties to the JSClass
    definition.
    
    * DumpRenderTree/AccessibilityUIElement.h:
    Declare isSelectable() and isMultiSelectable().
    
    * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
    (AccessibilityUIElement::isSelectable):
    Stubbed.
    (AccessibilityUIElement::isMultiSelectable):
    Stubbed.
    
    * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
    (AccessibilityUIElement::isSelectable):
    Stubbed.
    (AccessibilityUIElement::isMultiSelectable):
    Stubbed.
    
    * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
    (accessibilityState):
    Get the object's state, and return it.
    (AccessibilityUIElement::isSelected):
    Check the object's selected state.
    (AccessibilityUIElement::isSelectable):
    Check the object's selectable state.
    (AccessibilityUIElement::isMultiSelectable):
    Check the object's extended/multiple selectable state.
    
    LayoutTests:
    
    * accessibility/selection-states-expected.txt: Added.
    
    * accessibility/selection-states.html: Added.
    
    * platform/gtk/Skipped:
    Add new test to skipped list due to stubbed AccessibilityUIElement
    functions.
    
    * platform/mac/Skipped:
    Ditto.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    8acea080