The UI can feel sluggish when large changes occur (like switching channels), or when there's a lot of emotes to replace. This should probably happen before fixing #5, which needs to additionally handle mutations to element data.
Ideally, the work should be put off until a requestAnimationFrame callback. It may also help to break work up into smaller chunks (<~3ms), though this should try avoid triggering a ton of ugly layout changes if possible.
The UI can feel sluggish when large changes occur (like switching channels), or when there's a lot of emotes to replace. This should probably happen before fixing #5, which needs to additionally handle mutations to element data.
Ideally, the work should be put off until a
requestAnimationFrame
callback. It may also help to break work up into smaller chunks (<~3ms), though this should try avoid triggering a ton of ugly layout changes if possible.