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

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

Issue 862133002: Update from https://crrev.com/312398 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 11 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
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/scheduler/scheduler.h" 5 #include "cc/scheduler/scheduler.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after
554 554
555 begin_impl_frame_args_ = args; 555 begin_impl_frame_args_ = args;
556 begin_impl_frame_args_.deadline -= client_->DrawDurationEstimate(); 556 begin_impl_frame_args_.deadline -= client_->DrawDurationEstimate();
557 557
558 if (!state_machine_.impl_latency_takes_priority() && 558 if (!state_machine_.impl_latency_takes_priority() &&
559 main_thread_is_in_high_latency_mode && 559 main_thread_is_in_high_latency_mode &&
560 CanCommitAndActivateBeforeDeadline()) { 560 CanCommitAndActivateBeforeDeadline()) {
561 state_machine_.SetSkipNextBeginMainFrameToReduceLatency(); 561 state_machine_.SetSkipNextBeginMainFrameToReduceLatency();
562 } 562 }
563 563
564 client_->WillBeginImplFrame(begin_impl_frame_args_);
565 state_machine_.OnBeginImplFrame(begin_impl_frame_args_); 564 state_machine_.OnBeginImplFrame(begin_impl_frame_args_);
566 devtools_instrumentation::DidBeginFrame(layer_tree_host_id_); 565 devtools_instrumentation::DidBeginFrame(layer_tree_host_id_);
566 client_->WillBeginImplFrame(begin_impl_frame_args_);
567 567
568 ProcessScheduledActions(); 568 ProcessScheduledActions();
569 569
570 state_machine_.OnBeginImplFrameDeadlinePending(); 570 state_machine_.OnBeginImplFrameDeadlinePending();
571 571
572 if (settings_.using_synchronous_renderer_compositor) { 572 if (settings_.using_synchronous_renderer_compositor) {
573 // The synchronous renderer compositor has to make its GL calls 573 // The synchronous renderer compositor has to make its GL calls
574 // within this call. 574 // within this call.
575 // TODO(brianderson): Have the OutputSurface initiate the deadline tasks 575 // TODO(brianderson): Have the OutputSurface initiate the deadline tasks
576 // so the synchronous renderer compositor can take advantage of splitting 576 // so the synchronous renderer compositor can take advantage of splitting
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
810 } 810 }
811 811
812 bool Scheduler::IsBeginMainFrameSentOrStarted() const { 812 bool Scheduler::IsBeginMainFrameSentOrStarted() const {
813 return (state_machine_.commit_state() == 813 return (state_machine_.commit_state() ==
814 SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT || 814 SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT ||
815 state_machine_.commit_state() == 815 state_machine_.commit_state() ==
816 SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_STARTED); 816 SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_STARTED);
817 } 817 }
818 818
819 } // namespace cc 819 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698