#ifndef PageAnimator_h
#define PageAnimator_h
+#include "platform/heap/Handle.h"
+
namespace blink {
class LocalFrame;
class Page;
-class PageAnimator {
+class PageAnimator final : public RefCountedWillBeGarbageCollected<PageAnimator> {
public:
- explicit PageAnimator(Page*);
-
+ static PassRefPtrWillBeRawPtr<PageAnimator> create(Page&);
+ void trace(Visitor*);
void scheduleVisualUpdate();
void serviceScriptedAnimations(double monotonicAnimationStartTime);
void updateLayoutAndStyleForPainting(LocalFrame* rootFrame);
private:
- Page* m_page;
+ explicit PageAnimator(Page&);
+
+ RawPtrWillBeMember<Page> m_page;
bool m_animationFramePending;
bool m_servicingAnimations;
bool m_updatingLayoutAndStyleForPainting;