OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 #include "cc/trees/layer_tree_impl.h" | 5 #include "cc/trees/layer_tree_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
433 } | 433 } |
434 | 434 |
435 LayerListIterator<LayerImpl> LayerTreeImpl::begin() { | 435 LayerListIterator<LayerImpl> LayerTreeImpl::begin() { |
436 return LayerListIterator<LayerImpl>(root_layer_); | 436 return LayerListIterator<LayerImpl>(root_layer_); |
437 } | 437 } |
438 | 438 |
439 LayerListIterator<LayerImpl> LayerTreeImpl::end() { | 439 LayerListIterator<LayerImpl> LayerTreeImpl::end() { |
440 return LayerListIterator<LayerImpl>(nullptr); | 440 return LayerListIterator<LayerImpl>(nullptr); |
441 } | 441 } |
442 | 442 |
| 443 LayerListIterator<LayerImpl> LayerTreeImpl::begin() const { |
| 444 return LayerListIterator<LayerImpl>(root_layer_); |
| 445 } |
| 446 |
| 447 LayerListIterator<LayerImpl> LayerTreeImpl::end() const { |
| 448 return LayerListIterator<LayerImpl>(nullptr); |
| 449 } |
| 450 |
443 LayerListReverseIterator<LayerImpl> LayerTreeImpl::rbegin() { | 451 LayerListReverseIterator<LayerImpl> LayerTreeImpl::rbegin() { |
444 return LayerListReverseIterator<LayerImpl>(root_layer_); | 452 return LayerListReverseIterator<LayerImpl>(root_layer_); |
445 } | 453 } |
446 | 454 |
447 LayerListReverseIterator<LayerImpl> LayerTreeImpl::rend() { | 455 LayerListReverseIterator<LayerImpl> LayerTreeImpl::rend() { |
448 return LayerListReverseIterator<LayerImpl>(nullptr); | 456 return LayerListReverseIterator<LayerImpl>(nullptr); |
449 } | 457 } |
450 | 458 |
451 void LayerTreeImpl::AddToElementMap(LayerImpl* layer) { | 459 void LayerTreeImpl::AddToElementMap(LayerImpl* layer) { |
452 if (!layer->element_id() || !layer->mutable_properties()) | 460 if (!layer->element_id() || !layer->mutable_properties()) |
(...skipping 824 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1277 continue; | 1285 continue; |
1278 LayerImpl* layer_impl = *it; | 1286 LayerImpl* layer_impl = *it; |
1279 layer_impl->GetAllPrioritizedTilesForTracing(prioritized_tiles); | 1287 layer_impl->GetAllPrioritizedTilesForTracing(prioritized_tiles); |
1280 } | 1288 } |
1281 } | 1289 } |
1282 | 1290 |
1283 void LayerTreeImpl::AsValueInto(base::trace_event::TracedValue* state) const { | 1291 void LayerTreeImpl::AsValueInto(base::trace_event::TracedValue* state) const { |
1284 TracedValue::MakeDictIntoImplicitSnapshot(state, "cc::LayerTreeImpl", this); | 1292 TracedValue::MakeDictIntoImplicitSnapshot(state, "cc::LayerTreeImpl", this); |
1285 state->SetInteger("source_frame_number", source_frame_number_); | 1293 state->SetInteger("source_frame_number", source_frame_number_); |
1286 | 1294 |
1287 state->BeginDictionary("root_layer"); | |
1288 root_layer_->AsValueInto(state); | |
1289 state->EndDictionary(); | |
1290 | |
1291 state->BeginArray("render_surface_layer_list"); | 1295 state->BeginArray("render_surface_layer_list"); |
1292 LayerIterator end = LayerIterator::End(&render_surface_layer_list_); | 1296 LayerIterator end = LayerIterator::End(&render_surface_layer_list_); |
1293 for (LayerIterator it = LayerIterator::Begin(&render_surface_layer_list_); | 1297 for (LayerIterator it = LayerIterator::Begin(&render_surface_layer_list_); |
1294 it != end; ++it) { | 1298 it != end; ++it) { |
1295 if (!it.represents_itself()) | 1299 if (!it.represents_itself()) |
1296 continue; | 1300 continue; |
1297 TracedValue::AppendIDRef(*it, state); | 1301 TracedValue::AppendIDRef(*it, state); |
1298 } | 1302 } |
1299 state->EndArray(); | 1303 state->EndArray(); |
1300 | 1304 |
1301 state->BeginArray("swap_promise_trace_ids"); | 1305 state->BeginArray("swap_promise_trace_ids"); |
1302 for (const auto& swap_promise : swap_promise_list_) | 1306 for (const auto& swap_promise : swap_promise_list_) |
1303 state->AppendDouble(swap_promise->TraceId()); | 1307 state->AppendDouble(swap_promise->TraceId()); |
1304 state->EndArray(); | 1308 state->EndArray(); |
1305 | 1309 |
1306 state->BeginArray("pinned_swap_promise_trace_ids"); | 1310 state->BeginArray("pinned_swap_promise_trace_ids"); |
1307 for (const auto& swap_promise : pinned_swap_promise_list_) | 1311 for (const auto& swap_promise : pinned_swap_promise_list_) |
1308 state->AppendDouble(swap_promise->TraceId()); | 1312 state->AppendDouble(swap_promise->TraceId()); |
1309 state->EndArray(); | 1313 state->EndArray(); |
| 1314 |
| 1315 state->BeginArray("layers"); |
| 1316 for (auto* layer : *this) { |
| 1317 state->BeginDictionary(); |
| 1318 layer->AsValueInto(state); |
| 1319 state->EndDictionary(); |
| 1320 } |
| 1321 state->EndArray(); |
1310 } | 1322 } |
1311 | 1323 |
1312 bool LayerTreeImpl::DistributeRootScrollOffset( | 1324 bool LayerTreeImpl::DistributeRootScrollOffset( |
1313 const gfx::ScrollOffset& root_offset) { | 1325 const gfx::ScrollOffset& root_offset) { |
1314 if (!InnerViewportScrollLayer()) | 1326 if (!InnerViewportScrollLayer()) |
1315 return false; | 1327 return false; |
1316 | 1328 |
1317 DCHECK(OuterViewportScrollLayer()); | 1329 DCHECK(OuterViewportScrollLayer()); |
1318 | 1330 |
1319 // If we get here, we have both inner/outer viewports, and need to distribute | 1331 // If we get here, we have both inner/outer viewports, and need to distribute |
(...skipping 768 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2088 } | 2100 } |
2089 | 2101 |
2090 void LayerTreeImpl::ResetAllChangeTracking() { | 2102 void LayerTreeImpl::ResetAllChangeTracking() { |
2091 layers_that_should_push_properties_.clear(); | 2103 layers_that_should_push_properties_.clear(); |
2092 for (auto* layer : *this) | 2104 for (auto* layer : *this) |
2093 layer->ResetChangeTracking(); | 2105 layer->ResetChangeTracking(); |
2094 property_trees_.ResetAllChangeTracking(); | 2106 property_trees_.ResetAllChangeTracking(); |
2095 } | 2107 } |
2096 | 2108 |
2097 } // namespace cc | 2109 } // namespace cc |
OLD | NEW |