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

Side by Side Diff: third_party/WebKit/Source/platform/animation/CompositorScrollOffsetAnimationCurve.h

Issue 2080623002: Revert "Remove OwnPtr from Blink." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef CompositorScrollOffsetAnimationCurve_h 5 #ifndef CompositorScrollOffsetAnimationCurve_h
6 #define CompositorScrollOffsetAnimationCurve_h 6 #define CompositorScrollOffsetAnimationCurve_h
7 7
8 #include "platform/PlatformExport.h" 8 #include "platform/PlatformExport.h"
9 #include "platform/animation/CompositorAnimationCurve.h" 9 #include "platform/animation/CompositorAnimationCurve.h"
10 #include "platform/geometry/FloatPoint.h" 10 #include "platform/geometry/FloatPoint.h"
11 #include "wtf/Noncopyable.h" 11 #include "wtf/Noncopyable.h"
12 #include "wtf/PtrUtil.h" 12 #include "wtf/PassOwnPtr.h"
13 #include <memory>
14 13
15 namespace cc { 14 namespace cc {
16 class ScrollOffsetAnimationCurve; 15 class ScrollOffsetAnimationCurve;
17 } 16 }
18 17
19 namespace blink { 18 namespace blink {
20 19
21 class PLATFORM_EXPORT CompositorScrollOffsetAnimationCurve : public CompositorAn imationCurve { 20 class PLATFORM_EXPORT CompositorScrollOffsetAnimationCurve : public CompositorAn imationCurve {
22 WTF_MAKE_NONCOPYABLE(CompositorScrollOffsetAnimationCurve); 21 WTF_MAKE_NONCOPYABLE(CompositorScrollOffsetAnimationCurve);
23 public: 22 public:
24 enum ScrollDurationBehavior { 23 enum ScrollDurationBehavior {
25 ScrollDurationDeltaBased = 0, 24 ScrollDurationDeltaBased = 0,
26 ScrollDurationConstant, 25 ScrollDurationConstant,
27 ScrollDurationInverseDelta 26 ScrollDurationInverseDelta
28 }; 27 };
29 28
30 static std::unique_ptr<CompositorScrollOffsetAnimationCurve> create(FloatPoi nt targetValue, CompositorScrollOffsetAnimationCurve::ScrollDurationBehavior dur ationBehavior) 29 static PassOwnPtr<CompositorScrollOffsetAnimationCurve> create(FloatPoint ta rgetValue, CompositorScrollOffsetAnimationCurve::ScrollDurationBehavior duration Behavior)
31 { 30 {
32 return wrapUnique(new CompositorScrollOffsetAnimationCurve(targetValue, durationBehavior)); 31 return adoptPtr(new CompositorScrollOffsetAnimationCurve(targetValue, du rationBehavior));
33 } 32 }
34 static std::unique_ptr<CompositorScrollOffsetAnimationCurve> create(cc::Scro llOffsetAnimationCurve* curve) 33 static PassOwnPtr<CompositorScrollOffsetAnimationCurve> create(cc::ScrollOff setAnimationCurve* curve)
35 { 34 {
36 return wrapUnique(new CompositorScrollOffsetAnimationCurve(curve)); 35 return adoptPtr(new CompositorScrollOffsetAnimationCurve(curve));
37 } 36 }
38 37
39 ~CompositorScrollOffsetAnimationCurve() override; 38 ~CompositorScrollOffsetAnimationCurve() override;
40 39
41 void setInitialValue(FloatPoint); 40 void setInitialValue(FloatPoint);
42 FloatPoint getValue(double time) const; 41 FloatPoint getValue(double time) const;
43 double duration() const; 42 double duration() const;
44 FloatPoint targetValue() const; 43 FloatPoint targetValue() const;
45 void applyAdjustment(IntSize); 44 void applyAdjustment(IntSize);
46 void updateTarget(double time, FloatPoint newTarget); 45 void updateTarget(double time, FloatPoint newTarget);
47 46
48 // CompositorAnimationCurve implementation. 47 // CompositorAnimationCurve implementation.
49 std::unique_ptr<cc::AnimationCurve> cloneToAnimationCurve() const override; 48 std::unique_ptr<cc::AnimationCurve> cloneToAnimationCurve() const override;
50 49
51 private: 50 private:
52 CompositorScrollOffsetAnimationCurve(FloatPoint, ScrollDurationBehavior); 51 CompositorScrollOffsetAnimationCurve(FloatPoint, ScrollDurationBehavior);
53 CompositorScrollOffsetAnimationCurve(cc::ScrollOffsetAnimationCurve*); 52 CompositorScrollOffsetAnimationCurve(cc::ScrollOffsetAnimationCurve*);
54 53
55 std::unique_ptr<cc::ScrollOffsetAnimationCurve> m_curve; 54 std::unique_ptr<cc::ScrollOffsetAnimationCurve> m_curve;
56 }; 55 };
57 56
58 } // namespace blink 57 } // namespace blink
59 58
60 #endif // CompositorScrollOffsetAnimationCurve_h 59 #endif // CompositorScrollOffsetAnimationCurve_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698