eui
eui copied to clipboard
[EuiDataGrid] Allow sticky columns
I got some feedback on a particularly wide usage of data grid where some people would like to lock some columns so that when they are forced to horizontally scroll, they get the column(s) that they're most interested in stuck on the screen.
I assume that the same applies to a sticky row in the same way that spreadsheets support both directions.
πSticky columns & rows is on the feature list, but hasn't yet been roadmapped / planned.
@chandlerprall think we need also a a sticky column for Discover. in case there's a time column, it's always first and shouldn't be moveable. the horizontally scrolling feature would be nice, but not necessary for the initial use case
For completeness, @kertal and I talked on Slack about this being a blocker for Discover. The hard requirements will be given some more thought first. While sticky columns is on the list, getting development time against it is the harder part right now so the smallest set of requirements will be much faster to implement. This can provide a good opportunity to start developing an API without building out the entire interaction - e.g. programmatically define a sticky column but don't give the user any menus for managing, etc.
FYI @chandlerprall, found a solution for Discover, no more potential blocker it is:
https://github.com/elastic/kibana/pull/67259#issuecomment-641903996
π Hey there. This issue hasn't had any activity for 180 days. We'll automatically close it if that trend continues for another week. If you feel this issue is still valid and needs attention please let us know with a comment.
Still needed.
π Hey there. This issue hasn't had any activity for 180 days. We'll automatically close it if that trend continues for another week. If you feel this issue is still valid and needs attention please let us know with a comment.
Still valid, I'd say
This seems like a highly valuable feature for larger datagrid displays
π Hey there. This issue hasn't had any activity for 180 days. We'll automatically close it if that trend continues for another week. If you feel this issue is still valid and needs attention please let us know with a comment.
Added skip-stale-check on this one. We'll want this one.
π Hi there - this issue hasn't had any activity in 6 months. If the EUI team has not explicitly expressed that this is something on our roadmap, it's unlikely that we'll pick this issue up. We would sincerely appreciate a PR/community contribution if this is something that matters to you! If not, and there is no further activity on this issue for another 6 months (i.e. it's stale for over a year), the issue will be auto-closed.
Hey! Are you all still interested in adding this feature? Would you be open to a PR contribution? This would be a great addition to the grid and our team would be up for trying to add it.
Personally, I'd say yes. I'd say a PR is always welcome, right @cee-chen. Only keep in mind, this is no small change
Yes, for sticky columns integrated directly into our virtualized grid body, there isn't any official support in our react-window dependency (although it looks like there's some semi-hacky workarounds in the comments).
A cleaner approach might to be to write a custom renderer for the renderCustomGridBody API, which would ditch the virtualization hurdle entirely.
π Hi there - this issue hasn't had any activity in 6 months. If the EUI team has not explicitly expressed that this is something on our roadmap, it's unlikely that we'll pick this issue up. We would sincerely appreciate a PR/community contribution if this is something that matters to you! If not, and there is no further activity on this issue for another 6 months (i.e. it's stale for over a year), the issue will be auto-closed.
Just bumping this one to keep it open π Another use case for this is the new document comparison mode we're adding in Discover, where making the "Field" column sticky would be valuable for users comparing multiple documents that result in horizontal scrolling: