| Index: cc/trees/single_thread_proxy.cc
 | 
| diff --git a/cc/trees/single_thread_proxy.cc b/cc/trees/single_thread_proxy.cc
 | 
| index 1b28c6d7d8ec91baf0d9cf2a6949e0e05b36e0db..e608a32d53e3b9256b1b6b40978d00dde9644764 100644
 | 
| --- a/cc/trees/single_thread_proxy.cc
 | 
| +++ b/cc/trees/single_thread_proxy.cc
 | 
| @@ -63,10 +63,9 @@ void SingleThreadProxy::Start(
 | 
|    DebugScopedSetImplThread impl(task_runner_provider_);
 | 
|    external_begin_frame_source_ = std::move(external_begin_frame_source);
 | 
|  
 | 
| -  if (layer_tree_host_->settings().single_thread_proxy_scheduler &&
 | 
| -      !scheduler_on_impl_thread_) {
 | 
| -    SchedulerSettings scheduler_settings(
 | 
| -        layer_tree_host_->settings().ToSchedulerSettings());
 | 
| +  const LayerTreeSettings& settings = layer_tree_host_->GetSettings();
 | 
| +  if (settings.single_thread_proxy_scheduler && !scheduler_on_impl_thread_) {
 | 
| +    SchedulerSettings scheduler_settings(settings.ToSchedulerSettings());
 | 
|      scheduler_settings.commit_to_active_tree = CommitToActiveTree();
 | 
|  
 | 
|      std::unique_ptr<CompositorTimingHistory> compositor_timing_history(
 | 
| @@ -79,15 +78,14 @@ void SingleThreadProxy::Start(
 | 
|      // external, it must be provided.  If from the output surface, it must
 | 
|      // not be provided.
 | 
|      // TODO(enne): Make all BFS come from the output surface.
 | 
| -    DCHECK(layer_tree_host_->settings().use_external_begin_frame_source ^
 | 
| -           layer_tree_host_->settings().use_output_surface_begin_frame_source);
 | 
| -    DCHECK(!layer_tree_host_->settings().use_external_begin_frame_source ||
 | 
| +    DCHECK(settings.use_external_begin_frame_source ^
 | 
| +           settings.use_output_surface_begin_frame_source);
 | 
| +    DCHECK(!settings.use_external_begin_frame_source ||
 | 
|             external_begin_frame_source_);
 | 
| -    DCHECK(
 | 
| -        !layer_tree_host_->settings().use_output_surface_begin_frame_source ||
 | 
| -        !external_begin_frame_source_);
 | 
| +    DCHECK(!settings.use_output_surface_begin_frame_source ||
 | 
| +           !external_begin_frame_source_);
 | 
|      scheduler_on_impl_thread_ =
 | 
| -        Scheduler::Create(this, scheduler_settings, layer_tree_host_->id(),
 | 
| +        Scheduler::Create(this, scheduler_settings, layer_tree_host_->GetId(),
 | 
|                            task_runner_provider_->MainThreadTaskRunner(),
 | 
|                            external_begin_frame_source_.get(),
 | 
|                            std::move(compositor_timing_history));
 | 
| @@ -194,7 +192,7 @@ void SingleThreadProxy::DoCommit() {
 | 
|        FROM_HERE_WITH_EXPLICIT_FUNCTION("461509 SingleThreadProxy::DoCommit1"));
 | 
|    layer_tree_host_->WillCommit();
 | 
|    devtools_instrumentation::ScopedCommitTrace commit_task(
 | 
| -      layer_tree_host_->id());
 | 
| +      layer_tree_host_->GetId());
 | 
|  
 | 
|    // Commit immediately.
 | 
|    {
 | 
| @@ -457,10 +455,10 @@ void SingleThreadProxy::DidLoseOutputSurfaceOnImplThread() {
 | 
|  }
 | 
|  
 | 
|  void SingleThreadProxy::SetBeginFrameSource(BeginFrameSource* source) {
 | 
| -  DCHECK(layer_tree_host_->settings().single_thread_proxy_scheduler);
 | 
| +  DCHECK(layer_tree_host_->GetSettings().single_thread_proxy_scheduler);
 | 
|    // TODO(enne): this overrides any preexisting begin frame source.  Those
 | 
|    // other sources will eventually be removed and this will be the only path.
 | 
| -  if (!layer_tree_host_->settings().use_output_surface_begin_frame_source)
 | 
| +  if (!layer_tree_host_->GetSettings().use_output_surface_begin_frame_source)
 | 
|      return;
 | 
|    if (scheduler_on_impl_thread_)
 | 
|      scheduler_on_impl_thread_->SetBeginFrameSource(source);
 | 
| @@ -731,7 +729,7 @@ void SingleThreadProxy::BeginMainFrame(const BeginFrameArgs& begin_frame_args) {
 | 
|    // commit.
 | 
|    ScopedAbortRemainingSwapPromises swap_promise_checker(layer_tree_host_);
 | 
|  
 | 
| -  if (!layer_tree_host_->visible()) {
 | 
| +  if (!layer_tree_host_->IsVisible()) {
 | 
|      TRACE_EVENT_INSTANT0("cc", "EarlyOut_NotVisible", TRACE_EVENT_SCOPE_THREAD);
 | 
|      BeginMainFrameAbortedOnImplThread(
 | 
|          CommitEarlyOutReason::ABORTED_NOT_VISIBLE);
 | 
| 
 |