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 CC_TREES_LAYER_TREE_H_ | 5 #ifndef CC_TREES_LAYER_TREE_H_ |
6 #define CC_TREES_LAYER_TREE_H_ | 6 #define CC_TREES_LAYER_TREE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <unordered_map> | 9 #include <unordered_map> |
10 #include <unordered_set> | 10 #include <unordered_set> |
11 | 11 |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
14 #include "cc/base/cc_export.h" | 14 #include "cc/base/cc_export.h" |
15 #include "cc/input/event_listener_properties.h" | 15 #include "cc/input/event_listener_properties.h" |
16 #include "cc/input/layer_selection_bound.h" | 16 #include "cc/input/layer_selection_bound.h" |
17 #include "cc/layers/layer_collections.h" | 17 #include "cc/layers/layer_collections.h" |
18 #include "cc/layers/layer_list_iterator.h" | 18 #include "cc/layers/layer_list_iterator.h" |
19 #include "cc/trees/mutator_host_client.h" | 19 #include "cc/trees/mutator_host_client.h" |
20 #include "cc/trees/property_tree.h" | 20 #include "cc/trees/property_tree.h" |
21 #include "third_party/skia/include/core/SkColor.h" | 21 #include "third_party/skia/include/core/SkColor.h" |
| 22 #include "ui/gfx/color_space.h" |
22 #include "ui/gfx/geometry/size.h" | 23 #include "ui/gfx/geometry/size.h" |
23 | 24 |
24 namespace base { | 25 namespace base { |
25 class TimeDelta; | 26 class TimeDelta; |
26 } // namespace base | 27 } // namespace base |
27 | 28 |
28 namespace cc { | 29 namespace cc { |
29 | 30 |
30 namespace proto { | 31 namespace proto { |
31 class LayerTree; | 32 class LayerTree; |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 bool use_anchor, | 108 bool use_anchor, |
108 float scale, | 109 float scale, |
109 base::TimeDelta duration); | 110 base::TimeDelta duration); |
110 bool HasPendingPageScaleAnimation() const; | 111 bool HasPendingPageScaleAnimation() const; |
111 | 112 |
112 void SetDeviceScaleFactor(float device_scale_factor); | 113 void SetDeviceScaleFactor(float device_scale_factor); |
113 float device_scale_factor() const { return inputs_.device_scale_factor; } | 114 float device_scale_factor() const { return inputs_.device_scale_factor; } |
114 | 115 |
115 void SetPaintedDeviceScaleFactor(float painted_device_scale_factor); | 116 void SetPaintedDeviceScaleFactor(float painted_device_scale_factor); |
116 | 117 |
| 118 void SetDeviceColorSpace(const gfx::ColorSpace& device_color_space); |
| 119 const gfx::ColorSpace& device_color_space() const { |
| 120 return inputs_.device_color_space; |
| 121 } |
| 122 |
117 // Used externally by blink for setting the PropertyTrees when | 123 // Used externally by blink for setting the PropertyTrees when |
118 // |settings_.use_layer_lists| is true. This is a SPV2 setting. | 124 // |settings_.use_layer_lists| is true. This is a SPV2 setting. |
119 PropertyTrees* property_trees() { return &property_trees_; } | 125 PropertyTrees* property_trees() { return &property_trees_; } |
120 | 126 |
121 void SetNeedsDisplayOnAllLayers(); | 127 void SetNeedsDisplayOnAllLayers(); |
122 | 128 |
123 // Methods which should only be used internally in cc ------------------ | 129 // Methods which should only be used internally in cc ------------------ |
124 void RegisterLayer(Layer* layer); | 130 void RegisterLayer(Layer* layer); |
125 void UnregisterLayer(Layer* layer); | 131 void UnregisterLayer(Layer* layer); |
126 Layer* LayerById(int id) const; | 132 Layer* LayerById(int id) const; |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
229 float top_controls_shown_ratio; | 235 float top_controls_shown_ratio; |
230 bool top_controls_shrink_blink_size; | 236 bool top_controls_shrink_blink_size; |
231 | 237 |
232 float bottom_controls_height; | 238 float bottom_controls_height; |
233 | 239 |
234 float device_scale_factor; | 240 float device_scale_factor; |
235 float painted_device_scale_factor; | 241 float painted_device_scale_factor; |
236 float page_scale_factor; | 242 float page_scale_factor; |
237 float min_page_scale_factor; | 243 float min_page_scale_factor; |
238 float max_page_scale_factor; | 244 float max_page_scale_factor; |
| 245 gfx::ColorSpace device_color_space; |
239 | 246 |
240 SkColor background_color; | 247 SkColor background_color; |
241 bool has_transparent_background; | 248 bool has_transparent_background; |
242 | 249 |
243 LayerSelection selection; | 250 LayerSelection selection; |
244 | 251 |
245 gfx::Size device_viewport_size; | 252 gfx::Size device_viewport_size; |
246 | 253 |
247 bool have_scroll_event_handlers; | 254 bool have_scroll_event_handlers; |
248 EventListenerProperties event_listener_properties[static_cast<size_t>( | 255 EventListenerProperties event_listener_properties[static_cast<size_t>( |
(...skipping 26 matching lines...) Expand all Loading... |
275 | 282 |
276 std::unique_ptr<AnimationHost> animation_host_; | 283 std::unique_ptr<AnimationHost> animation_host_; |
277 LayerTreeHost* layer_tree_host_; | 284 LayerTreeHost* layer_tree_host_; |
278 | 285 |
279 DISALLOW_COPY_AND_ASSIGN(LayerTree); | 286 DISALLOW_COPY_AND_ASSIGN(LayerTree); |
280 }; | 287 }; |
281 | 288 |
282 } // namespace cc | 289 } // namespace cc |
283 | 290 |
284 #endif // CC_TREES_LAYER_TREE_H_ | 291 #endif // CC_TREES_LAYER_TREE_H_ |
OLD | NEW |