SAP / fundamental-ngx

Fundamental Library for Angular is SAP Design System Angular component library
https://sap.github.io/fundamental-ngx
Apache License 2.0
263 stars 126 forks source link

bug (platfrom & core) fd-combobox is not ADA compliant #6433

Closed Peeeeeeter closed 2 years ago

Peeeeeeter commented 3 years ago

Is this a bug, enhancement, or feature request?

Bug

Briefly describe your proposal.

For fd-combobox, when user is on focus of the input box, pressing Arrow Down key should open the dropdown.

Which versions of Angular and Fundamental Library for Angular are affected? (If this is a feature request, use current version.)

N/A

If this is a bug, please provide steps for reproducing it.

  1. Open combobox on core or platform
  2. Focus on input box
  3. press Arrow Down Expected: dropdown is opened Actual: drop down is not opened

    Please provide relevant source code if applicable.

    fd-combobox

    Is there anything else we should know?

Betrozov commented 2 years ago

Hi @Peeeeeeter. Could you help me to find docs where this behavior is described? I didn't find any mention of this behavior in Fiori Design Guidelines Also if compare our Combobox with the SAPUI5 Combobox we will see that they have equal behavior.

Betrozov commented 2 years ago

Hi @puru-hk Could you verify it, please?

Peeeeeeter commented 2 years ago

Hi @Betrozov,

The Guidelines you linked I don't see info about Accessibility requirement.

I don't know if It is specifically defined somewhere, but it is an issue reported during the Accessibility testing that our app where using fundamental components doesn't return expected result. This combobox is an example, using arrow down key to expand the dropdown list is expected to be a common behavior, as in google search portal:https://www.google.com

Also I noted that, this component lack the accessbility support to browse the dropdown list by using only keyboard interactions.(if the arrow down key works, this isn't a problem). But per the ACC standard, all interactive UI component that can be triggered by mouse click, like buttons, should have keyboard bindings. In this case, the browsing button(Arrow-down icon) should have keyboard interaction, it needs to be focusable, and on focus should read precisely.

image

Some reference: https://www.w3.org/TR/wai-aria-practices-1.1/examples/combobox/aria1.1pattern/listbox-combo.html

https://wiki.wdf.sap.corp/wiki/display/Acc/Expected+AT+Behaviour+for+Fiori+and+UI5+Components

https://wiki.wdf.sap.corp/wiki/display/Acc/SAP+Accessibility+Standard

puru-hk commented 2 years ago

@Peeeeeeter I check with the SAP Accessibility standard. Dropdown will work only with Alt+down arrow key. It will not work only down arrow key. Please the below explanation from the SAP Accessibility standard.

Test ACC-270.6: Can every interactive UI element be used from the keyboard, mouse, or touch (such as lists, option fields, or checkboxes)?

Follow the test case. For each focused UI element check out how the focused UI element is being operated by keyboard (you may need to read documentation or find out the operating system's behavior) find out which functions are available if you use the mouse pointer or touch screen gestures or vice versa. make use of keyboard keystrokes to operate the UI element using the keyboard, such as: use SPACE or ENTER to trigger an element or select or unselect an item. use arrow keys to navigate focus or text cursor within a UI element use context menu key or Shift+F10 to open a menu, which shows according actions to the focused element/item. use Alt+Down or the F4 key to open a value help dialog check that all functions which the mouse/touch input provides is also available by using keyboard shortcuts/keystrokes. check the focused element's type (control role) and check the keyboard specification to verify consistency

This is not a bug

puru-hk commented 2 years ago

@Peeeeeeter This is not an issue. Hence i'm closing this. Please let me know if you have any quires.

Peeeeeeter commented 2 years ago

@puru-hk I don't think this is not an issue, maybe it is not a bug, but this is an issue that directly reported from customer, it is not something bad to have and it is easy to do so in the library. Customer requested and expected such behavior in our application and it is just not mentioned in the SAP standard, while the same behavior is observed in all other accessibility supported web applications while using JAWS.