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

Unified Diff: cc/trees/layer_tree_host_impl.cc

Issue 23495022: CC: Add a scheduled action for ManageTiles (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Call ManageTiles. 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
« cc/resources/tile_manager.cc ('K') | « cc/resources/tile_manager.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/trees/layer_tree_host_impl.cc
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index 816383a6eb136e180b8874cce0576b24b1852120..f86009503d2b2180ceebf83fed3f49e94d1f4ede 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -2508,9 +2508,18 @@ void LayerTreeHostImpl::SetTreePriority(TreePriority priority) {
if (new_state.tree_priority == priority)
return;
+ TRACE_EVENT0("cc", "LayerTreeHostImpl::SetTreePriority");
+
new_state.tree_priority = priority;
tile_manager_->SetGlobalState(new_state);
manage_tiles_needed_ = true;
+
+ // In smoothness-takes-priority, we may finish rastering without
+ // activating. We need to guarantee ManageTiles is called after this
+ // case, or we will block activation until after the next compositor
+ // frame (webkit is live-locked in the mean time).
+ if (priority != SMOOTHNESS_TAKES_PRIORITY)
reveman 2013/09/10 19:21:20 why not when entering SMOOTHNESS_TAKES_PRIORITY or
epennerAtGoogle 2013/09/10 19:36:55 The reason we are calling it here is to not starve
reveman 2013/09/10 19:57:54 How are we guaranteeing that a new frame is produc
+ ManageTiles();
}
void LayerTreeHostImpl::ResetCurrentFrameTimeForNextFrame() {
« cc/resources/tile_manager.cc ('K') | « cc/resources/tile_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698