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
* [#5517] Add `isFocusedCellInView` state to track visibility
- and use this to determine whether or not the entire grid should have a tabindex/be focusable, rather than a simple 'hasFocus' check which doesn't account for virtualization
- Add new mockFocusContext for easier testing for various tests that need to set a focus context
- EuiDataGridCell
- DRY out an `this.isFocusedCell` method
- Call `setIsFocusedCellInView` on mount and on unmount (`setFocusedCell` handles setting true/false on new cell focus)
- Write new unit tests for componentWillUnmount
- Clean up unnecessary uncovered function fallback for this.unsubscribeCell - we're already checking for a falsy value before calling it
* [#5517] Add `onItemsRendered` ref to store currently visible/virtualized refs
- see https://react-window.vercel.app/#/api/FixedSizeGrid for `onItemsRendered` API
- this struck me as the quickest/easiest way to determine which virtualized cells are in view
- I opted to save this as a ref instead of as state as I didn't see the need to cause a rerender
- `focusFirstVisibleInteractiveCell` was split out to its own fn as it will shortly be used elsewhere to fix another focus bug in the grid
* [#4923] Fix focus returning to document body when hiding a column via header
* [#5476] Fix keyboard navigation after hiding a column via header actions
* Add changelog entry
* [PR feedback] Add explanatory comment in unit test
* [PR feedback] Account for empty grids
- gridItemsRendered will be falsey if rowCount is 0 and will cause an error on tab, so we should opt to simply leave focus on the grid body wrapper
* [bug] Handle arrow keydown behavior on sticky header when row 0 is not in view
If a currently focused column gets removed from data grid, the focus isn't captured anymore and returns to the document body.
Data grid should recognize and handle this case by moving the focus to the grid root element.
The text was updated successfully, but these errors were encountered: