UNPKG

@progress/wct-a11y-spec

Version:

Contains accessibility and keyboard navigation specification of Telerik and Kendo web components.

49 lines (21 loc) 2.06 kB
## Managing the Focus The TreeList component is a container that consists of 2 logically separated structural elements: - Toolbar (`role="toolbar"`); - Tree Grid (`role="treegrid"`); Each of them is part of the page tab sequence and can be navigated to using the `Tab` key of the keyboard. The `Toolbar` implements the keyboard navigation specification for a ToolBar component. The below description focuses only on the `Tree Grid` part (the element with `role="treegrid"`) of the composite component. ## Tree Grid Focus The Tree Grid is a single tab stop component. Upon focusing the Tree Grid, the initial focus is set to either the previously focused cell (if any), or the first data (`<td>`) cell in the Tree Grid. The change of the focused cell should be implemented using one of the following two techniques: - Roving TabIndex components Practice for managing the focus. Meaning that going through the cells will update the tabindex of the cell. - Active descendant - keeping the focus always on the Data Grid and using the `aria-activedescendant` on the Tree Grid element which points to the id of the currently focused cell. If a cell contains only one focusable element that does not itself require arrow keys for its inner navigation - focus goes to that element instead of its parent `<td>`. If column header cells do not provide functions, such as sort, filter, or column menu, they may not be focusable. If the TreeList contains no items (empty TreeList), the `No data` element in the TreeList should be focused. That applies also for the scenario when the last item in the Grid has been deleted. ## Keyboard Shortcuts The TreeList implements the same keyboard shortcuts as the Grid component. In addition to that, here is the appropriate shortcut to expand/collapse a row: | Shortcut | Behavior | | -------- | -------- | | `Enter` | In expandable and non-editable cell - expands or collapses the item. | ## Resources [ARIA Authoring Practices: Treegrid Pattern](https://www.w3.org/WAI/ARIA/apg/patterns/treegrid/)