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

Unified Diff: Source/core/animation/Animation.h

Issue 1120003002: [Oilpan] Migrate most classes under core/animations to Oilpan heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Resize expect size of Persistent Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/animation/Animation.h
diff --git a/Source/core/animation/Animation.h b/Source/core/animation/Animation.h
index 9433247fc0d0123e040addddd974c88df979471b..afdd7fb1b45d0691c4fd3c8195e798a31514f4bf 100644
--- a/Source/core/animation/Animation.h
+++ b/Source/core/animation/Animation.h
@@ -51,15 +51,11 @@ class Element;
class ExceptionState;
class WebCompositorAnimationPlayer;
-class CORE_EXPORT Animation final
- : public EventTargetWithInlineData
- , public RefCountedWillBeNoBase<Animation>
- , public ActiveDOMObject
- , public WebCompositorAnimationDelegate
- , public WebCompositorAnimationPlayerClient {
+class CORE_EXPORT Animation final : public RefCountedGarbageCollectedEventTargetWithInlineData<Animation>, public ActiveDOMObject, public WebCompositorAnimationDelegate, public WebCompositorAnimationPlayerClient {
DEFINE_WRAPPERTYPEINFO();
- REFCOUNTED_EVENT_TARGET(Animation);
+ DEFINE_EVENT_TARGET_REFCOUNTING_WILL_BE_REMOVED(RefCountedGarbageCollected<Animation>);
WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(Animation);
+ USING_PRE_FINALIZER(Animation, disposeAnimation);
sof 2015/05/30 11:34:04 No need to add a TODO, but eagerly finalizing Anim
peria 2015/06/01 04:43:01 Done.
public:
enum AnimationPlayState {
Idle,
@@ -70,7 +66,8 @@ public:
};
~Animation();
- static PassRefPtrWillBeRawPtr<Animation> create(AnimationEffect*, AnimationTimeline*);
+ void disposeAnimation();
+ static Animation* create(AnimationEffect*, AnimationTimeline*);
// Returns whether the animation is finished.
bool update(TimingUpdateReason);
@@ -209,12 +206,12 @@ private:
unsigned m_sequenceNumber;
- typedef ScriptPromiseProperty<RawPtrWillBeMember<Animation>, RawPtrWillBeMember<Animation>, Member<DOMException>> AnimationPromise;
- PersistentWillBeMember<AnimationPromise> m_finishedPromise;
- PersistentWillBeMember<AnimationPromise> m_readyPromise;
+ typedef ScriptPromiseProperty<Member<Animation>, Member<Animation>, Member<DOMException>> AnimationPromise;
+ Member<AnimationPromise> m_finishedPromise;
+ Member<AnimationPromise> m_readyPromise;
- RefPtrWillBeMember<AnimationEffect> m_content;
- RawPtrWillBeMember<AnimationTimeline> m_timeline;
+ Member<AnimationEffect> m_content;
+ Member<AnimationTimeline> m_timeline;
// Reflects all pausing, including via pauseForTesting().
bool m_paused;
bool m_held;
@@ -265,7 +262,7 @@ private:
PlayStateUpdateScope(Animation&, TimingUpdateReason, CompositorPendingChange = SetCompositorPending);
~PlayStateUpdateScope();
private:
- RawPtrWillBeMember<Animation> m_animation;
+ Member<Animation> m_animation;
AnimationPlayState m_initialPlayState;
CompositorPendingChange m_compositorPendingChange;
};

Powered by Google App Engine
This is Rietveld 408576698