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

Unified Diff: components/exo/compositor_frame_sink_holder.cc

Issue 2724953007: [exo] Clean up BeginFrame distribution & add acks in Surface. (Closed)
Patch Set: rename instance var. Created 3 years, 9 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
« no previous file with comments | « components/exo/compositor_frame_sink_holder.h ('k') | components/exo/surface.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/exo/compositor_frame_sink_holder.cc
diff --git a/components/exo/compositor_frame_sink_holder.cc b/components/exo/compositor_frame_sink_holder.cc
index 3d55a7d68b1def413ddcd108acc6cb1b6235c2e7..3d6e5a2716e09fa5bfb30535ffe5bfa3984df74c 100644
--- a/components/exo/compositor_frame_sink_holder.cc
+++ b/components/exo/compositor_frame_sink_holder.cc
@@ -22,6 +22,7 @@ CompositorFrameSinkHolder::CompositorFrameSinkHolder(
begin_frame_source_(base::MakeUnique<cc::ExternalBeginFrameSource>(this)),
weak_factory_(this) {
surface_->AddSurfaceObserver(this);
+ surface_->SetBeginFrameSource(begin_frame_source_.get());
}
bool CompositorFrameSinkHolder::HasReleaseCallbackForResource(
@@ -36,11 +37,6 @@ void CompositorFrameSinkHolder::SetResourceReleaseCallback(
release_callbacks_[id] = callback;
}
-void CompositorFrameSinkHolder::SetNeedsBeginFrame(bool needs_begin_frame) {
- needs_begin_frame_ = needs_begin_frame;
- OnNeedsBeginFrames(needs_begin_frame);
-}
-
////////////////////////////////////////////////////////////////////////////////
// cc::mojom::MojoCompositorFrameSinkClient overrides:
@@ -49,10 +45,6 @@ void CompositorFrameSinkHolder::DidReceiveCompositorFrameAck() {
}
void CompositorFrameSinkHolder::OnBeginFrame(const cc::BeginFrameArgs& args) {
- // TODO(eseckler): Hook up |surface_| to the ExternalBeginFrameSource.
- if (surface_)
- surface_->BeginFrame(args.frame_time);
-
begin_frame_source_->OnBeginFrame(args);
}
@@ -73,22 +65,10 @@ void CompositorFrameSinkHolder::WillDrawSurface(
const gfx::Rect& damage_rect) {
if (surface_)
surface_->WillDraw();
-
- UpdateNeedsBeginFrame();
-}
-
-////////////////////////////////////////////////////////////////////////////////
-// cc::BeginFrameObserver overrides:
-
-const cc::BeginFrameArgs& CompositorFrameSinkHolder::LastUsedBeginFrameArgs()
- const {
- return last_begin_frame_args_;
}
-void CompositorFrameSinkHolder::OnBeginFrameSourcePausedChanged(bool paused) {}
-
////////////////////////////////////////////////////////////////////////////////
-// cc::ExternalBeginFrameSouceClient overrides:
+// cc::ExternalBeginFrameSourceClient overrides:
void CompositorFrameSinkHolder::OnNeedsBeginFrames(bool needs_begin_frames) {
frame_sink_->SetNeedsBeginFrame(needs_begin_frames);
@@ -114,16 +94,4 @@ CompositorFrameSinkHolder::~CompositorFrameSinkHolder() {
surface_->RemoveSurfaceObserver(this);
}
-void CompositorFrameSinkHolder::UpdateNeedsBeginFrame() {
- if (!begin_frame_source_)
- return;
-
- bool needs_begin_frame = surface_ && surface_->NeedsBeginFrame();
- if (needs_begin_frame == needs_begin_frame_)
- return;
-
- needs_begin_frame_ = needs_begin_frame;
- OnNeedsBeginFrames(needs_begin_frame_);
-}
-
} // namespace exo
« no previous file with comments | « components/exo/compositor_frame_sink_holder.h ('k') | components/exo/surface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698