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

Unified Diff: third_party/WebKit/Source/core/animation/TypedInterpolationValue.h

Issue 2236193002: WIP: Implement CSS transitions on top of InterpolationTypes instead of AnimatableValues (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@_environmentStyle
Patch Set: Created 4 years, 4 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: third_party/WebKit/Source/core/animation/TypedInterpolationValue.h
diff --git a/third_party/WebKit/Source/core/animation/TypedInterpolationValue.h b/third_party/WebKit/Source/core/animation/TypedInterpolationValue.h
index 28dd675a51b67265dcefc12360f117e1be3f188f..193d028c3c46ad5cbbf8624095e445882ede82c5 100644
--- a/third_party/WebKit/Source/core/animation/TypedInterpolationValue.h
+++ b/third_party/WebKit/Source/core/animation/TypedInterpolationValue.h
@@ -16,15 +16,14 @@ class InterpolationType;
// Represents an interpolated value between an adjacent pair of PropertySpecificKeyframes.
class TypedInterpolationValue {
public:
- static std::unique_ptr<TypedInterpolationValue> create(const InterpolationType& type, std::unique_ptr<InterpolableValue> interpolableValue, PassRefPtr<NonInterpolableValue> nonInterpolableValue = nullptr)
+ static std::unique_ptr<TypedInterpolationValue> create(const InterpolationType& type, InterpolationValue&& value)
{
- return wrapUnique(new TypedInterpolationValue(type, std::move(interpolableValue), nonInterpolableValue));
+ return wrapUnique(new TypedInterpolationValue(type, std::move(value)));
}
std::unique_ptr<TypedInterpolationValue> clone() const
{
- InterpolationValue copy = m_value.clone();
- return create(m_type, std::move(copy.interpolableValue), copy.nonInterpolableValue.release());
+ return create(m_type, m_value.clone());
}
const InterpolationType& type() const { return m_type; }
@@ -35,11 +34,11 @@ public:
InterpolationValue& mutableValue() { return m_value; }
private:
- TypedInterpolationValue(const InterpolationType& type, std::unique_ptr<InterpolableValue> interpolableValue, PassRefPtr<NonInterpolableValue> nonInterpolableValue)
+ TypedInterpolationValue(const InterpolationType& type, InterpolationValue&& value)
: m_type(type)
- , m_value(std::move(interpolableValue), nonInterpolableValue)
+ , m_value(std::move(value))
{
- ASSERT(m_value.interpolableValue);
+ DCHECK(m_value.interpolableValue);
}
const InterpolationType& m_type;

Powered by Google App Engine
This is Rietveld 408576698