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

Unified Diff: components/view_manager/surfaces/top_level_display_client.cc

Issue 1281663002: Mandoline: Allow submitting CompositorFrames directly to mojo::Views (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments Created 5 years, 4 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/view_manager/surfaces/top_level_display_client.cc
diff --git a/components/view_manager/surfaces/top_level_display_client.cc b/components/view_manager/surfaces/top_level_display_client.cc
index 6f894df54453c80a4354f1fd21e5730a623fd93e..251a3ebd4954ddc202fc1d3676143ae8e7f0a98b 100644
--- a/components/view_manager/surfaces/top_level_display_client.cc
+++ b/components/view_manager/surfaces/top_level_display_client.cc
@@ -11,12 +11,10 @@
#include "components/view_manager/surfaces/surfaces_output_surface.h"
#include "components/view_manager/surfaces/surfaces_scheduler.h"
#include "components/view_manager/surfaces/surfaces_state.h"
-#include "mojo/converters/geometry/geometry_type_converters.h"
-#include "mojo/converters/surfaces/surfaces_type_converters.h"
namespace surfaces {
namespace {
-void CallCallback(const mojo::Closure& callback, cc::SurfaceDrawStatus status) {
+void CallCallback(const base::Closure& callback, cc::SurfaceDrawStatus status) {
callback.Run();
}
}
@@ -61,7 +59,7 @@ TopLevelDisplayClient::~TopLevelDisplayClient() {
}
}
-void TopLevelDisplayClient::SubmitFrame(mojo::FramePtr frame,
+void TopLevelDisplayClient::SubmitFrame(scoped_ptr<cc::CompositorFrame> frame,
const base::Closure& callback) {
DCHECK(pending_callback_.is_null());
pending_frame_ = frame.Pass();
@@ -72,13 +70,13 @@ void TopLevelDisplayClient::SubmitFrame(mojo::FramePtr frame,
void TopLevelDisplayClient::Draw() {
gfx::Size frame_size =
- pending_frame_->passes[0]->output_rect.To<gfx::Rect>().size();
+ pending_frame_->delegated_frame_data->render_pass_list.back()->
+ output_rect.size();
last_submitted_frame_size_ = frame_size;
display_->Resize(frame_size);
factory_.SubmitFrame(cc_id_,
- pending_frame_.To<scoped_ptr<cc::CompositorFrame>>(),
+ pending_frame_.Pass(),
base::Bind(&CallCallback, pending_callback_));
- pending_frame_.reset();
surfaces_state_->scheduler()->SetNeedsDraw();
pending_callback_.Reset();
}

Powered by Google App Engine
This is Rietveld 408576698