Support logical styles for programmatic animations
This patch adds support for logical styles in animations created via element.animate(). Previously, CSSPropertyValueSets were kept for shorthand properties for the sole purpose of serialization of the shorthand property values in getKeyframes. These sets now hold additional usage for reevaluation as needed to resolve naming conflicts or applying updates after a change to the text direction or writing mode. An optimistic strategy is used during the initial parse to minimize computational overhead. A second pass of the property name expansion is only applied when needed. During style update, a change in text direction or writing mode will trigger an update to all running animations. CSS animations and transitions are affected only if modified by a setKeyframes call. Keyframes without logical properties are also uneffected. Any keyframe model with one or more affected keyframes is automatically invalidated and resampled. Bug: 865579 Change-Id: Ia2a34b465fadbb8c8f81aeefa72ea38d52fd97d4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2425167 Commit-Queue: Kevin Ellis <kevers@chromium.org> Reviewed-by:Anders Hartvoll Ruud <andruud@chromium.org> Cr-Commit-Position: refs/heads/master@{#811291}
Showing
This diff is collapsed.
Please register or sign in to comment