Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Side by Side Diff: cc/trees/layer_tree_host.cc

Issue 1341423006: Removing GL context rate limiting feature and related wrappers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fixed mojo autogens Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/trees/layer_tree_host.h ('k') | cc/trees/layer_tree_host_client.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 <algorithm> 7 #include <algorithm>
8 #include <stack> 8 #include <stack>
9 #include <string> 9 #include <string>
10 10
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 scoped_ptr<LayerTreeHost> layer_tree_host(new LayerTreeHost(params)); 80 scoped_ptr<LayerTreeHost> layer_tree_host(new LayerTreeHost(params));
81 layer_tree_host->InitializeSingleThreaded( 81 layer_tree_host->InitializeSingleThreaded(
82 single_thread_client, params->main_task_runner, 82 single_thread_client, params->main_task_runner,
83 params->external_begin_frame_source.Pass()); 83 params->external_begin_frame_source.Pass());
84 return layer_tree_host.Pass(); 84 return layer_tree_host.Pass();
85 } 85 }
86 86
87 LayerTreeHost::LayerTreeHost(InitParams* params) 87 LayerTreeHost::LayerTreeHost(InitParams* params)
88 : micro_benchmark_controller_(this), 88 : micro_benchmark_controller_(this),
89 next_ui_resource_id_(1), 89 next_ui_resource_id_(1),
90 inside_begin_main_frame_(false),
91 needs_full_tree_sync_(true), 90 needs_full_tree_sync_(true),
92 needs_meta_info_recomputation_(true), 91 needs_meta_info_recomputation_(true),
93 client_(params->client), 92 client_(params->client),
94 source_frame_number_(0), 93 source_frame_number_(0),
95 meta_information_sequence_number_(1), 94 meta_information_sequence_number_(1),
96 rendering_stats_instrumentation_(RenderingStatsInstrumentation::Create()), 95 rendering_stats_instrumentation_(RenderingStatsInstrumentation::Create()),
97 output_surface_lost_(true), 96 output_surface_lost_(true),
98 settings_(*params->settings), 97 settings_(*params->settings),
99 debug_state_(settings_.initial_debug_state), 98 debug_state_(settings_.initial_debug_state),
100 top_controls_shrink_blink_size_(false), 99 top_controls_shrink_blink_size_(false),
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 215
217 void LayerTreeHost::DidBeginMainFrame() { 216 void LayerTreeHost::DidBeginMainFrame() {
218 client_->DidBeginMainFrame(); 217 client_->DidBeginMainFrame();
219 } 218 }
220 219
221 void LayerTreeHost::BeginMainFrameNotExpectedSoon() { 220 void LayerTreeHost::BeginMainFrameNotExpectedSoon() {
222 client_->BeginMainFrameNotExpectedSoon(); 221 client_->BeginMainFrameNotExpectedSoon();
223 } 222 }
224 223
225 void LayerTreeHost::BeginMainFrame(const BeginFrameArgs& args) { 224 void LayerTreeHost::BeginMainFrame(const BeginFrameArgs& args) {
226 inside_begin_main_frame_ = true;
227 client_->BeginMainFrame(args); 225 client_->BeginMainFrame(args);
228 inside_begin_main_frame_ = false;
229 } 226 }
230 227
231 void LayerTreeHost::DidStopFlinging() { 228 void LayerTreeHost::DidStopFlinging() {
232 proxy_->MainThreadHasStoppedFlinging(); 229 proxy_->MainThreadHasStoppedFlinging();
233 } 230 }
234 231
235 void LayerTreeHost::Layout() { 232 void LayerTreeHost::Layout() {
236 client_->Layout(); 233 client_->Layout();
237 } 234 }
238 235
(...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after
856 // TODO(ccameron): pass the elastic overscroll here so that input events 853 // TODO(ccameron): pass the elastic overscroll here so that input events
857 // may be translated appropriately. 854 // may be translated appropriately.
858 client_->ApplyViewportDeltas( 855 client_->ApplyViewportDeltas(
859 inner_viewport_scroll_delta, outer_viewport_scroll_delta, 856 inner_viewport_scroll_delta, outer_viewport_scroll_delta,
860 info->elastic_overscroll_delta, info->page_scale_delta, 857 info->elastic_overscroll_delta, info->page_scale_delta,
861 info->top_controls_delta); 858 info->top_controls_delta);
862 SetNeedsUpdateLayers(); 859 SetNeedsUpdateLayers();
863 } 860 }
864 } 861 }
865 862
866 void LayerTreeHost::StartRateLimiter() {
867 if (inside_begin_main_frame_)
868 return;
869
870 if (!rate_limit_timer_.IsRunning()) {
871 rate_limit_timer_.Start(FROM_HERE,
872 base::TimeDelta(),
873 this,
874 &LayerTreeHost::RateLimit);
875 }
876 }
877
878 void LayerTreeHost::StopRateLimiter() {
879 rate_limit_timer_.Stop();
880 }
881
882 void LayerTreeHost::RateLimit() {
883 // Force a no-op command on the compositor context, so that any ratelimiting
884 // commands will wait for the compositing context, and therefore for the
885 // SwapBuffers.
886 proxy_->ForceSerializeOnSwapBuffers();
887 client_->RateLimitSharedMainThreadContext();
888 }
889
890 void LayerTreeHost::SetDeviceScaleFactor(float device_scale_factor) { 863 void LayerTreeHost::SetDeviceScaleFactor(float device_scale_factor) {
891 if (device_scale_factor == device_scale_factor_) 864 if (device_scale_factor == device_scale_factor_)
892 return; 865 return;
893 device_scale_factor_ = device_scale_factor; 866 device_scale_factor_ = device_scale_factor;
894 867
895 property_trees_.needs_rebuild = true; 868 property_trees_.needs_rebuild = true;
896 SetNeedsCommit(); 869 SetNeedsCommit();
897 } 870 }
898 871
899 void LayerTreeHost::UpdateTopControlsState(TopControlsState constraints, 872 void LayerTreeHost::UpdateTopControlsState(TopControlsState constraints,
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after
1244 return animation_host_ ? animation_host_->HasAnyAnimation(layer->id()) 1217 return animation_host_ ? animation_host_->HasAnyAnimation(layer->id())
1245 : false; 1218 : false;
1246 } 1219 }
1247 1220
1248 bool LayerTreeHost::HasActiveAnimation(const Layer* layer) const { 1221 bool LayerTreeHost::HasActiveAnimation(const Layer* layer) const {
1249 return animation_host_ ? animation_host_->HasActiveAnimation(layer->id()) 1222 return animation_host_ ? animation_host_->HasActiveAnimation(layer->id())
1250 : false; 1223 : false;
1251 } 1224 }
1252 1225
1253 } // namespace cc 1226 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host.h ('k') | cc/trees/layer_tree_host_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698