Index: Source/core/animation/KeyframeEffectModel.h |
diff --git a/Source/core/animation/KeyframeEffectModel.h b/Source/core/animation/KeyframeEffectModel.h |
index 8dc00c303c9a98f0957f8d13d0e99319281a6def..65e8c285e8d97298753f03f988038963536503b9 100644 |
--- a/Source/core/animation/KeyframeEffectModel.h |
+++ b/Source/core/animation/KeyframeEffectModel.h |
@@ -56,14 +56,12 @@ class CORE_EXPORT KeyframeEffectModelBase : public EffectModel { |
public: |
// FIXME: Implement accumulation. |
- using PropertySpecificKeyframeVector = WillBeHeapVector<OwnPtrWillBeMember<Keyframe::PropertySpecificKeyframe>>; |
- class PropertySpecificKeyframeGroup : public NoBaseWillBeGarbageCollected<PropertySpecificKeyframeGroup> { |
+ using PropertySpecificKeyframeVector = Vector<OwnPtr<Keyframe::PropertySpecificKeyframe>>; |
+ class PropertySpecificKeyframeGroup { |
public: |
- void appendKeyframe(PassOwnPtrWillBeRawPtr<Keyframe::PropertySpecificKeyframe>); |
+ void appendKeyframe(PassOwnPtr<Keyframe::PropertySpecificKeyframe>); |
const PropertySpecificKeyframeVector& keyframes() const { return m_keyframes; } |
- DECLARE_TRACE(); |
- |
private: |
void removeRedundantKeyframes(); |
bool addSyntheticKeyframeIfRequired(PassRefPtr<TimingFunction> neutralKeyframeEasing); |
@@ -77,7 +75,7 @@ public: |
PropertyHandleSet properties() const; |
- using KeyframeVector = WillBeHeapVector<RefPtrWillBeMember<Keyframe>>; |
+ using KeyframeVector = Vector<RefPtr<Keyframe>>; |
const KeyframeVector& getFrames() const { return m_keyframes; } |
void setFrames(KeyframeVector& keyframes); |
@@ -106,7 +104,7 @@ public: |
// FIXME: This is a hack used to resolve CSSValues to AnimatableValues while we have a valid handle on an element. |
// This should be removed once AnimatableValues are obsolete. |
void forceConversionsToAnimatableValues(Element&, const ComputedStyle* baseStyle); |
- bool updateNeutralKeyframeAnimatableValues(CSSPropertyID, PassRefPtrWillBeRawPtr<AnimatableValue>); |
+ bool updateNeutralKeyframeAnimatableValues(CSSPropertyID, PassRefPtr<AnimatableValue>); |
template<typename T> |
inline void forEachInterpolation(const T& callback) { m_interpolationEffect->forEachInterpolation(callback); } |
@@ -138,8 +136,8 @@ protected: |
// The spec describes filtering the normalized keyframes at sampling time |
// to get the 'property-specific keyframes'. For efficiency, we cache the |
// property-specific lists. |
- using KeyframeGroupMap = WillBeHeapHashMap<PropertyHandle, OwnPtrWillBeMember<PropertySpecificKeyframeGroup>>; |
- mutable OwnPtrWillBeMember<KeyframeGroupMap> m_keyframeGroups; |
+ using KeyframeGroupMap = HashMap<PropertyHandle, OwnPtr<PropertySpecificKeyframeGroup>>; |
+ mutable OwnPtr<KeyframeGroupMap> m_keyframeGroups; |
mutable RefPtrWillBeMember<InterpolationEffect> m_interpolationEffect; |
RefPtr<TimingFunction> m_neutralKeyframeEasing; |
@@ -151,7 +149,7 @@ protected: |
template <class Keyframe> |
class KeyframeEffectModel final : public KeyframeEffectModelBase { |
public: |
- using KeyframeVector = WillBeHeapVector<RefPtrWillBeMember<Keyframe>>; |
+ using KeyframeVector = Vector<RefPtr<Keyframe>>; |
static PassRefPtrWillBeRawPtr<KeyframeEffectModel<Keyframe>> create(const KeyframeVector& keyframes, PassRefPtrWillBeRawPtr<TimingFunction> neutralKeyframeEasing = nullptr) |
{ |
return adoptRefWillBeNoop(new KeyframeEffectModel(keyframes, neutralKeyframeEasing)); |