Use CSS scroll driven animations rather than JS #729
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We currently rely on JavaScript for scroll driven animations to increase the height of the stage view when pinned to the left, as well as increase the position of the scroll to top/bottom controls so they don't overlay the Jenkins version in the bottom right. This does work, however not particularly well. It can be pretty janky (pretty certain it only applies the transforms on whole pixels rather than sub pixels, and it doesn't poll for scrolling very well.
This PR swaps that over for the hot off the press CSS scroll driven animations. These do away with the jank by letting the browser handle the rendering directly. It's much smoother, and also means less JS code to maintain.
Browser support is limited (just Chrome and Edge, Safari Tech Preview) at the moment, but I think it's worth moving to as this is largely cosmetic rather than impacting users.
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_scroll-driven_animations
https://scroll-driven-animations.style
https://developer.chrome.com/docs/css-ui/scroll-driven-animations
Testing done
Submitter checklist