You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are currently a couple of implementation issues with the keyboard navigation for dragging in EuiDataGrid's column selector functionality when using screen readers (specifically tested in NVDA/Windows).
When focusing the drag icon button and starting a drag, the drag item will be re-rendered in a portal (for more context why this happens, see this PR). This re-render causes the focus on the drag button to be lost. As a result NVDA exists Focus mode and the attempt to reorder the dragging item using arrow keys is not possible, as the arrow keys are occupied by the NVDA browse mode navigation.
For mouse user comfort, the drag item text content is also a drag handle. Keyboard focus is disabled via tabindex="-1". This technically requires the drag icon button and text content to use the same dragHandleProps which results in the focus being moved from the button to the text on drag start. (this might be a none-issue if we manually ensure the focus is returned to the button for [1])
The drag icon button only triggers on Space key while buttons use Space and Enter keys.
Usually screen readers automatically switch to focus mode on focusable elements (e.g. this is the case for the switch element of the same draggable item). This is not the case for the drag icon button (custom element) which results in users not being able to press Space to start dragging. It requires users to manually switch to focus move (NVDA: insert + Space) first.
As the column selector uses EUI drag components (EuiDraggable, EuiDroppable) we should review if there are more generic fixes to be made to solve the issues or if other components would require similar updates as well.
The text was updated successfully, but these errors were encountered:
Description
Relates to:
There are currently a couple of implementation issues with the keyboard navigation for dragging in
EuiDataGrid
's column selector functionality when using screen readers (specifically tested in NVDA/Windows).When focusing the drag icon button and starting a drag, the drag item will be re-rendered in a portal (for more context why this happens, see this PR). This re-render causes the focus on the drag button to be lost. As a result NVDA exists Focus mode and the attempt to reorder the dragging item using arrow keys is not possible, as the arrow keys are occupied by the NVDA browse mode navigation.
For mouse user comfort, the drag item text content is also a drag handle. Keyboard focus is disabled via
tabindex="-1"
. This technically requires the drag icon button and text content to use the samedragHandleProps
which results in the focus being moved from the button to the text on drag start. (this might be a none-issue if we manually ensure the focus is returned to the button for [1])The drag icon button only triggers on
Space
key while buttons useSpace
andEnter
keys.Usually screen readers automatically switch to focus mode on focusable elements (e.g. this is the case for the switch element of the same draggable item). This is not the case for the drag icon button (custom element) which results in users not being able to press
Space
to start dragging. It requires users to manually switch to focus move (NVDA:insert + Space
) first.EuiDraggable
as also other custom usages have the same issue (e.g. [Security:Cases page]Drag handle for columns not working with NVDA kibana#205682)Note
As the column selector uses EUI drag components (
EuiDraggable
,EuiDroppable
) we should review if there are more generic fixes to be made to solve the issues or if other components would require similar updates as well.The text was updated successfully, but these errors were encountered: