diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/animation/animation_effect.h')
-rw-r--r-- | chromium/third_party/blink/renderer/core/animation/animation_effect.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/chromium/third_party/blink/renderer/core/animation/animation_effect.h b/chromium/third_party/blink/renderer/core/animation/animation_effect.h index 79196027d2c..8e25ca4cebb 100644 --- a/chromium/third_party/blink/renderer/core/animation/animation_effect.h +++ b/chromium/third_party/blink/renderer/core/animation/animation_effect.h @@ -72,7 +72,9 @@ class CORE_EXPORT AnimationEffect : public ScriptWrappable { virtual ~EventDelegate() = default; virtual bool RequiresIterationEvents(const AnimationEffect&) = 0; virtual void OnEventCondition(const AnimationEffect&, Timing::Phase) = 0; - virtual void Trace(blink::Visitor* visitor) {} + virtual bool IsAnimationEventDelegate() const { return false; } + virtual bool IsTransitionEventDelegate() const { return false; } + virtual void Trace(Visitor* visitor) {} }; ~AnimationEffect() override = default; @@ -97,17 +99,22 @@ class CORE_EXPORT AnimationEffect : public ScriptWrappable { return EnsureCalculated().time_to_reverse_effect_change; } double LocalTime() const { - return EnsureCalculated().local_time.value_or(NullValue()); + return EnsureCalculated().local_time.value_or(Timing::NullValue()); } const Timing& SpecifiedTiming() const { return timing_; } void UpdateSpecifiedTiming(const Timing&); + void SetIgnoreCssTimingProperties(); + EventDelegate* GetEventDelegate() { return event_delegate_; } + void SetEventDelegate(EventDelegate* delegate) { event_delegate_ = delegate; } EffectTiming* getTiming() const; ComputedEffectTiming* getComputedTiming() const; void updateTiming(OptionalEffectTiming*, ExceptionState& = ASSERT_NO_EXCEPTION); + double GetCancelTime() const { return cancel_time_; } + void SetCancelTime(double cancel_time) { cancel_time_ = cancel_time; } // Attach/Detach the AnimationEffect from its owning animation. virtual void Attach(AnimationEffectOwner* owner) { owner_ = owner; } @@ -118,7 +125,7 @@ class CORE_EXPORT AnimationEffect : public ScriptWrappable { const Animation* GetAnimationForTesting() const { return GetAnimation(); } - void Trace(blink::Visitor*) override; + void Trace(Visitor*) override; protected: explicit AnimationEffect(const Timing&, EventDelegate* = nullptr); @@ -148,7 +155,7 @@ class CORE_EXPORT AnimationEffect : public ScriptWrappable { virtual AnimationTimeDelta CalculateTimeToEffectChange( bool forwards, base::Optional<double> local_time, - double time_to_next_iteration) const = 0; + AnimationTimeDelta time_to_next_iteration) const = 0; const Animation* GetAnimation() const; Animation* GetAnimation(); @@ -160,6 +167,7 @@ class CORE_EXPORT AnimationEffect : public ScriptWrappable { mutable Timing::CalculatedTiming calculated_; mutable bool needs_update_; mutable base::Optional<double> last_update_time_; + double cancel_time_; const Timing::CalculatedTiming& EnsureCalculated() const; }; |