Fix detection of size changes for a composited transform.
A width / height mismatch is what triggered the problem in crbug.com/1149012 which led to the revert of enabling compositing of relative transforms; however it exposed an even deeper problem. We were unconditionally restarting the animation when we noticed there was a size dependency. This will cause the start of the composited animation to lag one frame behind a main frame animation. If the composited animation has a size dependency on a value that is continuously changing on the main thread then were unable to start the animation and it remained locked in a play pending state. We only need to restart the animation if it has already started running and the size dependency changes. Note that with the fix, the animation will still be restarting as the value changes in main, but the next restart won't trigger until the previous start operation has completed thereby preventing stalling of the animation. Bug: 389359 Change-Id: Ifcde6e42089b3f8bced382440de92594de24ba93 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2614365 Commit-Queue: Kevin Ellis <kevers@chromium.org> Reviewed-by:Xida Chen <xidachen@chromium.org> Cr-Commit-Position: refs/heads/master@{#841524}
Showing
Please register or sign in to comment