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

Issue 19266007: Web Animations: Introduce ActiveAnimations and AnimationStack (Closed)

Created:
7 years, 5 months ago by dstockwell
Modified:
7 years, 5 months ago
Reviewers:
shans, esprehn
CC:
blink-reviews, rjwright, alancutter (OOO until 2018), Mike Lawther (Google), mithro-old, eae+blinkwatch, dglazkov+blink, Timothy Loh, apavlov+blink_chromium.org, adamk+blink_chromium.org, darktears, Steve Block, Eric Willigers
Visibility:
Public.

Description

Web Animations: Introduce ActiveAnimations and AnimationStack The list of active animations has been moved into a new class, ActiveAnimations and is now grouped by timeline, element pairs in AnimationStack. The name 'Stack' relates to the stack of animations which is formed for each element+property pair when animations are composited together. For now there is one AnimationStack formed per Timeline, in future if inherited timelines are introduced it's likely the AnimationStack will be inherited from any root timelines. I expect that there will only be two root timelines, the animation timeline (the 'document timeline'), and a special timeline for CSS Transitions (due to a different application level in the style cascade). A base class, Timeline, will soon be factored out of DocumentTimeline and a new timeline for CSS Transitions will be introduced. BUG=232273 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=154733

Patch Set 1 : #

Total comments: 18

Patch Set 2 : Changes suggested in review. #

Patch Set 3 : Removed maps. Store ActiveAnimations in ElementRareData. #

Total comments: 4

Patch Set 4 : Addressed review feedback. #

Patch Set 5 : Rebased. #

Patch Set 6 : Rebased. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+213 lines, -53 lines) Patch
A Source/core/animation/ActiveAnimations.h View 1 2 1 chunk +55 lines, -0 lines 0 comments Download
M Source/core/animation/Animation.h View 2 chunks +3 lines, -2 lines 0 comments Download
M Source/core/animation/Animation.cpp View 1 2 3 3 chunks +19 lines, -9 lines 0 comments Download
A Source/core/animation/AnimationStack.h View 1 2 1 chunk +63 lines, -0 lines 0 comments Download
M Source/core/animation/DocumentTimeline.h View 1 2 3 2 chunks +8 lines, -0 lines 0 comments Download
M Source/core/animation/Player.h View 2 chunks +2 lines, -0 lines 0 comments Download
M Source/core/animation/Player.cpp View 1 1 chunk +8 lines, -0 lines 0 comments Download
M Source/core/animation/TimedItem.h View 1 4 chunks +14 lines, -3 lines 0 comments Download
M Source/core/animation/TimedItem.cpp View 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/animation/TimedItemTest.cpp View 1 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/core.gypi View 1 2 3 4 2 chunks +2 lines, -0 lines 0 comments Download
M Source/core/css/resolver/SharedStyleFinder.cpp View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/css/resolver/StyleResolver.h View 1 2 3 4 5 2 chunks +2 lines, -1 line 0 comments Download
M Source/core/css/resolver/StyleResolver.cpp View 1 2 3 4 5 4 chunks +9 lines, -8 lines 0 comments Download
M Source/core/dom/Element.h View 1 2 3 4 2 chunks +3 lines, -4 lines 0 comments Download
M Source/core/dom/Element.cpp View 1 2 3 4 5 2 chunks +17 lines, -19 lines 0 comments Download
M Source/core/dom/ElementRareData.h View 1 2 3 4 4 chunks +5 lines, -6 lines 0 comments Download

Messages

Total messages: 16 (0 generated)
dstockwell
shans for web animation specifics, esprehn for the move out of ElementRareData, OWNERS and general ...
7 years, 5 months ago (2013-07-16 10:16:44 UTC) #1
shans
LGTM https://codereview.chromium.org/19266007/diff/9001/Source/core/animation/Animation.cpp File Source/core/animation/Animation.cpp (right): https://codereview.chromium.org/19266007/diff/9001/Source/core/animation/Animation.cpp#newcode75 Source/core/animation/Animation.cpp:75: m_activeInAnimationStack = false; reuse willDetach() here? Or add ...
7 years, 5 months ago (2013-07-17 06:25:28 UTC) #2
esprehn
This looks okay, but you're adding two hash lookups and a hashtable where there used ...
7 years, 5 months ago (2013-07-17 06:48:01 UTC) #3
dstockwell
https://codereview.chromium.org/19266007/diff/9001/Source/core/animation/Animation.cpp File Source/core/animation/Animation.cpp (right): https://codereview.chromium.org/19266007/diff/9001/Source/core/animation/Animation.cpp#newcode75 Source/core/animation/Animation.cpp:75: m_activeInAnimationStack = false; On 2013/07/17 06:25:28, shans wrote: > ...
7 years, 5 months ago (2013-07-17 13:10:19 UTC) #4
esprehn
On 2013/07/17 13:10:19, dstockwell wrote: > ... > > https://codereview.chromium.org/19266007/diff/9001/Source/core/css/resolver/StyleResolver.cpp#newcode1059 > Source/core/css/resolver/StyleResolver.cpp:1059: if > (!animationStack.hasActiveAnimations(target)) ...
7 years, 5 months ago (2013-07-17 13:51:58 UTC) #5
shans
On 2013/07/17 13:51:58, esprehn wrote: > On 2013/07/17 13:10:19, dstockwell wrote: > > ... > ...
7 years, 5 months ago (2013-07-17 21:59:55 UTC) #6
dstockwell
On 2013/07/17 21:59:55, shans wrote: > On 2013/07/17 13:51:58, esprehn wrote: > > On 2013/07/17 ...
7 years, 5 months ago (2013-07-18 03:40:42 UTC) #7
dstockwell
On 2013/07/18 03:40:42, dstockwell wrote: > On 2013/07/17 21:59:55, shans wrote: > > On 2013/07/17 ...
7 years, 5 months ago (2013-07-23 01:13:27 UTC) #8
esprehn
LGTM. Can you remove that extra method that doesn't touch any instance vars though? https://codereview.chromium.org/19266007/diff/37001/Source/core/animation/DocumentTimeline.h ...
7 years, 5 months ago (2013-07-23 01:20:37 UTC) #9
dstockwell
https://codereview.chromium.org/19266007/diff/37001/Source/core/animation/DocumentTimeline.h File Source/core/animation/DocumentTimeline.h (right): https://codereview.chromium.org/19266007/diff/37001/Source/core/animation/DocumentTimeline.h#newcode59 Source/core/animation/DocumentTimeline.h:59: return element->activeAnimations()->defaultStack(); On 2013/07/23 01:20:38, esprehn wrote: > if ...
7 years, 5 months ago (2013-07-23 01:33:00 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dstockwell@chromium.org/19266007/52001
7 years, 5 months ago (2013-07-23 01:48:22 UTC) #11
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=6568
7 years, 5 months ago (2013-07-23 04:52:47 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/19266007/22002
7 years, 5 months ago (2013-07-23 05:11:32 UTC) #13
commit-bot: I haz the power
Change committed as 154733
7 years, 5 months ago (2013-07-23 06:54:15 UTC) #14
cbiesinger
On 2013/07/23 06:54:15, I haz the power (commit-bot) wrote: > Change committed as 154733 So ...
7 years, 5 months ago (2013-07-23 22:07:22 UTC) #15
dstockwell
7 years, 5 months ago (2013-07-24 00:27:10 UTC) #16
Message was sent while issue was closed.
On 2013/07/23 22:07:22, cbiesinger wrote:
> On 2013/07/23 06:54:15, I haz the power (commit-bot) wrote:
> > Change committed as 154733
> 
> So this patch almost certainly made TimedItem.Sanity very very flaky on Mac
dbg:
>
http://test-results.appspot.com/dashboards/flakiness_dashboard.html#group=%25...
> 
> If you could fix that, that'd be great... or mark it as flaky.

Fixing now.

Powered by Google App Engine
This is Rietveld 408576698