| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/animation/CSSNumberInterpolationType.h" | 5 #include "core/animation/CSSNumberInterpolationType.h" |
| 6 | 6 |
| 7 #include "core/animation/NumberPropertyFunctions.h" | 7 #include "core/animation/NumberPropertyFunctions.h" |
| 8 #include "core/css/resolver/StyleBuilder.h" | 8 #include "core/css/resolver/StyleBuilder.h" |
| 9 #include "core/css/resolver/StyleResolverState.h" | 9 #include "core/css/resolver/StyleResolverState.h" |
| 10 #include "wtf/PtrUtil.h" | 10 #include "wtf/PtrUtil.h" |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 69 InterpolationValue CSSNumberInterpolationType::maybeConvertValue(const CSSValue&
value, const StyleResolverState&, ConversionCheckers&) const | 69 InterpolationValue CSSNumberInterpolationType::maybeConvertValue(const CSSValue&
value, const StyleResolverState&, ConversionCheckers&) const |
| 70 { | 70 { |
| 71 if (!value.isPrimitiveValue() || !toCSSPrimitiveValue(value).isNumber()) | 71 if (!value.isPrimitiveValue() || !toCSSPrimitiveValue(value).isNumber()) |
| 72 return nullptr; | 72 return nullptr; |
| 73 return createNumberValue(toCSSPrimitiveValue(value).getDoubleValue()); | 73 return createNumberValue(toCSSPrimitiveValue(value).getDoubleValue()); |
| 74 } | 74 } |
| 75 | 75 |
| 76 InterpolationValue CSSNumberInterpolationType::maybeConvertUnderlyingValue(const
InterpolationEnvironment& environment) const | 76 InterpolationValue CSSNumberInterpolationType::maybeConvertUnderlyingValue(const
InterpolationEnvironment& environment) const |
| 77 { | 77 { |
| 78 double underlyingNumber; | 78 double underlyingNumber; |
| 79 if (!NumberPropertyFunctions::getNumber(cssProperty(), *environment.state().
style(), underlyingNumber)) | 79 if (!NumberPropertyFunctions::getNumber(cssProperty(), environment.style(),
underlyingNumber)) |
| 80 return nullptr; | 80 return nullptr; |
| 81 return createNumberValue(underlyingNumber); | 81 return createNumberValue(underlyingNumber); |
| 82 } | 82 } |
| 83 | 83 |
| 84 void CSSNumberInterpolationType::apply(const InterpolableValue& interpolableValu
e, const NonInterpolableValue*, InterpolationEnvironment& environment) const | 84 void CSSNumberInterpolationType::apply(const InterpolableValue& interpolableValu
e, const NonInterpolableValue*, InterpolationEnvironment& environment) const |
| 85 { | 85 { |
| 86 double clampedNumber = NumberPropertyFunctions::clampNumber(cssProperty(), t
oInterpolableNumber(interpolableValue).value()); | 86 double clampedNumber = NumberPropertyFunctions::clampNumber(cssProperty(), t
oInterpolableNumber(interpolableValue).value()); |
| 87 if (!NumberPropertyFunctions::setNumber(cssProperty(), *environment.state().
style(), clampedNumber)) | 87 if (!NumberPropertyFunctions::setNumber(cssProperty(), environment.style(),
clampedNumber)) |
| 88 StyleBuilder::applyProperty(cssProperty(), environment.state(), *CSSPrim
itiveValue::create(clampedNumber, CSSPrimitiveValue::UnitType::Number)); | 88 StyleBuilder::applyProperty(cssProperty(), environment.state(), *CSSPrim
itiveValue::create(clampedNumber, CSSPrimitiveValue::UnitType::Number)); |
| 89 } | 89 } |
| 90 | 90 |
| 91 } // namespace blink | 91 } // namespace blink |
| OLD | NEW |