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

Unified Diff: cc/trees/thread_proxy.cc

Issue 23907006: cc: Allow sending BeginMainFrame before draw or activation (Closed) Base URL: http://git.chromium.org/chromium/src.git@schedDeadline3
Patch Set: Block main thread from state machine; remove completion event; Created 7 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 side-by-side diff with in-line comments
Download patch
Index: cc/trees/thread_proxy.cc
diff --git a/cc/trees/thread_proxy.cc b/cc/trees/thread_proxy.cc
index 87e17d9aceef5d3a18bf08dda3d52094689dcc2c..bf66efd3f01a93c0985f87af160c89f9dac4d097 100644
--- a/cc/trees/thread_proxy.cc
+++ b/cc/trees/thread_proxy.cc
@@ -884,8 +884,6 @@ void ThreadProxy::StartCommitOnImplThread(
CompletionEvent* completion,
ResourceUpdateQueue* raw_queue,
scoped_refptr<cc::ContextProvider> offscreen_context_provider) {
- scoped_ptr<ResourceUpdateQueue> queue(raw_queue);
-
TRACE_EVENT0("cc", "ThreadProxy::StartCommitOnImplThread");
DCHECK(!commit_completion_event_on_impl_thread_);
DCHECK(IsImplThread() && IsMainThreadBlocked());
@@ -898,6 +896,8 @@ void ThreadProxy::StartCommitOnImplThread(
return;
}
+ scoped_ptr<ResourceUpdateQueue> queue(raw_queue);
+
if (offscreen_context_provider.get())
offscreen_context_provider->BindToCurrentThread();
layer_tree_host_impl_->SetOffscreenContextProvider(
@@ -1318,6 +1318,10 @@ void ThreadProxy::InitializeImplOnImplThread(CompletionEvent* completion) {
SchedulerSettings scheduler_settings;
scheduler_settings.deadline_scheduling_enabled =
settings.deadline_scheduling_enabled;
+ scheduler_settings.start_commit_before_draw_enabled =
+ settings.start_commit_before_draw_enabled;
+ scheduler_settings.start_commit_before_activate_enabled =
+ settings.start_commit_before_activate_enabled;
scheduler_settings.impl_side_painting = settings.impl_side_painting;
scheduler_settings.timeout_and_draw_when_animation_checkerboards =
settings.timeout_and_draw_when_animation_checkerboards;

Powered by Google App Engine
This is Rietveld 408576698