Skip to content
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: Improve visual feedback on windowing logic (make it smoother) #55114

Open
andrewserong opened this issue Oct 6, 2023 · 0 comments
Labels
[Feature] List View Menu item in the top toolbar to select blocks from a list of links. [Priority] Low Used to indicate that the issue at hand isn't a top priority to address and can be handled later [Type] Enhancement A suggestion for improvement.

Comments

@andrewserong
Copy link
Contributor

andrewserong commented Oct 6, 2023

What problem does this address?

Part of: #49563

The list view sidebar uses windowing logic when the list contains a very large number of items so that they're not rendered as real list view items until they appear within view (or a little outside of it). When they become visible, the current logic is to display all the newly visible ones all at once. This results in a "pop in" effect of these list view items suddenly appearing, which can feel a little sudden or janky depending on your language for things that don't feel smooth. On fast machines, you mightn't even notice it, since it can be pretty quick to render the new items (and where I most noticed it was with selected blocks, which has been fixed in large part over in #54900).

Note: I usually don't find the issue very noticeable, however if I switch my environment to use CPU throttling (4x slowdown) it's more obvious. Here's a screengrab:

2023-10-06.16.05.21.mp4

What is your proposed solution?

I wondered if we can smooth it out by doing something like the following:

  • As list view items are newly within the view, can we iteratively swap each newly exposed item out one at a time, i.e. only reveal the second one once the first one has been mounted. They might be a single frame or so apart. Then, also:
  • Add a tiny opacity animation for these newly exposed list view items so that they smoothly flow in as the user scrolls.

To me, this is likely a low priority issue, so I'll label it accordingly. Please add a comment if this is something you've noticed, though, as I'm curious if it's something that people notice, or if it's something that's on my mind because of working on this component lately 🙂

@andrewserong andrewserong added [Feature] List View Menu item in the top toolbar to select blocks from a list of links. [Type] Enhancement A suggestion for improvement. [Priority] Low Used to indicate that the issue at hand isn't a top priority to address and can be handled later labels Oct 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] List View Menu item in the top toolbar to select blocks from a list of links. [Priority] Low Used to indicate that the issue at hand isn't a top priority to address and can be handled later [Type] Enhancement A suggestion for improvement.
Projects
None yet
Development

No branches or pull requests

1 participant