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

Side by Side Diff: Source/core/animation/VisibilityStyleInterpolation.cpp

Issue 1276183004: Oilpan: Unship oilpan from temporary animation objects (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #include "config.h" 1 #include "config.h"
2 #include "core/animation/VisibilityStyleInterpolation.h" 2 #include "core/animation/VisibilityStyleInterpolation.h"
3 3
4 #include "core/css/CSSPrimitiveValue.h" 4 #include "core/css/CSSPrimitiveValue.h"
5 #include "core/css/resolver/StyleBuilder.h" 5 #include "core/css/resolver/StyleBuilder.h"
6 6
7 namespace blink { 7 namespace blink {
8 8
9 bool VisibilityStyleInterpolation::canCreateFrom(const CSSValue& value) 9 bool VisibilityStyleInterpolation::canCreateFrom(const CSSValue& value)
10 { 10 {
11 return value.isPrimitiveValue() && toCSSPrimitiveValue(value).isValueID(); 11 return value.isPrimitiveValue() && toCSSPrimitiveValue(value).isValueID();
12 } 12 }
13 13
14 bool VisibilityStyleInterpolation::isVisible(const CSSValue& value) 14 bool VisibilityStyleInterpolation::isVisible(const CSSValue& value)
15 { 15 {
16 return toCSSPrimitiveValue(value).getValueID() == CSSValueVisible; 16 return toCSSPrimitiveValue(value).getValueID() == CSSValueVisible;
17 } 17 }
18 18
19 PassOwnPtrWillBeRawPtr<InterpolableValue> VisibilityStyleInterpolation::visibili tyToInterpolableValue(const CSSValue& value) 19 PassOwnPtr<InterpolableValue> VisibilityStyleInterpolation::visibilityToInterpol ableValue(const CSSValue& value)
20 { 20 {
21 ASSERT(value.isPrimitiveValue()); 21 ASSERT(value.isPrimitiveValue());
22 const CSSPrimitiveValue& primitive = toCSSPrimitiveValue(value); 22 const CSSPrimitiveValue& primitive = toCSSPrimitiveValue(value);
23 ASSERT(primitive.isValueID()); 23 ASSERT(primitive.isValueID());
24 const CSSValueID valueID = primitive.getValueID(); 24 const CSSValueID valueID = primitive.getValueID();
25 25
26 if (valueID == CSSValueVisible) { 26 if (valueID == CSSValueVisible) {
27 return InterpolableNumber::create(1.0); 27 return InterpolableNumber::create(1.0);
28 } 28 }
29 return InterpolableNumber::create(0.0); 29 return InterpolableNumber::create(0.0);
30 } 30 }
31 31
32 PassRefPtrWillBeRawPtr<CSSValue> VisibilityStyleInterpolation::interpolableValue ToVisibility(InterpolableValue* value, CSSValueID notVisible) 32 PassRefPtrWillBeRawPtr<CSSValue> VisibilityStyleInterpolation::interpolableValue ToVisibility(InterpolableValue* value, CSSValueID notVisible)
33 { 33 {
34 ASSERT(value->isNumber()); 34 ASSERT(value->isNumber());
35 InterpolableNumber* number = toInterpolableNumber(value); 35 InterpolableNumber* number = toInterpolableNumber(value);
36 36
37 if (number->value() > 0) 37 if (number->value() > 0)
38 return CSSPrimitiveValue::createIdentifier(CSSValueVisible); 38 return CSSPrimitiveValue::createIdentifier(CSSValueVisible);
39 return CSSPrimitiveValue::createIdentifier(notVisible); 39 return CSSPrimitiveValue::createIdentifier(notVisible);
40 } 40 }
41 41
42 void VisibilityStyleInterpolation::apply(StyleResolverState& state) const 42 void VisibilityStyleInterpolation::apply(StyleResolverState& state) const
43 { 43 {
44 StyleBuilder::applyProperty(m_id, state, interpolableValueToVisibility(m_cac hedValue.get(), m_notVisible).get()); 44 StyleBuilder::applyProperty(m_id, state, interpolableValueToVisibility(m_cac hedValue.get(), m_notVisible).get());
45 } 45 }
46 46
47 DEFINE_TRACE(VisibilityStyleInterpolation)
48 {
49 StyleInterpolation::trace(visitor);
50 } 47 }
51 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698