| Index: Source/core/page/DOMTimer.h
|
| diff --git a/Source/core/page/DOMTimer.h b/Source/core/page/DOMTimer.h
|
| index 496b83a5c95e8f376f21ade5c10efc2812682280..a9c023b897c1402ba52072dd21a263139e91a57e 100644
|
| --- a/Source/core/page/DOMTimer.h
|
| +++ b/Source/core/page/DOMTimer.h
|
| @@ -40,13 +40,19 @@ class ScriptExecutionContext;
|
|
|
| class DOMTimer : public SuspendableTimer {
|
| public:
|
| + enum TimerType {
|
| + TimerTypeTimeout,
|
| + TimerTypeInterval
|
| + };
|
| +
|
| // Creates a new timer owned by the ScriptExecutionContext, starts it and returns its ID.
|
| - static int install(ScriptExecutionContext*, PassOwnPtr<ScheduledAction>, int timeout, bool singleShot);
|
| - static void removeByID(ScriptExecutionContext*, int timeoutID);
|
| + static int install(ScriptExecutionContext*, TimerType, PassOwnPtr<ScheduledAction>, int timeout);
|
| + static void removeByIDIfTypeMatches(ScriptExecutionContext*, TimerType, int timeoutID);
|
|
|
| virtual ~DOMTimer();
|
|
|
| int timeoutID() const;
|
| + TimerType timerType() const;
|
|
|
| // ActiveDOMObject
|
| virtual void contextDestroyed() OVERRIDE;
|
| @@ -62,17 +68,18 @@ private:
|
| friend class ScriptExecutionContext; // For create().
|
|
|
| // Should only be used by ScriptExecutionContext.
|
| - static PassOwnPtr<DOMTimer> create(ScriptExecutionContext* context, PassOwnPtr<ScheduledAction> action, int timeout, bool singleShot, int timeoutID)
|
| + static PassOwnPtr<DOMTimer> create(ScriptExecutionContext* context, TimerType timerType, PassOwnPtr<ScheduledAction> action, int timeout, int timeoutID)
|
| {
|
| - return adoptPtr(new DOMTimer(context, action, timeout, singleShot, timeoutID));
|
| + return adoptPtr(new DOMTimer(context, timerType, action, timeout, timeoutID));
|
| }
|
|
|
| - DOMTimer(ScriptExecutionContext*, PassOwnPtr<ScheduledAction>, int interval, bool singleShot, int timeoutID);
|
| - virtual void fired();
|
| + DOMTimer(ScriptExecutionContext*, TimerType, PassOwnPtr<ScheduledAction>, int interval, int timeoutID);
|
| + virtual void fired() OVERRIDE;
|
|
|
| - // Retuns timer fire time rounded to the next multiple of timer alignment interval.
|
| - virtual double alignedFireTime(double) const;
|
| + // Returns timer fire time rounded to the next multiple of timer alignment interval.
|
| + virtual double alignedFireTime(double) const OVERRIDE;
|
|
|
| + TimerType m_timerType;
|
| int m_timeoutID;
|
| int m_nestingLevel;
|
| OwnPtr<ScheduledAction> m_action;
|
|
|