OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 CSSAnimationData_h | 5 #ifndef CSSAnimationData_h |
6 #define CSSAnimationData_h | 6 #define CSSAnimationData_h |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include "core/animation/Timing.h" | 9 #include "core/animation/Timing.h" |
10 #include "core/animation/css/CSSTimingData.h" | 10 #include "core/animation/css/CSSTimingData.h" |
11 #include "core/style/ComputedStyleConstants.h" | 11 #include "core/style/ComputedStyleConstants.h" |
| 12 #include "core/style/DataEquivalency.h" |
12 #include "platform/wtf/PtrUtil.h" | 13 #include "platform/wtf/PtrUtil.h" |
13 | 14 |
14 namespace blink { | 15 namespace blink { |
15 | 16 |
16 class CSSAnimationData final : public CSSTimingData { | 17 class CSSAnimationData final : public CSSTimingData { |
17 public: | 18 public: |
18 static std::unique_ptr<CSSAnimationData> Create() { | 19 static std::unique_ptr<CSSAnimationData> Create() { |
19 return WTF::WrapUnique(new CSSAnimationData); | 20 return WTF::WrapUnique(new CSSAnimationData); |
20 } | 21 } |
21 | 22 |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 CSSAnimationData(); | 60 CSSAnimationData(); |
60 explicit CSSAnimationData(const CSSAnimationData&); | 61 explicit CSSAnimationData(const CSSAnimationData&); |
61 | 62 |
62 Vector<AtomicString> name_list_; | 63 Vector<AtomicString> name_list_; |
63 Vector<double> iteration_count_list_; | 64 Vector<double> iteration_count_list_; |
64 Vector<Timing::PlaybackDirection> direction_list_; | 65 Vector<Timing::PlaybackDirection> direction_list_; |
65 Vector<Timing::FillMode> fill_mode_list_; | 66 Vector<Timing::FillMode> fill_mode_list_; |
66 Vector<EAnimPlayState> play_state_list_; | 67 Vector<EAnimPlayState> play_state_list_; |
67 }; | 68 }; |
68 | 69 |
| 70 inline bool DataEquivalent(const CSSAnimationData& a, |
| 71 const CSSAnimationData& b) { |
| 72 return a.AnimationsMatchForStyleRecalc(b); |
| 73 } |
| 74 |
69 } // namespace blink | 75 } // namespace blink |
70 | 76 |
71 #endif // CSSAnimationData_h | 77 #endif // CSSAnimationData_h |
OLD | NEW |