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

Unified Diff: content/browser/compositor/gpu_process_transport_factory.cc

Issue 2411793008: Adds BeginFrameControl via DevTools.
Patch Set: BFC prototype v2 with allow_latency_opts and waiting for BFOs. Created 4 years, 1 month 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: content/browser/compositor/gpu_process_transport_factory.cc
diff --git a/content/browser/compositor/gpu_process_transport_factory.cc b/content/browser/compositor/gpu_process_transport_factory.cc
index 7d1cf0c2d283a6620d1de210bc8fc8348d66ee4d..ed39cf6881074ec4c479998fc88980239020bc19 100644
--- a/content/browser/compositor/gpu_process_transport_factory.cc
+++ b/content/browser/compositor/gpu_process_transport_factory.cc
@@ -549,7 +549,7 @@ void GpuProcessTransportFactory::EstablishedGpuChannel(
#endif
std::unique_ptr<cc::DisplayScheduler> scheduler(new cc::DisplayScheduler(
- begin_frame_source.get(), compositor->task_runner().get(),
+ compositor->task_runner().get(),
display_output_surface->capabilities().max_frames_pending));
// The Display owns and uses the |display_output_surface| created above.
@@ -727,6 +727,18 @@ void GpuProcessTransportFactory::SetDisplayVSyncParameters(
data->begin_frame_source->OnUpdateVSyncParameters(timebase, interval);
}
+void GpuProcessTransportFactory::SwapBeginFrameSource(
+ ui::Compositor* compositor,
+ std::unique_ptr<cc::BeginFrameSource>* begin_frame_source) {
+ PerCompositorDataMap::iterator it = per_compositor_data_.find(compositor);
+ if (it == per_compositor_data_.end())
+ return;
+ PerCompositorData* data = it->second.get();
+ DCHECK(data);
+ if (data->display)
+ data->display->SwapBeginFrameSource(begin_frame_source);
+}
+
void GpuProcessTransportFactory::SetOutputIsSecure(ui::Compositor* compositor,
bool secure) {
PerCompositorDataMap::iterator it = per_compositor_data_.find(compositor);
« no previous file with comments | « content/browser/compositor/gpu_process_transport_factory.h ('k') | content/browser/devtools/protocol/emulation_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698