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

Side by Side Diff: cc/scheduler/scheduler_settings.cc

Issue 595973002: Moving background animation ticking from LayerTreeHostImpl into the Scheduler. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@scheduler-timesource-refactor
Patch Set: Small fixes. Created 6 years, 1 month 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/scheduler/scheduler_settings.h ('k') | cc/scheduler/scheduler_state_machine.cc » ('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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/scheduler/scheduler_settings.h" 5 #include "cc/scheduler/scheduler_settings.h"
6 6
7 #include "base/debug/trace_event_argument.h" 7 #include "base/debug/trace_event_argument.h"
8 #include "cc/trees/layer_tree_settings.h" 8 #include "cc/trees/layer_tree_settings.h"
9 9
10 namespace cc { 10 namespace cc {
11 11
12 SchedulerSettings::SchedulerSettings() 12 SchedulerSettings::SchedulerSettings()
13 : begin_frame_scheduling_enabled(true), 13 : begin_frame_scheduling_enabled(true),
14 main_frame_before_activation_enabled(false), 14 main_frame_before_activation_enabled(false),
15 impl_side_painting(false), 15 impl_side_painting(false),
16 timeout_and_draw_when_animation_checkerboards(true), 16 timeout_and_draw_when_animation_checkerboards(true),
17 maximum_number_of_failed_draws_before_draw_is_forced_(3), 17 maximum_number_of_failed_draws_before_draw_is_forced_(3),
18 using_synchronous_renderer_compositor(false), 18 using_synchronous_renderer_compositor(false),
19 throttle_frame_production(true), 19 throttle_frame_production(true),
20 disable_hi_res_timer_tasks_on_battery(false) { 20 disable_hi_res_timer_tasks_on_battery(false),
21 background_frame_interval(base::TimeDelta::FromSeconds(1)) {
21 } 22 }
22 23
23 SchedulerSettings::SchedulerSettings(const LayerTreeSettings& settings) 24 SchedulerSettings::SchedulerSettings(const LayerTreeSettings& settings)
24 : begin_frame_scheduling_enabled(settings.begin_frame_scheduling_enabled), 25 : begin_frame_scheduling_enabled(settings.begin_frame_scheduling_enabled),
25 main_frame_before_activation_enabled( 26 main_frame_before_activation_enabled(
26 settings.main_frame_before_activation_enabled), 27 settings.main_frame_before_activation_enabled),
27 impl_side_painting(settings.impl_side_painting), 28 impl_side_painting(settings.impl_side_painting),
28 timeout_and_draw_when_animation_checkerboards( 29 timeout_and_draw_when_animation_checkerboards(
29 settings.timeout_and_draw_when_animation_checkerboards), 30 settings.timeout_and_draw_when_animation_checkerboards),
30 maximum_number_of_failed_draws_before_draw_is_forced_( 31 maximum_number_of_failed_draws_before_draw_is_forced_(
31 settings.maximum_number_of_failed_draws_before_draw_is_forced_), 32 settings.maximum_number_of_failed_draws_before_draw_is_forced_),
32 using_synchronous_renderer_compositor( 33 using_synchronous_renderer_compositor(
33 settings.using_synchronous_renderer_compositor), 34 settings.using_synchronous_renderer_compositor),
34 throttle_frame_production(settings.throttle_frame_production), 35 throttle_frame_production(settings.throttle_frame_production),
35 disable_hi_res_timer_tasks_on_battery( 36 disable_hi_res_timer_tasks_on_battery(
36 settings.disable_hi_res_timer_tasks_on_battery) { 37 settings.disable_hi_res_timer_tasks_on_battery),
38 background_frame_interval(base::TimeDelta::FromSecondsD(
39 1.0 / settings.background_animation_rate)) {
37 } 40 }
38 41
39 SchedulerSettings::~SchedulerSettings() {} 42 SchedulerSettings::~SchedulerSettings() {}
40 43
41 scoped_refptr<base::debug::ConvertableToTraceFormat> 44 scoped_refptr<base::debug::ConvertableToTraceFormat>
42 SchedulerSettings::AsValue() const { 45 SchedulerSettings::AsValue() const {
43 scoped_refptr<base::debug::TracedValue> state = 46 scoped_refptr<base::debug::TracedValue> state =
44 new base::debug::TracedValue(); 47 new base::debug::TracedValue();
45 state->SetBoolean("begin_frame_scheduling_enabled", 48 state->SetBoolean("begin_frame_scheduling_enabled",
46 begin_frame_scheduling_enabled); 49 begin_frame_scheduling_enabled);
47 state->SetBoolean("main_frame_before_activation_enabled", 50 state->SetBoolean("main_frame_before_activation_enabled",
48 main_frame_before_activation_enabled); 51 main_frame_before_activation_enabled);
49 state->SetBoolean("impl_side_painting", impl_side_painting); 52 state->SetBoolean("impl_side_painting", impl_side_painting);
50 state->SetBoolean("timeout_and_draw_when_animation_checkerboards", 53 state->SetBoolean("timeout_and_draw_when_animation_checkerboards",
51 timeout_and_draw_when_animation_checkerboards); 54 timeout_and_draw_when_animation_checkerboards);
52 state->SetInteger("maximum_number_of_failed_draws_before_draw_is_forced_", 55 state->SetInteger("maximum_number_of_failed_draws_before_draw_is_forced_",
53 maximum_number_of_failed_draws_before_draw_is_forced_); 56 maximum_number_of_failed_draws_before_draw_is_forced_);
54 state->SetBoolean("using_synchronous_renderer_compositor", 57 state->SetBoolean("using_synchronous_renderer_compositor",
55 using_synchronous_renderer_compositor); 58 using_synchronous_renderer_compositor);
56 state->SetBoolean("throttle_frame_production", throttle_frame_production); 59 state->SetBoolean("throttle_frame_production", throttle_frame_production);
57 state->SetBoolean("disable_hi_res_timer_tasks_on_battery", 60 state->SetBoolean("disable_hi_res_timer_tasks_on_battery",
58 disable_hi_res_timer_tasks_on_battery); 61 disable_hi_res_timer_tasks_on_battery);
62 state->SetInteger("background_frame_interval",
63 background_frame_interval.InMicroseconds());
59 return state; 64 return state;
60 } 65 }
61 66
62 } // namespace cc 67 } // namespace cc
OLDNEW
« no previous file with comments | « cc/scheduler/scheduler_settings.h ('k') | cc/scheduler/scheduler_state_machine.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698