OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
44 if (fillMode != Timing::FillModeAuto) | 44 if (fillMode != Timing::FillModeAuto) |
45 return fillMode; | 45 return fillMode; |
46 if (isAnimation) | 46 if (isAnimation) |
47 return Timing::FillModeNone; | 47 return Timing::FillModeNone; |
48 return Timing::FillModeBoth; | 48 return Timing::FillModeBoth; |
49 } | 49 } |
50 | 50 |
51 } // namespace | 51 } // namespace |
52 | 52 |
53 TimedItem::TimedItem(const Timing& timing, PassOwnPtr<EventDelegate> eventDelega te) | 53 TimedItem::TimedItem(const Timing& timing, PassOwnPtr<EventDelegate> eventDelega te) |
54 : m_parent(0) | 54 : m_parent(nullptr) |
55 , m_startTime(0) | 55 , m_startTime(0) |
56 , m_player(0) | 56 , m_player(nullptr) |
57 , m_timing(timing) | 57 , m_timing(timing) |
58 , m_eventDelegate(eventDelegate) | 58 , m_eventDelegate(eventDelegate) |
59 , m_calculated() | 59 , m_calculated() |
60 , m_isFirstSample(true) | 60 , m_isFirstSample(true) |
61 , m_needsUpdate(true) | 61 , m_needsUpdate(true) |
62 , m_lastUpdateTime(nullValue()) | 62 , m_lastUpdateTime(nullValue()) |
63 { | 63 { |
64 m_timing.assertValid(); | 64 m_timing.assertValid(); |
65 } | 65 } |
66 | 66 |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
181 const TimedItem::CalculatedTiming& TimedItem::ensureCalculated() const | 181 const TimedItem::CalculatedTiming& TimedItem::ensureCalculated() const |
182 { | 182 { |
183 if (!m_player) | 183 if (!m_player) |
184 return m_calculated; | 184 return m_calculated; |
185 if (m_player->outdated()) | 185 if (m_player->outdated()) |
186 m_player->update(AnimationPlayer::UpdateOnDemand); | 186 m_player->update(AnimationPlayer::UpdateOnDemand); |
187 ASSERT(!m_player->outdated()); | 187 ASSERT(!m_player->outdated()); |
188 return m_calculated; | 188 return m_calculated; |
189 } | 189 } |
190 | 190 |
191 PassRefPtr<TimedItemTiming> TimedItem::timing() | 191 PassRefPtrWillBeRawPtr<TimedItemTiming> TimedItem::timing() |
192 { | 192 { |
193 return TimedItemTiming::create(this); | 193 return TimedItemTiming::create(this); |
194 } | 194 } |
195 | 195 |
196 void TimedItem::trace(Visitor* visitor) | |
197 { | |
198 visitor->trace(m_parent); | |
199 visitor->registerWeakMembers<TimedItem, &TimedItem::processWeakMembers>(this ); | |
200 } | |
201 | |
202 void TimedItem::processWeakMembers(Visitor* visitor) | |
203 { | |
204 if (!visitor->isAlive(m_player) && m_player) | |
Mads Ager (chromium)
2014/04/29 10:29:41
I would turn the condition the other way around an
| |
205 detach(); | |
206 } | |
207 | |
196 } // namespace WebCore | 208 } // namespace WebCore |
OLD | NEW |