OLD | NEW |
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 CompositorMutableState_h | 5 #ifndef CompositorMutableState_h |
6 #define CompositorMutableState_h | 6 #define CompositorMutableState_h |
7 | 7 |
8 #include "platform/PlatformExport.h" | 8 #include "platform/PlatformExport.h" |
9 | 9 |
10 class SkMatrix44; | 10 class SkMatrix44; |
11 | 11 |
12 namespace cc { | |
13 class LayerImpl; | |
14 } // namespace cc | |
15 | |
16 namespace blink { | 12 namespace blink { |
17 | 13 |
| 14 class CompositorMutableProperties; |
18 class CompositorMutation; | 15 class CompositorMutation; |
19 | 16 |
20 // This class wraps the compositor-owned, mutable state for a single element. | 17 // This class wraps the compositor-owned, mutable state for a single element. |
21 class PLATFORM_EXPORT CompositorMutableState { | 18 class PLATFORM_EXPORT CompositorMutableState { |
22 public: | 19 public: |
23 CompositorMutableState(CompositorMutation*, | 20 CompositorMutableState(CompositorMutation*, CompositorMutableProperties*); |
24 cc::LayerImpl* main, | |
25 cc::LayerImpl* scroll); | |
26 ~CompositorMutableState(); | 21 ~CompositorMutableState(); |
27 | 22 |
28 double Opacity() const; | 23 double Opacity() const; |
29 void SetOpacity(double); | 24 void SetOpacity(double); |
30 | 25 |
31 const SkMatrix44& Transform() const; | 26 const SkMatrix44& Transform() const; |
32 void SetTransform(const SkMatrix44&); | 27 void SetTransform(const SkMatrix44&); |
33 | 28 |
34 float ScrollLeft() const; | 29 float ScrollLeft() const; |
35 void SetScrollLeft(float); | 30 void SetScrollLeft(float); |
36 | 31 |
37 float ScrollTop() const; | 32 float ScrollTop() const; |
38 void SetScrollTop(float); | 33 void SetScrollTop(float); |
39 | 34 |
40 private: | 35 private: |
41 CompositorMutation* mutation_; | 36 CompositorMutation* mutation_; |
42 cc::LayerImpl* main_layer_; | 37 CompositorMutableProperties* properties_; |
43 cc::LayerImpl* scroll_layer_; | |
44 }; | 38 }; |
45 | 39 |
46 } // namespace blink | 40 } // namespace blink |
47 | 41 |
48 #endif // CompositorMutableState_h | 42 #endif // CompositorMutableState_h |
OLD | NEW |