[Table]: [Wrong reading order:- In entire application on accessing switch button within Table dialog, UI type is being read in the beginning followed by the column name]
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1.8k
- Forks
- 285
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 59
Description
Describe the bug
In entire application on accessing switch button within Table dialog, UI type is being read in the beginning followed by the column name Wrong reading order. First should read column heading and then switch button.
Here is screenshot:
Speech history :-
Wrong Reading
Switch Off Not pressed Group Order Proposals By
column 2 row 5
Switch Off Not pressed Split Purchase Orders By
Column 3
Expected Reading
Group Order Proposals By Switch Off Not pressed
column 2 row 5
Split Purchase Orders By Switch Off Not pressed
Column 3
<Table
columns={
<>
<TableColumn>
<Label>{t('CRITERIA')}</Label>
</TableColumn>
<TableColumn>
<Label>{t('GROUPING_CRITERIA')}</Label>
</TableColumn>
<TableColumn>
<Label>{t('SPLIT_CRITERIA')}</Label>
</TableColumn>
</>
}
>
{Object.keys(filteredCriteriaMap).map((key, index) => {
return (
<TableRow key={index}>
<TableCell>
<Label>{getLabel({ key: key })}</Label>
</TableCell>
<TableCell>
{parseInt(key) !== 7 ? (
<DialogFormField
name={`orderGroupCriteria.${filteredCriteriaMap[key]}`}
as={SwitchField}
accessibleName={t('GROUPING_CRITERIA')}
switchId={`orderGroupCriteria.${filteredCriteriaMap[key]}`}
onSwitchToggle={() => {
handleOnSwitchToggle({
type: grouping,
code: key,
});
}}
/>
) : null}
</TableCell>
<TableCell>
<DialogFormField
name={`orderSplitCriteria.${filteredCriteriaMap[key]}`}
as={SwitchField}
accessibleName={t('SPLIT_CRITERIA')}
switchId={`orderSplitCriteria.${filteredCriteriaMap[key]}`}
onSwitchToggle={() => {
handleOnSwitchToggle({
type: split,
code: key,
});
}}
disabled={isReadOnly({
code: key,
type: split,
})}
/>
</TableCell>
</TableRow>
);
})}
</Table>
Expected Behaviour
Screen reader should convey name of the UI followed by the name of the UI i.e ‘Group Order Proposals by Switch Off Not pressed’.
Group Order Proposals By Switch Off Not pressed
column 2 row 5
Split Purchase Orders By Switch Off Not pressed
Column 3
Screenshots or Videos
No response
UI5 Web Components for React Version
^1.16.3
UI5 Web Components Version
^1.14.0
Browser
Chrome
Operating System
Windows
Additional Context
No response
Relevant log output
No response
Organization
No response
Declaration
- I’m not disclosing any internal or sensitive information.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the reading order in Chrome with the Table, TableColumn, and SwitchField entry points shown in the issue. Inspect how the table cells and switch accessible names are exposed, then verify that the column label is announced before the switch state and that the reported row and column information remains correct.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100