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

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

Issue 1320633002: Optimize for TouchStart responsiveness (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase + remove some unwanted changes 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
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/thread_proxy.h" 5 #include "cc/trees/thread_proxy.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 1162 matching lines...) Expand 10 before | Expand all | Expand 10 after
1173 impl().input_throttled_until_commit) { 1173 impl().input_throttled_until_commit) {
1174 // Once we enter NEW_CONTENTS_TAKES_PRIORITY mode, visible tiles on active 1174 // Once we enter NEW_CONTENTS_TAKES_PRIORITY mode, visible tiles on active
1175 // tree might be freed. We need to set RequiresHighResToDraw to ensure that 1175 // tree might be freed. We need to set RequiresHighResToDraw to ensure that
1176 // high res tiles will be required to activate pending tree. 1176 // high res tiles will be required to activate pending tree.
1177 impl().layer_tree_host_impl->SetRequiresHighResToDraw(); 1177 impl().layer_tree_host_impl->SetRequiresHighResToDraw();
1178 priority = NEW_CONTENT_TAKES_PRIORITY; 1178 priority = NEW_CONTENT_TAKES_PRIORITY;
1179 } 1179 }
1180 1180
1181 impl().layer_tree_host_impl->SetTreePriority(priority); 1181 impl().layer_tree_host_impl->SetTreePriority(priority);
1182 1182
1183 // Only put the scheduler in impl latency prioritization mode if we don't 1183 // Put the scheduler in impl latency prioritization mode if there's no new
Sami 2015/08/26 13:38:01 nit: the comment isn't entirely accurate (we might
alex clarke (OOO till 29th) 2015/08/27 12:02:51 As discussed offline I'm going to do this in a sep
1184 // have a scroll listener. This gives the scroll listener a better chance of 1184 // content. This signal is also used by the renderer scheduler to work out if
1185 // handling scroll updates within the same frame. The tree itself is still 1185 // compositor tasks are on the critical path or not.
1186 // kept in prefer smoothness mode to allow checkerboarding. 1186 impl().scheduler->SetImplLatencyTakesPriority(priority !=
1187 impl().scheduler->SetImplLatencyTakesPriority( 1187 NEW_CONTENT_TAKES_PRIORITY);
1188 priority == SMOOTHNESS_TAKES_PRIORITY &&
1189 !impl().layer_tree_host_impl->scroll_affects_scroll_handler());
1190 1188
1191 // Notify the the client of this compositor via the output surface. 1189 // Notify the the client of this compositor via the output surface.
1192 // TODO(epenner): Route this to compositor-thread instead of output-surface 1190 // TODO(epenner): Route this to compositor-thread instead of output-surface
1193 // after GTFO refactor of compositor-thread (http://crbug/170828). 1191 // after GTFO refactor of compositor-thread (http://crbug/170828).
1194 if (impl().layer_tree_host_impl->output_surface()) { 1192 if (impl().layer_tree_host_impl->output_surface()) {
1195 impl() 1193 impl()
1196 .layer_tree_host_impl->output_surface() 1194 .layer_tree_host_impl->output_surface()
1197 ->UpdateSmoothnessTakesPriority(priority == SMOOTHNESS_TAKES_PRIORITY); 1195 ->UpdateSmoothnessTakesPriority(priority == SMOOTHNESS_TAKES_PRIORITY);
1198 } 1196 }
1199 } 1197 }
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
1254 1252
1255 void ThreadProxy::PostFrameTimingEvents( 1253 void ThreadProxy::PostFrameTimingEvents(
1256 scoped_ptr<FrameTimingTracker::CompositeTimingSet> composite_events, 1254 scoped_ptr<FrameTimingTracker::CompositeTimingSet> composite_events,
1257 scoped_ptr<FrameTimingTracker::MainFrameTimingSet> main_frame_events) { 1255 scoped_ptr<FrameTimingTracker::MainFrameTimingSet> main_frame_events) {
1258 DCHECK(IsMainThread()); 1256 DCHECK(IsMainThread());
1259 layer_tree_host()->RecordFrameTimingEvents(composite_events.Pass(), 1257 layer_tree_host()->RecordFrameTimingEvents(composite_events.Pass(),
1260 main_frame_events.Pass()); 1258 main_frame_events.Pass());
1261 } 1259 }
1262 1260
1263 } // namespace cc 1261 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698