Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(126)

Issue 23874019: Web Animations CSS: Start running animations on the compositor (Closed)

Created:
7 years, 3 months ago by dstockwell
Modified:
7 years, 1 month ago
Reviewers:
shans, Steve Block
CC:
blink-reviews, shans, rjwright, alancutter (OOO until 2018), eae+blinkwatch, dglazkov+blink, leviw+renderwatch, blink-layers+watch_chromium.org, dstockwell, Timothy Loh, jchaffraix+rendering, darktears, Steve Block, dino_apple.com, Eric Willigers, ajuma
Visibility:
Public.

Description

Enables opacity, transform and filter animations to be run by the compositor. CSSPendingAnimations is introduced to manage the synchronized start of compositor and main-thread animations. RenderLayerCompositor is updated to query the Web Animations model for cases where it should composite a layer. ActiveAnimations can be queried by property to test whether animations are running, or running on the compositor. Note that these changes are still behind the WebAnimationsCSS runtime flag. There will be some subsequent changes to address missing functionality: * pauseForTesting is not wired up for animations on the compositor * CSS Transitions do not start from an up to date value when the target is updated * layers are not always composited as they are in the current implementation BUG=311423, 298211 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=162269

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Rebased. #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : #

Patch Set 10 : #

Total comments: 4

Patch Set 11 : #

Total comments: 26

Patch Set 12 : Cleanup isRunning* and shouldCompositeForAnimation #

Total comments: 46

Patch Set 13 : Rebase and revert changes to frame/animation. #

Patch Set 14 : Update TestExpectations #

Patch Set 15 : Lint and address comments in patch sets 10 and 11. #

Patch Set 16 : Address comments in patch set 12. #

Patch Set 17 : Rebased. #

Total comments: 12

Patch Set 18 : Address comments in #17 #

Patch Set 19 : Rebased. #

Patch Set 20 : Rename all the things. #

Patch Set 21 : Rebase and rename hasActiveAnimationOnCompositor to hasActiveAnimationsOnCompositor #

Unified diffs Side-by-side diffs Delta from patch set Stats (+536 lines, -64 lines) Patch
M LayoutTests/TestExpectations View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +1 line, -3 lines 0 comments Download
M LayoutTests/animations/opacity-transform-animation-expected.html View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M Source/core/animation/ActiveAnimations.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +14 lines, -0 lines 0 comments Download
A Source/core/animation/ActiveAnimations.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +102 lines, -0 lines 0 comments Download
M Source/core/animation/Animation.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +13 lines, -0 lines 0 comments Download
M Source/core/animation/Animation.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 5 chunks +57 lines, -3 lines 0 comments Download
M Source/core/animation/AnimationEffect.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/animation/AnimationStack.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/animation/AnimationStack.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +18 lines, -0 lines 0 comments Download
M Source/core/animation/CompositorAnimations.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +5 lines, -4 lines 0 comments Download
M Source/core/animation/CompositorAnimations.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 5 chunks +22 lines, -14 lines 0 comments Download
M Source/core/animation/CompositorAnimationsImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -1 line 0 comments Download
M Source/core/animation/CompositorAnimationsTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 10 chunks +15 lines, -15 lines 0 comments Download
M Source/core/animation/DocumentTimeline.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/animation/DocumentTimeline.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +4 lines, -1 line 0 comments Download
M Source/core/animation/KeyframeAnimationEffect.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/animation/Player.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +5 lines, -0 lines 0 comments Download
M Source/core/animation/Player.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4 chunks +32 lines, -3 lines 0 comments Download
M Source/core/animation/TimedItem.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +3 lines, -3 lines 0 comments Download
M Source/core/animation/css/CSSAnimations.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +3 lines, -0 lines 0 comments Download
M Source/core/animation/css/CSSAnimations.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 4 chunks +34 lines, -2 lines 0 comments Download
A Source/core/animation/css/CSSPendingAnimations.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +54 lines, -0 lines 0 comments Download
A Source/core/animation/css/CSSPendingAnimations.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +74 lines, -0 lines 0 comments Download
M Source/core/core.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +3 lines, -0 lines 0 comments Download
M Source/core/css/CSSComputedStyleDeclaration.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +13 lines, -0 lines 0 comments Download
M Source/core/dom/Document.h View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +3 lines, -0 lines 0 comments Download
M Source/core/dom/Document.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +3 lines, -0 lines 0 comments Download
M Source/core/dom/Element.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +9 lines, -3 lines 0 comments Download
M Source/core/frame/FrameView.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
M Source/core/rendering/CompositedLayerMapping.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +11 lines, -3 lines 0 comments Download
M Source/core/rendering/RenderLayer.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4 chunks +10 lines, -4 lines 0 comments Download
M Source/core/rendering/RenderLayerCompositor.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3 chunks +11 lines, -4 lines 0 comments Download

Messages

Total messages: 17 (0 generated)
dstockwell
Ready for a look: * need to shuffle some of the isCandidate* methods between Player, ...
7 years, 1 month ago (2013-11-17 22:22:42 UTC) #1
shans
Against old patch, but still apply to head. https://codereview.chromium.org/23874019/diff/313001/Source/core/animation/ActiveAnimations.cpp File Source/core/animation/ActiveAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/313001/Source/core/animation/ActiveAnimations.cpp#newcode42 Source/core/animation/ActiveAnimations.cpp:42: return ...
7 years, 1 month ago (2013-11-17 22:55:22 UTC) #2
shans
https://codereview.chromium.org/23874019/diff/573001/Source/core/animation/Animation.cpp File Source/core/animation/Animation.cpp (right): https://codereview.chromium.org/23874019/diff/573001/Source/core/animation/Animation.cpp#newcode152 Source/core/animation/Animation.cpp:152: if (!isCandidateForCompositorAnimation()) If this is part of the this ...
7 years, 1 month ago (2013-11-18 01:02:05 UTC) #3
Steve Block
https://codereview.chromium.org/23874019/diff/573001/Source/core/animation/AnimationStack.cpp File Source/core/animation/AnimationStack.cpp (right): https://codereview.chromium.org/23874019/diff/573001/Source/core/animation/AnimationStack.cpp#newcode52 Source/core/animation/AnimationStack.cpp:52: for (size_t i = 0; i < m_activeAnimations.size(); ++i) ...
7 years, 1 month ago (2013-11-18 05:03:02 UTC) #4
dstockwell
Addressed comments in patch sets 10 and 11. https://codereview.chromium.org/23874019/diff/313001/Source/core/animation/ActiveAnimations.cpp File Source/core/animation/ActiveAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/313001/Source/core/animation/ActiveAnimations.cpp#newcode42 Source/core/animation/ActiveAnimations.cpp:42: return ...
7 years, 1 month ago (2013-11-18 05:30:33 UTC) #5
dstockwell
PTAL, addressed comments in Patch Set 12. https://codereview.chromium.org/23874019/diff/1053002/Source/core/animation/ActiveAnimations.cpp File Source/core/animation/ActiveAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/1053002/Source/core/animation/ActiveAnimations.cpp#newcode89 Source/core/animation/ActiveAnimations.cpp:89: if (property ...
7 years, 1 month ago (2013-11-18 06:11:20 UTC) #6
ajuma
https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/CompositorAnimations.cpp File Source/core/animation/CompositorAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/CompositorAnimations.cpp#newcode156 Source/core/animation/CompositorAnimations.cpp:156: // FIXME: We should know ahead of time whether ...
7 years, 1 month ago (2013-11-18 21:21:16 UTC) #7
dstockwell
https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/CompositorAnimations.cpp File Source/core/animation/CompositorAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/CompositorAnimations.cpp#newcode156 Source/core/animation/CompositorAnimations.cpp:156: // FIXME: We should know ahead of time whether ...
7 years, 1 month ago (2013-11-18 21:34:02 UTC) #8
shans
lgtm https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/ActiveAnimations.cpp File Source/core/animation/ActiveAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/ActiveAnimations.cpp#newcode39 Source/core/animation/ActiveAnimations.cpp:39: bool shouldCompositeForAnimation(const RenderObject& renderer, bool renderViewInCompositingMode) This function ...
7 years, 1 month ago (2013-11-18 21:55:00 UTC) #9
Steve Block
lgtm pending rebase and fix to DocumentTimeline::numberOfActiveAnimationsForTesting()
7 years, 1 month ago (2013-11-18 22:57:53 UTC) #10
dstockwell
https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/ActiveAnimations.cpp File Source/core/animation/ActiveAnimations.cpp (right): https://codereview.chromium.org/23874019/diff/923006/Source/core/animation/ActiveAnimations.cpp#newcode39 Source/core/animation/ActiveAnimations.cpp:39: bool shouldCompositeForAnimation(const RenderObject& renderer, bool renderViewInCompositingMode) On 2013/11/18 21:55:01, ...
7 years, 1 month ago (2013-11-19 02:04:57 UTC) #11
dstockwell
PTAL Renamed everything.
7 years, 1 month ago (2013-11-19 02:28:33 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dstockwell@chromium.org/23874019/1553001
7 years, 1 month ago (2013-11-19 03:30:22 UTC) #13
commit-bot: I haz the power
Retried try job too often on win_layout for step(s) webkit_lint http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_layout&number=15188
7 years, 1 month ago (2013-11-19 05:24:35 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dstockwell@chromium.org/23874019/1553001
7 years, 1 month ago (2013-11-19 05:46:20 UTC) #15
commit-bot: I haz the power
Change committed as 162269
7 years, 1 month ago (2013-11-19 08:02:21 UTC) #16
Mike Lawther (Google)
7 years, 1 month ago (2013-11-20 02:33:47 UTC) #17
Message was sent while issue was closed.
Oops - please ignore Patch Set 22 :( I accidentally uploaded it to this issue.

Powered by Google App Engine
This is Rietveld 408576698