Re: [w3c/webcomponents] Proposal: a native solution for virtual scrolling (#791)

Thanks @domenic, it's great to hear that Chrome are actively exploring this problem!

@daKmoR pointed me in the direction of virtual-scroller on Friday, and I've just finished watching the Chrome Dev Summit video for it.  It's very interesting stuff, I had a similar idea for abstracting the virtual scrolling part of our grid component, which has some unfortunate coupling in areas like scrolling. At Anaplan, we're using a similar technique for our grid component that scrolls on both axes, with some elements that are fixed on one axis but not on the other.  Some of our users have millions of rows/columns of data for the grid and, at the moment, it uses custom overlay scrollbars that look a bit like the macOS ones. 

From my (admittedly not as in-depth as I would have liked to have time for) look over virtual-scroller, it doesn't seem like it covers the use cases we have. That's fine, though, it's a high-level solution and it's not going to cover all the use cases.  It *does* look like a good solution for our virtual tree component, however.  Since virtual-scroller is proposed as part of the layered API, I feel like there needs to be a proper low-level solution for virtual scrolling to meet one of the layered API's goals:

> They stay layered on top of low-level features, never getting access to new capabilities unavailable to web developers

As my CSSOM proposal explains, and [@valdrinkoshi mentioned in a comment for virtual-scroller](https://github.com/valdrinkoshi/virtual-scroller/issues/111#issuecomment-400837588), browsers have a maximum for scroll widths and heights of elements, as low as 1.5 million pixels in Edge/IE 11, 17.5 million in Firefox and 32.5 million in Chrome. This makes it really awkward to handle millions of rows or columns, it's actually impossible without using the custom scrollbars or sacrificing scroll accuracy.

I joined Anaplan in October, sadly none of our components are open source, otherwise someone from the company might have already been involved in the infinite list study group's discussions. I'll be sure to use this case as an argument going forward if I ever get the chance to push an open source agenda :)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/webcomponents/issues/791#issuecomment-462169289

Received on Sunday, 10 February 2019 20:32:49 UTC