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

Side by Side Diff: content/renderer/gpu/render_widget_compositor.cc

Issue 904633004: [cc]: Add a BeginMainFrameNotExpectedSoon signal and route it to the RendererScheduler. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "content/renderer/gpu/render_widget_compositor.h" 5 #include "content/renderer/gpu/render_widget_compositor.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 754 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 void RenderWidgetCompositor::BeginMainFrame(const cc::BeginFrameArgs& args) { 765 void RenderWidgetCompositor::BeginMainFrame(const cc::BeginFrameArgs& args) {
766 double frame_time_sec = (args.frame_time - base::TimeTicks()).InSecondsF(); 766 double frame_time_sec = (args.frame_time - base::TimeTicks()).InSecondsF();
767 double deadline_sec = (args.deadline - base::TimeTicks()).InSecondsF(); 767 double deadline_sec = (args.deadline - base::TimeTicks()).InSecondsF();
768 double interval_sec = args.interval.InSecondsF(); 768 double interval_sec = args.interval.InSecondsF();
769 WebBeginFrameArgs web_begin_frame_args = 769 WebBeginFrameArgs web_begin_frame_args =
770 WebBeginFrameArgs(frame_time_sec, deadline_sec, interval_sec); 770 WebBeginFrameArgs(frame_time_sec, deadline_sec, interval_sec);
771 compositor_deps_->GetRendererScheduler()->WillBeginFrame(args); 771 compositor_deps_->GetRendererScheduler()->WillBeginFrame(args);
772 widget_->webwidget()->beginFrame(web_begin_frame_args); 772 widget_->webwidget()->beginFrame(web_begin_frame_args);
773 } 773 }
774 774
775 void RenderWidgetCompositor::BeginMainFrameNoLongerRequired() {
776 compositor_deps_->GetRendererScheduler()->BeginFrameNoLongerRequired();
777 }
778
775 void RenderWidgetCompositor::Layout() { 779 void RenderWidgetCompositor::Layout() {
776 widget_->webwidget()->layout(); 780 widget_->webwidget()->layout();
777 781
778 if (temporary_copy_output_request_) { 782 if (temporary_copy_output_request_) {
779 DCHECK(layer_tree_host_->root_layer()); 783 DCHECK(layer_tree_host_->root_layer());
780 layer_tree_host_->root_layer()->RequestCopyOfOutput( 784 layer_tree_host_->root_layer()->RequestCopyOfOutput(
781 temporary_copy_output_request_.Pass()); 785 temporary_copy_output_request_.Pass());
782 } 786 }
783 } 787 }
784 788
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
879 widget_->OnSwapBuffersAborted(); 883 widget_->OnSwapBuffersAborted();
880 } 884 }
881 885
882 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { 886 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() {
883 cc::ContextProvider* provider = 887 cc::ContextProvider* provider =
884 compositor_deps_->GetSharedMainThreadContextProvider(); 888 compositor_deps_->GetSharedMainThreadContextProvider();
885 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); 889 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM();
886 } 890 }
887 891
888 } // namespace content 892 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698