AnimationWorklet doesn’t respect zoom |
|||||||||
Issue descriptionChrome Version : 70 OS Version: OS X 10.13.6 URLs (if applicable) : https://animation-worklet-article.glitch.me/ What steps will reproduce the problem? 1. Open https://animation-worklet-article.glitch.me/ 2. Zoom in with Cmd+ 3. (code: https://glitch.com/edit/#!/animation-worklet-article?path=index.html:1:0) What is the expected result? Both animations remain synchronized What happens instead of that? Animations diverge Please provide any additional information below. Attach a screenshot if possible. UserAgentString: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36
,
Aug 31
Tried to reproduce the issue on chrome version 68.0.3440.106 and latest 70.0.3537.0 using Mac 10.13.6. Attaching screen-cast for reference. Steps: --------- 1. Launched reported chrome 2. Navigated to given URL "https://animation-worklet-article.glitch.me/ " and zooming the page by clicking c Cmd+ As we are observed that zoom is working normally @Reporter: Could you please review the attached screen-cast and confirm if anything being missed here. Thanks..!
,
Aug 31
,
Sep 5
,
Sep 19
I can reproduce the issue. This requires --enable-experimental-web-platform-feature flag to be on.
,
Sep 19
I think the difference here is that we have special logic to invalidate css animations and cause their composited animation keyframes to be recalculated. Currently this logic bypasses worklet animations. See: CSSAnimations::CalculateCompositorAnimationUpdate In particular how it checks the effective zoom and then invalidates any transform or translate animation. I think a quick fix is to apply the same logic to worklet animations.
,
Sep 20
,
Sep 21
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8 commit dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8 Author: Majid Valipour <majidvp@chromium.org> Date: Fri Sep 21 14:03:47 2018 [animation-worklet] Transfrom related worklet animations should respond to zoom Worklet animation compositing state should be updated when a zoom or viewport resize changes css pixel to dip ratio. The fix is to simply match what we already do for regular animations for worklet animations. TEST=virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html Bug: 879107 Change-Id: I0b74bd8297e83b18afd087247f09339aedcc618b Reviewed-on: https://chromium-review.googlesource.com/1237133 Reviewed-by: Stephen McGruer <smcgruer@chromium.org> Reviewed-by: Majid Valipour <majidvp@chromium.org> Commit-Queue: Majid Valipour <majidvp@chromium.org> Cr-Commit-Position: refs/heads/master@{#593171} [add] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/WebKit/LayoutTests/virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom-expected.html [add] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/WebKit/LayoutTests/virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html [modify] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/blink/renderer/core/animation/css/css_animations.cc [modify] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/blink/renderer/core/animation/worklet_animation_base.h [modify] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/blink/renderer/modules/animationworklet/worklet_animation.cc [modify] https://crrev.com/dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8/third_party/blink/renderer/modules/animationworklet/worklet_animation.h
,
Sep 21
,
Sep 22
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/701add99979b973a34f26478d20372300ba45da8 commit 701add99979b973a34f26478d20372300ba45da8 Author: Matt Menke <mmenke@chromium.org> Date: Sat Sep 22 02:07:59 2018 Revert "[animation-worklet] Transfrom related worklet animations should respond to zoom" This reverts commit dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8. Reason for revert: virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html seems to be failing most of the time on all platforms. Sample failures: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win7_chromium_rel_ng/91172 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/146546 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/193114 Original change's description: > [animation-worklet] Transfrom related worklet animations should respond to zoom > > Worklet animation compositing state should be updated when a zoom or viewport > resize changes css pixel to dip ratio. > > The fix is to simply match what we already do for regular animations for worklet > animations. > > TEST=virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html > > Bug: 879107 > Change-Id: I0b74bd8297e83b18afd087247f09339aedcc618b > Reviewed-on: https://chromium-review.googlesource.com/1237133 > Reviewed-by: Stephen McGruer <smcgruer@chromium.org> > Reviewed-by: Majid Valipour <majidvp@chromium.org> > Commit-Queue: Majid Valipour <majidvp@chromium.org> > Cr-Commit-Position: refs/heads/master@{#593171} TBR=majidvp@chromium.org,smcgruer@chromium.org Change-Id: I9eaf621c931ad9003fd7413aeea9f2ec3a7824a4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 879107 Reviewed-on: https://chromium-review.googlesource.com/1239773 Reviewed-by: Matt Menke <mmenke@chromium.org> Commit-Queue: Matt Menke <mmenke@chromium.org> Cr-Commit-Position: refs/heads/master@{#593414} [delete] https://crrev.com/c67aedd807bf101b829499608b3b3f9ab7064524/third_party/WebKit/LayoutTests/virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom-expected.html [delete] https://crrev.com/c67aedd807bf101b829499608b3b3f9ab7064524/third_party/WebKit/LayoutTests/virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html [modify] https://crrev.com/701add99979b973a34f26478d20372300ba45da8/third_party/blink/renderer/core/animation/css/css_animations.cc [modify] https://crrev.com/701add99979b973a34f26478d20372300ba45da8/third_party/blink/renderer/core/animation/worklet_animation_base.h [modify] https://crrev.com/701add99979b973a34f26478d20372300ba45da8/third_party/blink/renderer/modules/animationworklet/worklet_animation.cc [modify] https://crrev.com/701add99979b973a34f26478d20372300ba45da8/third_party/blink/renderer/modules/animationworklet/worklet_animation.h
,
Sep 25
-> Assigned as it was reverted
,
Sep 26
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/881881a522261bcb2d1598c26b26f439f0821ffb commit 881881a522261bcb2d1598c26b26f439f0821ffb Author: Majid Valipour <majidvp@chromium.org> Date: Wed Sep 26 20:15:27 2018 Reland "[animation-worklet] Transfrom related worklet animations should respond to zoom" This reverts commit 701add99979b973a34f26478d20372300ba45da8. Reason for revert: The tests introduced in original CL was failing because it was not being run with the right flags. This happened because CL landed at the same time as another CL which migrated all the tests. Moving test and updating expectations accordingly. https://chromium-review.googlesource.com/c/chromium/src/+/1237235 Original change's description: > Revert "[animation-worklet] Transfrom related worklet animations should respond to zoom" > > This reverts commit dec72e86b3c1d8dd4de2bb033fc551cc25b63ce8. > > Reason for revert: > virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html seems to be failing most of the time on all platforms. > > Sample failures: > https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win7_chromium_rel_ng/91172 > https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/146546 > https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/193114 > > Original change's description: > > [animation-worklet] Transfrom related worklet animations should respond to zoom > > > > Worklet animation compositing state should be updated when a zoom or viewport > > resize changes css pixel to dip ratio. > > > > The fix is to simply match what we already do for regular animations for worklet > > animations. > > > > TEST=virtual/threaded/fast/animationworklet/worklet-animation-responsive-to-zoom.html > > > > Bug: 879107 > > Change-Id: I0b74bd8297e83b18afd087247f09339aedcc618b > > Reviewed-on: https://chromium-review.googlesource.com/1237133 > > Reviewed-by: Stephen McGruer <smcgruer@chromium.org> > > Reviewed-by: Majid Valipour <majidvp@chromium.org> > > Commit-Queue: Majid Valipour <majidvp@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#593171} > > TBR=majidvp@chromium.org,smcgruer@chromium.org > > Change-Id: I9eaf621c931ad9003fd7413aeea9f2ec3a7824a4 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 879107 > Reviewed-on: https://chromium-review.googlesource.com/1239773 > Reviewed-by: Matt Menke <mmenke@chromium.org> > Commit-Queue: Matt Menke <mmenke@chromium.org> > Cr-Commit-Position: refs/heads/master@{#593414} TBR=mmenke@chromium.org,majidvp@chromium.org,smcgruer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 879107 Change-Id: Ib174c0e257c893d9cd5df3d1e6c5157b04603f44 Reviewed-on: https://chromium-review.googlesource.com/1243572 Reviewed-by: Stephen McGruer <smcgruer@chromium.org> Reviewed-by: Majid Valipour <majidvp@chromium.org> Commit-Queue: Majid Valipour <majidvp@chromium.org> Cr-Commit-Position: refs/heads/master@{#594454} [modify] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/WebKit/LayoutTests/animations/animationworklet/worklet-animation-responsive-to-zoom-expected.html [add] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/WebKit/LayoutTests/animations/animationworklet/worklet-animation-responsive-to-zoom.html [modify] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/blink/renderer/core/animation/css/css_animations.cc [modify] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/blink/renderer/core/animation/worklet_animation_base.h [modify] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/blink/renderer/modules/animationworklet/worklet_animation.cc [modify] https://crrev.com/881881a522261bcb2d1598c26b26f439f0821ffb/third_party/blink/renderer/modules/animationworklet/worklet_animation.h
,
Oct 1
|
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by viswa.karala@chromium.org
, Aug 30