Bug 67743 - AX: some popup buttons not announced by VoiceOver
Summary: AX: some popup buttons not announced by VoiceOver
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: chris fleizach
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2011-09-07 15:35 PDT by chris fleizach
Modified: 2011-11-01 08:19 PDT (History)
0 users

See Also:


Attachments
patch (7.04 KB, patch)
2011-09-07 15:42 PDT, chris fleizach
darin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description chris fleizach 2011-09-07 15:35:07 PDT
* STEPS TO REPRODUCE
1. http://public.yahoo.com/kloots/menu-button-test.html

* RESULTS
First two buttons behave as expected: "Options popup button"
Second two buttons do not: "Options button"

Expected "Options popup button"

WebKit is exposing the first set as:
AXRole: AXPopupButton
AXHasPopup: YES

WebKit is exposing the second set as:
AXRole: AXButton
AXHasPopup: YES
Comment 1 chris fleizach 2011-09-07 15:35:15 PDT
rdar://9244123
Comment 2 chris fleizach 2011-09-07 15:42:00 PDT
Created attachment 106661 [details]
patch

In the patch, I remove this block

if (node && node->hasTagName(buttonTag))

because it's duplicated only a few lines above that.

This is removed


-    if (cssBox && cssBox->isRenderButton())
-        return toRenderButton(m_renderer)->text();

because it causes the text to be duplicated as the title.
Comment 3 chris fleizach 2011-10-26 15:24:09 PDT
Comment on attachment 106661 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=106661&action=review

> Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1157
>      if (isWebArea()) {

This is where the AXValue of a button can be duplicated in the AXTitle if there's a value attribute used in the button
Comment 4 Darin Adler 2011-10-31 17:11:41 PDT
Comment on attachment 106661 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=106661&action=review

> Source/WebCore/accessibility/AccessibilityRenderObject.cpp:3107
> +        return (ariaHasPopup()) ? PopUpButtonRole : ButtonRole;

Extra parentheses here that are not needed.
Comment 5 chris fleizach 2011-11-01 08:19:36 PDT
http://trac.webkit.org/changeset/98962