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

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

Issue 926963003: InlinedVisitor: Migrate animation to use inlined tracing (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 10 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 #ifndef VisibilityStyleInterpolation_h 1 #ifndef VisibilityStyleInterpolation_h
2 #define VisibilityStyleInterpolation_h 2 #define VisibilityStyleInterpolation_h
3 3
4 #include "core/CSSValueKeywords.h" 4 #include "core/CSSValueKeywords.h"
5 #include "core/animation/StyleInterpolation.h" 5 #include "core/animation/StyleInterpolation.h"
6 #include "core/css/CSSPrimitiveValue.h" 6 #include "core/css/CSSPrimitiveValue.h"
7 7
8 namespace blink { 8 namespace blink {
9 9
10 class VisibilityStyleInterpolation : public StyleInterpolation { 10 class VisibilityStyleInterpolation : public StyleInterpolation {
11 public: 11 public:
12 static PassRefPtrWillBeRawPtr<VisibilityStyleInterpolation> create(const CSS Value& start, const CSSValue& end, CSSPropertyID id) 12 static PassRefPtrWillBeRawPtr<VisibilityStyleInterpolation> create(const CSS Value& start, const CSSValue& end, CSSPropertyID id)
13 { 13 {
14 RefPtrWillBeRawPtr<VisibilityStyleInterpolation> interpolation = adoptRe fWillBeNoop(new VisibilityStyleInterpolation( 14 RefPtrWillBeRawPtr<VisibilityStyleInterpolation> interpolation = adoptRe fWillBeNoop(new VisibilityStyleInterpolation(
15 visibilityToInterpolableValue(start), visibilityToInterpolableValue( end), id)); 15 visibilityToInterpolableValue(start), visibilityToInterpolableValue( end), id));
16 if (!isVisible(start)) { 16 if (!isVisible(start)) {
17 interpolation->m_notVisible = toCSSPrimitiveValue(start).getValueID( ); 17 interpolation->m_notVisible = toCSSPrimitiveValue(start).getValueID( );
18 } else if (!isVisible(end)) { 18 } else if (!isVisible(end)) {
19 interpolation->m_notVisible = toCSSPrimitiveValue(end).getValueID(); 19 interpolation->m_notVisible = toCSSPrimitiveValue(end).getValueID();
20 } 20 }
21 21
22 return interpolation.release(); 22 return interpolation.release();
23 } 23 }
24 24
25 static bool canCreateFrom(const CSSValue&); 25 static bool canCreateFrom(const CSSValue&);
26 static bool isVisible(const CSSValue&); 26 static bool isVisible(const CSSValue&);
27 27
28 virtual void apply(StyleResolverState&) const override; 28 virtual void apply(StyleResolverState&) const override;
29 virtual void trace(Visitor*) override; 29 DECLARE_VIRTUAL_TRACE();
30 30
31 private: 31 private:
32 VisibilityStyleInterpolation(PassOwnPtrWillBeRawPtr<InterpolableValue> start , PassOwnPtrWillBeRawPtr<InterpolableValue> end, CSSPropertyID id) 32 VisibilityStyleInterpolation(PassOwnPtrWillBeRawPtr<InterpolableValue> start , PassOwnPtrWillBeRawPtr<InterpolableValue> end, CSSPropertyID id)
33 : StyleInterpolation(start, end, id) 33 : StyleInterpolation(start, end, id)
34 , m_notVisible(CSSValueVisible) 34 , m_notVisible(CSSValueVisible)
35 { 35 {
36 } 36 }
37 37
38 static PassOwnPtrWillBeRawPtr<InterpolableValue> visibilityToInterpolableVal ue(const CSSValue&); 38 static PassOwnPtrWillBeRawPtr<InterpolableValue> visibilityToInterpolableVal ue(const CSSValue&);
39 static PassRefPtrWillBeRawPtr<CSSValue> interpolableValueToVisibility(Interp olableValue*, CSSValueID); 39 static PassRefPtrWillBeRawPtr<CSSValue> interpolableValueToVisibility(Interp olableValue*, CSSValueID);
40 40
41 CSSValueID m_notVisible; 41 CSSValueID m_notVisible;
42 42
43 friend class AnimationVisibilityStyleInterpolationTest; 43 friend class AnimationVisibilityStyleInterpolationTest;
44 }; 44 };
45 } 45 }
46 46
47 #endif 47 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698