support
support copied to clipboard
Virtualized columns
To improve performance with many columns.
Possible approach:
Absolute positioned cells, use IntersectionObserver & ResizeObserver to position cells under un-virtualized headers.
Problems to solve:
- [ ] Row
autoHeight, either it has to render full rows, or it can grow / shrink as you scroll horizontally (could block shrinking) - [ ] Cell renderers changing height by setting
size.heightwont be able to affect row height until the cell is in view. Need to deprecate and replace withgetRowHeight()(existing but does not work above Grid) - [ ] Focusing a cell out of view must delay until inserted by the IntersectionObserver
- [ ] Export likely affected
- [ ] MergeCells seems to run too early, nothing rendered until you scroll
- [ ] RowExpander broken
- [ ] LockRows (or anything that hide headers) must still render headers, although clipped out
- [ ] Recache widths & update when scrollbar visibility changes
Determined to risky, not pursuing this right now. POC available on branch column-virtualization-poc