Index: third_party/WebKit/Source/platform/animation/TimingFunction.cpp |
diff --git a/third_party/WebKit/Source/platform/animation/TimingFunction.cpp b/third_party/WebKit/Source/platform/animation/TimingFunction.cpp |
index 13ae1b9584c62fbbceeaef9c44bf80fc93867cd5..a866b1742e72be78fbe24ae10f7d95d23549e62f 100644 |
--- a/third_party/WebKit/Source/platform/animation/TimingFunction.cpp |
+++ b/third_party/WebKit/Source/platform/animation/TimingFunction.cpp |
@@ -22,6 +22,35 @@ std::unique_ptr<cc::TimingFunction> LinearTimingFunction::CloneToCC() const { |
return nullptr; |
} |
+CubicBezierTimingFunction* CubicBezierTimingFunction::Preset( |
+ EaseType ease_type) { |
+ DEFINE_STATIC_REF(CubicBezierTimingFunction, ease, |
+ (AdoptRef(new CubicBezierTimingFunction(EaseType::EASE)))); |
+ DEFINE_STATIC_REF( |
+ CubicBezierTimingFunction, ease_in, |
+ (AdoptRef(new CubicBezierTimingFunction(EaseType::EASE_IN)))); |
+ DEFINE_STATIC_REF( |
+ CubicBezierTimingFunction, ease_out, |
+ (AdoptRef(new CubicBezierTimingFunction(EaseType::EASE_OUT)))); |
+ DEFINE_STATIC_REF( |
+ CubicBezierTimingFunction, ease_in_out, |
+ (AdoptRef(new CubicBezierTimingFunction(EaseType::EASE_IN_OUT)))); |
+ |
+ switch (ease_type) { |
+ case EaseType::EASE: |
+ return ease; |
+ case EaseType::EASE_IN: |
+ return ease_in; |
+ case EaseType::EASE_OUT: |
+ return ease_out; |
+ case EaseType::EASE_IN_OUT: |
+ return ease_in_out; |
+ default: |
+ NOTREACHED(); |
+ return nullptr; |
+ } |
+} |
+ |
String CubicBezierTimingFunction::ToString() const { |
switch (this->GetEaseType()) { |
case CubicBezierTimingFunction::EaseType::EASE: |