| 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 9259b34743b8906fbee1a0ac5a63a78b38d5e5c0..5445aed8fea72bdc7d18f26c711f586b76f57ec6 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -283,6 +283,7 @@ void LayerTreeHostImpl::BeginMainFrameAborted(CommitEarlyOutReason reason) {
|
| if (CommitEarlyOutHandledCommit(reason)) {
|
| active_tree_->ApplySentScrollAndScaleDeltasFromAbortedCommit();
|
| active_tree_->ResetContentsTexturesPurged();
|
| + RecordMainFrameTiming();
|
| }
|
| }
|
|
|
| @@ -1836,6 +1837,7 @@ void LayerTreeHostImpl::ActivateSyncTree() {
|
| pending_page_scale_animation->scale,
|
| pending_page_scale_animation->duration);
|
| }
|
| + RecordMainFrameTiming();
|
| }
|
|
|
| void LayerTreeHostImpl::SetVisible(bool visible) {
|
| @@ -2077,6 +2079,22 @@ void LayerTreeHostImpl::CreateResourceAndTileTaskWorkerPool(
|
| settings_.renderer_settings.refresh_rate));
|
| }
|
|
|
| +void LayerTreeHostImpl::SetBeginMainFrameTime(base::TimeTicks frame_time) {
|
| + main_frame_time_ = frame_time;
|
| +}
|
| +
|
| +void LayerTreeHostImpl::RecordMainFrameTiming() {
|
| + std::vector<int64_t> request_ids;
|
| + active_tree_->GatherFrameTimingRequestIds(&request_ids);
|
| + if (request_ids.empty())
|
| + return;
|
| +
|
| + base::TimeTicks end_time = client_->GetNextBeginImplFrameTimeIfRequested();
|
| + frame_timing_tracker_->SaveMainFrameTimeStamps(
|
| + request_ids, main_frame_time_, end_time,
|
| + active_tree_->source_frame_number());
|
| +}
|
| +
|
| void LayerTreeHostImpl::DestroyTileManager() {
|
| tile_manager_ = nullptr;
|
| resource_pool_ = nullptr;
|
|
|