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

Unified Diff: components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc

Issue 2092843002: Implement CompositorFrame Struct Traits (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed dcheng's comments Created 4 years, 6 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
Index: components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc
diff --git a/components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc b/components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc
index 4c20a704a21e9742875db931268af4a5de9217d4..a18d0319753b02964b670cd9a8210a3a8f871931 100644
--- a/components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc
+++ b/components/mus/gpu/display_compositor/compositor_frame_sink_impl.cc
@@ -7,7 +7,6 @@
#include "cc/ipc/compositor_frame.mojom.h"
#include "cc/surfaces/surface_factory.h"
#include "components/mus/gpu/display_compositor/compositor_frame_sink_delegate.h"
-#include "components/mus/public/cpp/surfaces/surfaces_type_converters.h"
namespace mus {
namespace gpu {
@@ -56,14 +55,10 @@ void CompositorFrameSinkImpl::SetNeedsBeginFrame(bool needs_begin_frame) {
}
void CompositorFrameSinkImpl::SubmitCompositorFrame(
- cc::mojom::CompositorFramePtr frame,
+ cc::CompositorFrame compositor_frame,
const SubmitCompositorFrameCallback& callback) {
- // TODO(fsamuel): Validate that SurfaceDrawQuad refer to allowable surface
- // IDs.
- std::unique_ptr<cc::CompositorFrame> compositor_frame =
- ConvertToCompositorFrame(frame);
gfx::Size frame_size =
- compositor_frame->delegated_frame_data->render_pass_list.back()
+ compositor_frame.delegated_frame_data->render_pass_list.back()
->output_rect.size();
if (frame_size.IsEmpty() || frame_size != last_submitted_frame_size_) {
if (!surface_id_.is_null())
@@ -73,7 +68,10 @@ void CompositorFrameSinkImpl::SubmitCompositorFrame(
factory_.Create(surface_id_);
last_submitted_frame_size_ = frame_size;
}
- factory_.SubmitCompositorFrame(surface_id_, std::move(compositor_frame),
+ std::unique_ptr<cc::CompositorFrame> compositor_frame_copy(
+ new cc::CompositorFrame);
+ *compositor_frame_copy = std::move(compositor_frame);
+ factory_.SubmitCompositorFrame(surface_id_, std::move(compositor_frame_copy),
base::Bind(&CallCallback, callback));
}
« no previous file with comments | « components/mus/gpu/display_compositor/compositor_frame_sink_impl.h ('k') | components/mus/public/cpp/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698