Bug 171204 - AX: Inconsistent exposure of ARIA "button" role with non-false value of aria-haspopup
Summary: AX: Inconsistent exposure of ARIA "button" role with non-false value of aria-...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Joanmarie Diggs
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-04-23 14:34 PDT by Joanmarie Diggs
Modified: 2017-04-27 09:47 PDT (History)
9 users (show)

See Also:


Attachments
Patch (7.99 KB, patch)
2017-04-27 08:12 PDT, Joanmarie Diggs
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joanmarie Diggs 2017-04-23 14:34:37 PDT
A button where aria-pressed is undefined, and aria-haspopup is true, is exposed as:

  AXRole: AXPopUpButton
  AXSubrole: <nil>
  AXRoleDescription: 'pop up button'

But a button where aria-pressed is undefined, and aria-haspopup is one of the new values allowed in ARIA 1.1 [1] (e.g. aria-haspopup="dialog"), the 

  AXRole: AXButton
  AXSubrole: <nil>
  AXRoleDescription: 'button'

[1] https://rawgit.com/w3c/aria/master/aria/aria.html#aria-haspopup
Comment 1 Radar WebKit Bug Importer 2017-04-23 14:34:58 PDT
<rdar://problem/31779284>
Comment 2 Joanmarie Diggs 2017-04-26 18:00:13 PDT
Chris: If you think that ARIA buttons with a valid, non-false value of aria-haspopup should always be exposed on your platform as:

  AXRole: AXPopUpButton
  AXSubrole: <nil>
  AXRoleDescription: 'pop up button'

Then I have good news: I apparently fixed this bug as a side effect of the changes made for bug 171164.

It looks like we need a layout test for your platform since the above change wasn't caught. Before I do that, could you please confirm that I fixed something on your platform rather than broke it? If I broke it, then I'll of course accompany the new layout test with the restoration of the AXButton mapping.

Thanks!
Comment 3 chris fleizach 2017-04-26 23:47:03 PDT
(In reply to Joanmarie Diggs (irc: joanie) from comment #2)
> Chris: If you think that ARIA buttons with a valid, non-false value of
> aria-haspopup should always be exposed on your platform as:
> 
>   AXRole: AXPopUpButton
>   AXSubrole: <nil>
>   AXRoleDescription: 'pop up button'
> 
> Then I have good news: I apparently fixed this bug as a side effect of the
> changes made for bug 171164.
> 
> It looks like we need a layout test for your platform since the above change
> wasn't caught. Before I do that, could you please confirm that I fixed
> something on your platform rather than broke it? If I broke it, then I'll of
> course accompany the new layout test with the restoration of the AXButton
> mapping.
> 
> Thanks!


I think that sounds correct. Presumably something still pops up  when the button is pressed, so we call it a popup button
Comment 4 Joanmarie Diggs 2017-04-27 08:12:31 PDT
Created attachment 308390 [details]
Patch
Comment 5 WebKit Commit Bot 2017-04-27 09:47:04 PDT
Comment on attachment 308390 [details]
Patch

Clearing flags on attachment: 308390

Committed r215873: <http://trac.webkit.org/changeset/215873>
Comment 6 WebKit Commit Bot 2017-04-27 09:47:05 PDT
All reviewed patches have been landed.  Closing bug.