-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
List View: windowing try rendering placeholders instead of padding #35571
Conversation
Size Change: +918 B (0%) Total Size: 1.07 MB
ℹ️ View Unchanged
|
Placeholders Run 1:This is actually a pretty interesting result. We see similar performance characteristics to rendering a much smaller number of rows, which suggests there are some severe slowdowns rendering list view blocks. (Perhaps icons or slow selectors?) I'm curious, so I'll do two follow up things here:
Placeholders Run two with 4x post size
Windowing Run with x4 Post size
|
f8f71a1
to
25db3e6
Compare
So I profiled a bit on trunk. This is pretty informal but roughly measured that focus time scales with the number of blocks but is exacerbated by the list view being open. If we render arbitrary content in rows instead of Focusing on a block in the editor re-renders all list-view items.
|
f891610
to
25db3e6
Compare
This was a good exercise, I'll close this one out for now and report findings on the main PR. |
…overscan default to visible items
2f21c9a
to
c6b08e5
Compare
Edit: comparing a second run has similar results, so rendering row placeholders has about a 100ms cost here on the 900 block performance post. Placeholder
padding
|
It was recommended by @talldan to see if we could use placeholders after reviewing #35230. This is a quick sketch to see if there's any performance impact with windowing if we render a fixed number of items in a list vs all items, but using simple placeholder items for items outside of the current window.
Another point of consideration is that this is likely to block framer dragging #34022 I didn't have great results when I tried turning off the layout checks for only some items in that branch.
CleanShot.2021-10-12.at.15.01.30.mp4