Changeset 51670 in webkit


Ignore:
Timestamp:
Dec 3, 2009 6:06:58 PM (14 years ago)
Author:
Chris Fleizach
Message:

AX: VO just says "term" on many web sites
https://bugs.webkit.org/show_bug.cgi?id=32139

Reviewed by Eric Seidel.

WebCore:

Test: platform/mac/accessibility/definition-list-term.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityDescription):

  • accessibility/mac/AccessibilityObjectWrapper.mm:

(-[AccessibilityObjectWrapper subrole]):
(-[AccessibilityObjectWrapper roleDescription]):

WebKitTools:

  • DumpRenderTree/AccessibilityUIElement.cpp:

(getRoleDescriptionCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::roleDescription):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::roleDescription):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::roleDescription):

LayoutTests:

  • platform/mac/accessibility/aria-grouping-roles-expected.txt:
  • platform/mac/accessibility/aria-grouping-roles.html:
  • platform/mac/accessibility/definition-list-term-expected.txt: Added.
  • platform/mac/accessibility/definition-list-term.html: Added.
  • platform/mac/accessibility/lists-expected.txt:
Location:
trunk
Files:
2 added
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r51669 r51670  
     12009-12-03  Chris Fleizach  <cfleizach@apple.com>
     2
     3        Reviewed by Eric Seidel.
     4
     5        AX: VO just says "term" on many web sites
     6        https://bugs.webkit.org/show_bug.cgi?id=32139
     7
     8        * platform/mac/accessibility/aria-grouping-roles-expected.txt:
     9        * platform/mac/accessibility/aria-grouping-roles.html:
     10        * platform/mac/accessibility/definition-list-term-expected.txt: Added.
     11        * platform/mac/accessibility/definition-list-term.html: Added.
     12        * platform/mac/accessibility/lists-expected.txt:
     13
    1142009-12-03  Chris Fleizach  <cfleizach@apple.com>
    215
  • trunk/LayoutTests/platform/mac/accessibility/aria-grouping-roles-expected.txt

    r51262 r51670  
    5454PASS obj.childAtIndex(k).subrole is "AXSubrole: AXDocumentMath"
    5555PASS obj.childAtIndex(k).role is 'AXRole: AXGroup'
    56 PASS obj.childAtIndex(k).description is 'AXDescription: definition'
     56PASS obj.childAtIndex(k).subrole is "AXSubrole: AXDefinition"
    5757PASS successfullyParsed is true
    5858
  • trunk/LayoutTests/platform/mac/accessibility/aria-grouping-roles.html

    r51262 r51670  
    4444                          "AXLandmarkContentInfo", "AXDocument", "AXApplicationLog", "AXLandmarkMain", "AXApplicationMarquee",
    4545                          "AXDocumentNote", "AXLandmarkNavigation", "AXDocumentRegion", "AXLandmarkSearch", "AXApplicationStatus",
    46                           "AXUserInterfaceTooltip", "AXDocumentMath");
     46                          "AXUserInterfaceTooltip", "AXDocumentMath", "AXDefinition");
    4747
    4848          for (var k = 0; k < subroles.length; k++) {
     
    5050              shouldBe("obj.childAtIndex(k).subrole", '"AXSubrole: ' + subroles[k] + '"');
    5151          }
    52 
    53           // Definition role is a plain AXGroup with a AXDescription
    54           shouldBe("obj.childAtIndex(k).role", "'AXRole: AXGroup'");
    55           shouldBe("obj.childAtIndex(k).description", "'AXDescription: definition'");
    56 
    5752    }
    5853
  • trunk/LayoutTests/platform/mac/accessibility/lists-expected.txt

    r46774 r51670  
    250250
    251251AXRole: AXGroup
    252 AXSubrole: (null)
    253 AXRoleDescription: group
     252AXSubrole: AXTerm
     253AXRoleDescription: term
    254254AXChildren: <array of size 1>
    255255AXHelp:
     
    257257AXSize: NSSize: {769, 18}
    258258AXTitle:
    259 AXDescription: term
    260 AXValue:
    261 AXFocused: 0
    262 AXEnabled: 1
    263 AXWindow: <AXGroup>
    264 AXSelectedTextMarkerRange: (null)
    265 AXStartTextMarker: <AXGroup>
    266 AXEndTextMarker: <AXGroup>
    267 AXVisited: 0
    268 AXLinkedUIElements: (null)
    269 AXSelected: 0
    270 AXBlockQuoteLevel: 0
    271 AXTopLevelUIElement: <AXGroup>
    272 
    273 ------------
    274 AXRole: AXGroup
    275 AXSubrole: (null)
    276 AXRoleDescription: group
    277 AXChildren: <array of size 1>
    278 AXHelp:
    279 AXParent: <AXGroup>
    280 AXSize: NSSize: {729, 18}
    281 AXTitle:
    282 AXDescription: definition
    283 AXValue:
    284 AXFocused: 0
    285 AXEnabled: 1
    286 AXWindow: <AXGroup>
    287 AXSelectedTextMarkerRange: (null)
    288 AXStartTextMarker: <AXGroup>
    289 AXEndTextMarker: <AXGroup>
    290 AXVisited: 0
    291 AXLinkedUIElements: (null)
    292 AXSelected: 0
    293 AXBlockQuoteLevel: 0
    294 AXTopLevelUIElement: <AXGroup>
    295 
    296 ------------
    297 AXRole: AXGroup
    298 AXSubrole: (null)
    299 AXRoleDescription: group
     259AXDescription:
     260AXValue:
     261AXFocused: 0
     262AXEnabled: 1
     263AXWindow: <AXGroup>
     264AXSelectedTextMarkerRange: (null)
     265AXStartTextMarker: <AXGroup>
     266AXEndTextMarker: <AXGroup>
     267AXVisited: 0
     268AXLinkedUIElements: (null)
     269AXSelected: 0
     270AXBlockQuoteLevel: 0
     271AXTopLevelUIElement: <AXGroup>
     272
     273------------
     274AXRole: AXGroup
     275AXSubrole: AXDefinition
     276AXRoleDescription: definition
     277AXChildren: <array of size 1>
     278AXHelp:
     279AXParent: <AXGroup>
     280AXSize: NSSize: {729, 18}
     281AXTitle:
     282AXDescription:
     283AXValue:
     284AXFocused: 0
     285AXEnabled: 1
     286AXWindow: <AXGroup>
     287AXSelectedTextMarkerRange: (null)
     288AXStartTextMarker: <AXGroup>
     289AXEndTextMarker: <AXGroup>
     290AXVisited: 0
     291AXLinkedUIElements: (null)
     292AXSelected: 0
     293AXBlockQuoteLevel: 0
     294AXTopLevelUIElement: <AXGroup>
     295
     296------------
     297AXRole: AXGroup
     298AXSubrole: AXTerm
     299AXRoleDescription: term
    300300AXChildren: <array of size 1>
    301301AXHelp:
     
    303303AXSize: NSSize: {769, 18}
    304304AXTitle:
    305 AXDescription: term
    306 AXValue:
    307 AXFocused: 0
    308 AXEnabled: 1
    309 AXWindow: <AXGroup>
    310 AXSelectedTextMarkerRange: (null)
    311 AXStartTextMarker: <AXGroup>
    312 AXEndTextMarker: <AXGroup>
    313 AXVisited: 0
    314 AXLinkedUIElements: (null)
    315 AXSelected: 0
    316 AXBlockQuoteLevel: 0
    317 AXTopLevelUIElement: <AXGroup>
    318 
    319 ------------
    320 AXRole: AXGroup
    321 AXSubrole: (null)
    322 AXRoleDescription: group
    323 AXChildren: <array of size 1>
    324 AXHelp:
    325 AXParent: <AXGroup>
    326 AXSize: NSSize: {729, 18}
    327 AXTitle:
    328 AXDescription: definition
    329 AXValue:
    330 AXFocused: 0
    331 AXEnabled: 1
    332 AXWindow: <AXGroup>
    333 AXSelectedTextMarkerRange: (null)
    334 AXStartTextMarker: <AXGroup>
    335 AXEndTextMarker: <AXGroup>
    336 AXVisited: 0
    337 AXLinkedUIElements: (null)
    338 AXSelected: 0
    339 AXBlockQuoteLevel: 0
    340 AXTopLevelUIElement: <AXGroup>
    341 
    342 ------------
    343 AXRole: AXGroup
    344 AXSubrole: (null)
    345 AXRoleDescription: group
    346 AXChildren: <array of size 1>
    347 AXHelp:
    348 AXParent: <AXGroup>
    349 AXSize: NSSize: {729, 18}
    350 AXTitle:
    351 AXDescription: definition
    352 AXValue:
    353 AXFocused: 0
    354 AXEnabled: 1
    355 AXWindow: <AXGroup>
    356 AXSelectedTextMarkerRange: (null)
    357 AXStartTextMarker: <AXGroup>
    358 AXEndTextMarker: <AXGroup>
    359 AXVisited: 0
    360 AXLinkedUIElements: (null)
    361 AXSelected: 0
    362 AXBlockQuoteLevel: 0
    363 AXTopLevelUIElement: <AXGroup>
    364 
    365 ------------
    366 
    367 
    368 
     305AXDescription:
     306AXValue:
     307AXFocused: 0
     308AXEnabled: 1
     309AXWindow: <AXGroup>
     310AXSelectedTextMarkerRange: (null)
     311AXStartTextMarker: <AXGroup>
     312AXEndTextMarker: <AXGroup>
     313AXVisited: 0
     314AXLinkedUIElements: (null)
     315AXSelected: 0
     316AXBlockQuoteLevel: 0
     317AXTopLevelUIElement: <AXGroup>
     318
     319------------
     320AXRole: AXGroup
     321AXSubrole: AXDefinition
     322AXRoleDescription: definition
     323AXChildren: <array of size 1>
     324AXHelp:
     325AXParent: <AXGroup>
     326AXSize: NSSize: {729, 18}
     327AXTitle:
     328AXDescription:
     329AXValue:
     330AXFocused: 0
     331AXEnabled: 1
     332AXWindow: <AXGroup>
     333AXSelectedTextMarkerRange: (null)
     334AXStartTextMarker: <AXGroup>
     335AXEndTextMarker: <AXGroup>
     336AXVisited: 0
     337AXLinkedUIElements: (null)
     338AXSelected: 0
     339AXBlockQuoteLevel: 0
     340AXTopLevelUIElement: <AXGroup>
     341
     342------------
     343AXRole: AXGroup
     344AXSubrole: AXDefinition
     345AXRoleDescription: definition
     346AXChildren: <array of size 1>
     347AXHelp:
     348AXParent: <AXGroup>
     349AXSize: NSSize: {729, 18}
     350AXTitle:
     351AXDescription:
     352AXValue:
     353AXFocused: 0
     354AXEnabled: 1
     355AXWindow: <AXGroup>
     356AXSelectedTextMarkerRange: (null)
     357AXStartTextMarker: <AXGroup>
     358AXEndTextMarker: <AXGroup>
     359AXVisited: 0
     360AXLinkedUIElements: (null)
     361AXSelected: 0
     362AXBlockQuoteLevel: 0
     363AXTopLevelUIElement: <AXGroup>
     364
     365------------
     366
     367
     368
  • trunk/WebCore/ChangeLog

    r51669 r51670  
     12009-12-03  Chris Fleizach  <cfleizach@apple.com>
     2
     3        Reviewed by Eric Seidel.
     4
     5        AX: VO just says "term" on many web sites
     6        https://bugs.webkit.org/show_bug.cgi?id=32139
     7
     8        Test: platform/mac/accessibility/definition-list-term.html
     9
     10        * accessibility/AccessibilityRenderObject.cpp:
     11        (WebCore::AccessibilityRenderObject::accessibilityDescription):
     12        * accessibility/mac/AccessibilityObjectWrapper.mm:
     13        (-[AccessibilityObjectWrapper subrole]):
     14        (-[AccessibilityObjectWrapper roleDescription]):
     15
    1162009-12-03  Chris Fleizach  <cfleizach@apple.com>
    217
  • trunk/WebCore/accessibility/AccessibilityRenderObject.cpp

    r51669 r51670  
    11171117            return static_cast<HTMLElement*>(owner)->getAttribute(nameAttr);
    11181118    }
    1119    
    1120     if (roleValue() == DefinitionListTermRole)
    1121         return AXDefinitionListTermText();
    1122     if (roleValue() == DefinitionListDefinitionRole)
    1123         return AXDefinitionListDefinitionText();
    1124    
     1119
    11251120    return String();
    11261121}
     
    17621757    if (equalIgnoringCase(ariaSelected, "true"))
    17631758        return true;   
    1764    
    1765     // ARIA says that selection should follow focus unless specifically set otherwise.
    1766     if (!equalIgnoringCase(ariaSelected, "false") && isFocused())
    1767         return true;
    17681759   
    17691760    if (isTabItem() && isTabItemSelected())
  • trunk/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm

    r51669 r51670  
    11911191        case TabPanelRole:
    11921192            return @"AXTabPanel";
    1193 
     1193        case DefinitionListTermRole:
     1194            return @"AXTerm";
     1195        case DefinitionListDefinitionRole:
     1196            return @"AXDefinition";
    11941197        // Default doesn't return anything, so roles defined below can be chosen.
    11951198        default:
     
    12601263            case TabPanelRole:
    12611264                return AXARIAContentGroupText(@"ARIATabPanel");
     1265            case DefinitionListTermRole:
     1266                return AXDefinitionListTermText();
     1267            case DefinitionListDefinitionRole:
     1268                return AXDefinitionListDefinitionText();
    12621269        }
    12631270    }       
  • trunk/WebKitTools/ChangeLog

    r51669 r51670  
     12009-12-03  Chris Fleizach  <cfleizach@apple.com>
     2
     3        Reviewed by Eric Seidel.
     4
     5        AX: VO just says "term" on many web sites
     6        https://bugs.webkit.org/show_bug.cgi?id=32139
     7
     8        * DumpRenderTree/AccessibilityUIElement.cpp:
     9        (getRoleDescriptionCallback):
     10        (AccessibilityUIElement::getJSClass):
     11        * DumpRenderTree/AccessibilityUIElement.h:
     12        * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
     13        (AccessibilityUIElement::roleDescription):
     14        * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
     15        (AccessibilityUIElement::roleDescription):
     16        * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
     17        (AccessibilityUIElement::roleDescription):
     18
    1192009-12-03  Chris Fleizach  <cfleizach@apple.com>
    220
  • trunk/WebKitTools/DumpRenderTree/AccessibilityUIElement.cpp

    r51669 r51670  
    348348}
    349349
     350static JSValueRef getRoleDescriptionCallback(JSContextRef context, JSObjectRef thisObject, JSStringRef propertyName, JSValueRef* exception)
     351{
     352    JSRetainPtr<JSStringRef> roleDesc(Adopt, toAXElement(thisObject)->roleDescription());
     353    return JSValueMakeString(context, roleDesc.get());
     354}
     355
    350356static JSValueRef getTitleCallback(JSContextRef context, JSObjectRef thisObject, JSStringRef propertyName, JSValueRef* exception)
    351357{
     
    508514        { "role", getRoleCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    509515        { "subrole", getSubroleCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
     516        { "roleDescription", getRoleDescriptionCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    510517        { "title", getTitleCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    511518        { "description", getDescriptionCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
  • trunk/WebKitTools/DumpRenderTree/AccessibilityUIElement.h

    r51669 r51670  
    9191    JSStringRef role();
    9292    JSStringRef subrole();
     93    JSStringRef roleDescription();
    9394    JSStringRef title();
    9495    JSStringRef description();
  • trunk/WebKitTools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp

    r51669 r51670  
    162162}
    163163
     164JSStringRef AccessibilityUIElement::roleDescription()
     165{
     166    return 0;
     167}
     168
    164169JSStringRef AccessibilityUIElement::title()
    165170{
  • trunk/WebKitTools/DumpRenderTree/mac/AccessibilityUIElementMac.mm

    r51669 r51670  
    375375}
    376376
     377JSStringRef AccessibilityUIElement::roleDescription()
     378{
     379    NSString* role = descriptionOfValue([m_element accessibilityAttributeValue:NSAccessibilityRoleDescriptionAttribute], m_element);
     380    return concatenateAttributeAndValue(@"AXRoleDescription", role);
     381}
     382
    377383JSStringRef AccessibilityUIElement::title()
    378384{
  • trunk/WebKitTools/DumpRenderTree/win/AccessibilityUIElementWin.cpp

    r51669 r51670  
    177177}
    178178
     179JSStringRef AccessibilityUIElement::roleDescription()
     180{
     181    return 0;
     182}
     183
    179184JSStringRef AccessibilityUIElement::title()
    180185{
Note: See TracChangeset for help on using the changeset viewer.