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_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/debug/trace_event.h" | 9 #include "base/debug/trace_event.h" |
10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 sync_tree->SetRootLayer(TreeSynchronizer::SynchronizeTrees( | 286 sync_tree->SetRootLayer(TreeSynchronizer::SynchronizeTrees( |
287 root_layer(), sync_tree->DetachLayerTree(), sync_tree)); { | 287 root_layer(), sync_tree->DetachLayerTree(), sync_tree)); { |
288 TRACE_EVENT0("cc", "LayerTreeHost::PushProperties"); | 288 TRACE_EVENT0("cc", "LayerTreeHost::PushProperties"); |
289 TreeSynchronizer::PushProperties(root_layer(), sync_tree->root_layer()); | 289 TreeSynchronizer::PushProperties(root_layer(), sync_tree->root_layer()); |
290 } | 290 } |
291 | 291 |
292 sync_tree->set_needs_full_tree_sync(needs_full_tree_sync_); | 292 sync_tree->set_needs_full_tree_sync(needs_full_tree_sync_); |
293 needs_full_tree_sync_ = false; | 293 needs_full_tree_sync_ = false; |
294 | 294 |
295 if (root_layer_ && hud_layer_) { | 295 if (root_layer_ && hud_layer_) { |
296 LayerImpl* hud_impl = LayerTreeHostCommon::FindLayerInSubtree( | 296 LayerImpl* hud_impl = LayerTreeHostCommon::findLayerInSubtree( |
297 sync_tree->root_layer(), hud_layer_->id()); | 297 sync_tree->root_layer(), hud_layer_->id()); |
298 sync_tree->set_hud_layer(static_cast<HeadsUpDisplayLayerImpl*>(hud_impl)); | 298 sync_tree->set_hud_layer(static_cast<HeadsUpDisplayLayerImpl*>(hud_impl)); |
299 } else { | 299 } else { |
300 sync_tree->set_hud_layer(NULL); | 300 sync_tree->set_hud_layer(NULL); |
301 } | 301 } |
302 | 302 |
303 sync_tree->set_source_frame_number(commit_number()); | 303 sync_tree->set_source_frame_number(commit_number()); |
304 sync_tree->set_background_color(background_color_); | 304 sync_tree->set_background_color(background_color_); |
305 sync_tree->set_has_transparent_background(has_transparent_background_); | 305 sync_tree->set_has_transparent_background(has_transparent_background_); |
306 | 306 |
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
695 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers"); | 695 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers"); |
696 | 696 |
697 LayerList update_list; { | 697 LayerList update_list; { |
698 Layer* root_scroll = FindFirstScrollableLayer(root_layer); | 698 Layer* root_scroll = FindFirstScrollableLayer(root_layer); |
699 if (root_scroll) | 699 if (root_scroll) |
700 root_scroll->SetImplTransform(impl_transform_); | 700 root_scroll->SetImplTransform(impl_transform_); |
701 | 701 |
702 UpdateHudLayer(); | 702 UpdateHudLayer(); |
703 | 703 |
704 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers::calcDrawProps"); | 704 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers::calcDrawProps"); |
705 LayerTreeHostCommon::CalculateDrawProperties( | 705 LayerTreeHostCommon::calculateDrawProperties( |
706 root_layer, | 706 root_layer, |
707 device_viewport_size(), | 707 device_viewport_size(), |
708 device_scale_factor_, | 708 device_scale_factor_, |
709 page_scale_factor_, | 709 page_scale_factor_, |
710 GetRendererCapabilities().max_texture_size, | 710 GetRendererCapabilities().max_texture_size, |
711 settings_.can_use_lcd_text, | 711 settings_.can_use_lcd_text, |
712 &update_list); | 712 update_list); |
713 } | 713 } |
714 | 714 |
715 // Reset partial texture update requests. | 715 // Reset partial texture update requests. |
716 partial_texture_update_requests_ = 0; | 716 partial_texture_update_requests_ = 0; |
717 | 717 |
718 bool need_more_updates = PaintLayerContents(update_list, queue); | 718 bool need_more_updates = PaintLayerContents(update_list, queue); |
719 if (trigger_idle_updates_ && need_more_updates) { | 719 if (trigger_idle_updates_ && need_more_updates) { |
720 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers::posting prepaint task"); | 720 TRACE_EVENT0("cc", "LayerTreeHost::UpdateLayers::posting prepaint task"); |
721 prepaint_callback_.Reset(base::Bind(&LayerTreeHost::TriggerPrepaint, | 721 prepaint_callback_.Reset(base::Bind(&LayerTreeHost::TriggerPrepaint, |
722 base::Unretained(this))); | 722 base::Unretained(this))); |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
900 | 900 |
901 void LayerTreeHost::ApplyScrollAndScale(const ScrollAndScaleSet& info) { | 901 void LayerTreeHost::ApplyScrollAndScale(const ScrollAndScaleSet& info) { |
902 if (!root_layer_) | 902 if (!root_layer_) |
903 return; | 903 return; |
904 | 904 |
905 Layer* root_scroll_layer = FindFirstScrollableLayer(root_layer_.get()); | 905 Layer* root_scroll_layer = FindFirstScrollableLayer(root_layer_.get()); |
906 gfx::Vector2d root_scroll_delta; | 906 gfx::Vector2d root_scroll_delta; |
907 | 907 |
908 for (size_t i = 0; i < info.scrolls.size(); ++i) { | 908 for (size_t i = 0; i < info.scrolls.size(); ++i) { |
909 Layer* layer = | 909 Layer* layer = |
910 LayerTreeHostCommon::FindLayerInSubtree(root_layer_.get(), | 910 LayerTreeHostCommon::findLayerInSubtree(root_layer_.get(), |
911 info.scrolls[i].layer_id); | 911 info.scrolls[i].layerId); |
912 if (!layer) | 912 if (!layer) |
913 continue; | 913 continue; |
914 if (layer == root_scroll_layer) | 914 if (layer == root_scroll_layer) |
915 root_scroll_delta += info.scrolls[i].scroll_delta; | 915 root_scroll_delta += info.scrolls[i].scrollDelta; |
916 else | 916 else |
917 layer->SetScrollOffset(layer->scroll_offset() + | 917 layer->SetScrollOffset(layer->scroll_offset() + |
918 info.scrolls[i].scroll_delta); | 918 info.scrolls[i].scrollDelta); |
919 } | 919 } |
920 if (!root_scroll_delta.IsZero() || info.page_scale_delta != 1.f) | 920 if (!root_scroll_delta.IsZero() || info.pageScaleDelta != 1.f) |
921 client_->ApplyScrollAndScale(root_scroll_delta, info.page_scale_delta); | 921 client_->ApplyScrollAndScale(root_scroll_delta, info.pageScaleDelta); |
922 } | 922 } |
923 | 923 |
924 void LayerTreeHost::SetImplTransform(const gfx::Transform& transform) { | 924 void LayerTreeHost::SetImplTransform(const gfx::Transform& transform) { |
925 impl_transform_ = transform; | 925 impl_transform_ = transform; |
926 } | 926 } |
927 | 927 |
928 void LayerTreeHost::StartRateLimiter(WebKit::WebGraphicsContext3D* context3d) { | 928 void LayerTreeHost::StartRateLimiter(WebKit::WebGraphicsContext3D* context3d) { |
929 if (animating_) | 929 if (animating_) |
930 return; | 930 return; |
931 | 931 |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1047 SetAnimationEventsRecursive(events, | 1047 SetAnimationEventsRecursive(events, |
1048 layer->children()[child_index].get(), | 1048 layer->children()[child_index].get(), |
1049 wall_clock_time); | 1049 wall_clock_time); |
1050 } | 1050 } |
1051 | 1051 |
1052 skia::RefPtr<SkPicture> LayerTreeHost::CapturePicture() { | 1052 skia::RefPtr<SkPicture> LayerTreeHost::CapturePicture() { |
1053 return proxy_->CapturePicture(); | 1053 return proxy_->CapturePicture(); |
1054 } | 1054 } |
1055 | 1055 |
1056 } // namespace cc | 1056 } // namespace cc |
OLD | NEW |