New issue
Advanced search Search tips

Issue 748221 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug
Team-Accessibility

Blocking:
issue 462133
issue 740827



Sign in to add a comment

[MacViews] VoiceOver announces dialog title twice

Project Member Reported by shrike@chromium.org, Jul 24 2017

Issue description

Chrome Version: 62.0.3165.0
OS: 10.12

What steps will reproduce the problem?
(1) Turn on md-secondary-ui
(2) Turn on VoiceOver
(3) https://permission.site/ -> padlock -> ensure everything is set to Ask. Reload.
(4) Click Notifications

What is the expected result?
VoiceOver should announce "permission.site wants to"

What happens instead?
VoiceOver announces "permission.site wants to, permission.site wants to"

Assigning to ellyjones@ for triage.

 

Comment 1 by tapted@chromium.org, Jul 24 2017

Cc: ellyjo...@chromium.org
Owner: tapted@chromium.org
Status: Assigned (was: Untriaged)
I think we want to share some logic with BrowserAccessibilityCocoa that the WebContent uses to cater for the VoiceOver quirks here

https://cs.chromium.org/chromium/src/content/browser/accessibility/browser_accessibility_cocoa.mm?q=shouldExposeNameInAXValue&sq=package:chromium&l=1295

// Convenience method to determine if this object should expose its
// accessible name in AXValue (as opposed to AXTitle/AXDescription).
- (BOOL)shouldExposeNameInAXValue;


To get word-by-word navigation, the title needs to be in AXValue, but if it also appears in AXTitle VoiceOver gets confused. This probably started with r479582 when fixing word-by-word nav.

Comment 2 by shrike@chromium.org, Jul 26 2017

The message in the dialog is "Show notifications" - VoiceOver also announces this text twice.

Comment 3 by tapted@chromium.org, Jul 27 2017

Status: Started (was: Assigned)
Note the Cocoa bubbles also announce the dialog title twice.

But Views bubbles currently announce it more than twice, due to a combination of things.

And I've also found a nice fix for the "baseline" repeated announcement. So instead of

"window, permission.site wants to, window, permission.site wants to" (Cocoa prompts)

it will say

"Now in, permission.site has a permission request., window, permisison.site wants to"

(the "has a permission request" chosen after discussing with raymes@)

CL -> https://chromium-review.googlesource.com/588808
Blocking: 462133 740827
Project Member

Comment 5 by bugdroid1@chromium.org, Aug 9 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/53acd264e1fb2dd6e5b3ba172319566e9ba24631

commit 53acd264e1fb2dd6e5b3ba172319566e9ba24631
Author: Trent Apted <tapted@chromium.org>
Date: Wed Aug 09 05:57:06 2017

MacViews: Improve a11y announcements for permission bubbles.

When a permission prompt is shown, the current Cocoa bubbles
announce in VoiceOver, "window, permission.site wants to,
window, permission.site wants to".

The toolkit-views bubbles say the same, and then repeat most
of it a second time.

After experiments, it seems we can't manipulate the default
NSWindow properties too much without confusing VoiceOver, but
we can convince VoiceOver to react differently when the bubble
takes focus by pushing some select properties up.

Toolkit-views also needs to cater for the VoiceOver quirk where a
static text role's "name" should appear only in AXValue, and not
AXTitle. Share some code with BrowserAccessibility for this.

With this CL, when toolkit-views permission bubble is shown,
VoiceOver will instead say ""Now in, permission.site has a
permission request., window, permisison.site wants to".

Bug:  748221 
Change-Id: I517a1ea5f0219169f0b29cbbe1e3a001fe2a6601
Reviewed-on: https://chromium-review.googlesource.com/588808
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: Ben Wells <benwells@chromium.org>
Commit-Queue: Trent Apted <tapted@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492842}
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/chrome/app/generated_resources.grd
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/chrome/browser/ui/views/permission_bubble/permission_prompt_impl.cc
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/content/browser/accessibility/browser_accessibility_cocoa.h
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/content/browser/accessibility/browser_accessibility_cocoa.mm
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/ui/accessibility/platform/ax_platform_node_mac.h
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/ui/accessibility/platform/ax_platform_node_mac.mm
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/ui/views/cocoa/native_widget_mac_nswindow.mm
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/ui/views/widget/native_widget_mac_accessibility_unittest.mm
[modify] https://crrev.com/53acd264e1fb2dd6e5b3ba172319566e9ba24631/ui/views/widget/native_widget_mac_unittest.mm

Status: Fixed (was: Started)
This has regressed, I just tested as @tapted asked me to make sure another fix didn't break it, but it's already broken :/
Filed  issue 878193  for the regression.

Sign in to add a comment