SAP / ui5-webcomponents

UI5 Web Components - the enterprise-flavored sugar on top of native APIs! Build SAP Fiori user interfaces with the technology of your choice.
https://sap.github.io/ui5-webcomponents/
Apache License 2.0
1.54k stars 265 forks source link

[ui5-rating-indicator ]: repetitive announcements of accessible name in JAWS VPC Mode #7656

Closed caroline-ferri closed 1 year ago

caroline-ferri commented 1 year ago

Bug Description

In JAWS VPC Mode, VPC focus goes to an invisible element before the first star which results in an extra announcement on the rating indicator's accessible name. This double announcement doesn't occur in openUI5.

Affected Component

Rating Indicator

Expected Behaviour

When the accessible-name property is set, and VPC mode is on, JAWS first focuses on an invisible element before the first star to announce the accessible-name. Then, moving to the next element, the accessible name is read aloud again resulting in a duplicate announcement.

Isolated Example

https://ui5.sap.com/#/entity/sap.ui.webc.main.RatingIndicator/sample/sap.ui.webc.main.sample.RatingIndicator

Steps to Reproduce

  1. Navigate to https://ui5.sap.com/#/entity/sap.ui.webc.main.RatingIndicator/sample/sap.ui.webc.main.sample.RatingIndicator
  2. Start JAWS in VPC mode
  3. move to a rating indicator until you hear it's accessible name
  4. move to the next element
  5. Navigate to https://ui5.sap.com/#/entity/sap.m.RatingIndicator/sample/sap.m.sample.RatingIndicator to compare to openUI5 version
  6. Start JAWS in VPC mode
  7. move to a rating indicator ...

Log Output, Stack Trace or Screenshots

No response

Priority

None

UI5 Web Components Version

1.17.0

Browser

Chrome

Operating System

Mac OS

Additional Context

No response

Organization

SuccessFactors

Declaration

georgimkv commented 1 year ago

Hi @SAP/ui5-webcomponents-topic-rl When the Rating Indicator component has an accessible name (or accessible name ref) set, JAWS on VPC mode will announce the accessible name twice.

WebC with accessibleName https://jsbin.com/fukeduqefe/1/edit?html,output WebC with accessibleNameRef https://jsbin.com/norimudefu/1/edit?html,output OpenUI5 with ariaLabelledBy (labelFor) https://jsbin.com/qirexudovi/edit?html,output

Tested with Windows 11 and JAWS 2023.2307.37.

Would you have a look?

niyap commented 1 year ago

Hello @I585157,

Thanks for sharing your findings!

I have checked the ARIA standard as well as the HTML representation of ui5-rating-indicator web component in order to ensure that our implementation follows all the standards. Also, I tested with NVDA as a screen reader and the issue is not reproducible. What I found out is that the issue is reproducible with native HTML as well: https://jsbin.com/qejequrumu/1/edit?html,output As it is not related to the ui5-rating-indicator implementation and we do not have influence over it, I am closing the issue.

Kind Regards, Niya