| Index: components/view_manager/server_view.cc
|
| diff --git a/components/view_manager/server_view.cc b/components/view_manager/server_view.cc
|
| index 411e0f90add0b237aef8ffe83ae66c9afa03322b..6e029da21ae7f055456b0d2dabc875f2d9eb54b6 100644
|
| --- a/components/view_manager/server_view.cc
|
| +++ b/components/view_manager/server_view.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/strings/stringprintf.h"
|
| #include "components/view_manager/server_view_delegate.h"
|
| #include "components/view_manager/server_view_observer.h"
|
| +#include "mojo/converters/geometry/geometry_type_converters.h"
|
|
|
| namespace view_manager {
|
|
|
| @@ -22,7 +23,8 @@ ServerView::ServerView(ServerViewDelegate* delegate, const ViewId& id)
|
| // Don't notify newly added observers during notification. This causes
|
| // problems for code that adds an observer as part of an observer
|
| // notification (such as ServerViewDrawTracker).
|
| - observers_(base::ObserverList<ServerViewObserver>::NOTIFY_EXISTING_ONLY) {
|
| + observers_(base::ObserverList<ServerViewObserver>::NOTIFY_EXISTING_ONLY),
|
| + binding_(this) {
|
| DCHECK(delegate); // Must provide a delegate.
|
| }
|
|
|
| @@ -47,6 +49,10 @@ void ServerView::RemoveObserver(ServerViewObserver* observer) {
|
| observers_.RemoveObserver(observer);
|
| }
|
|
|
| +void ServerView::Bind(mojo::InterfaceRequest<CompositorFrameReceiver> request) {
|
| + binding_.Bind(request.Pass());
|
| +}
|
| +
|
| void ServerView::Add(ServerView* child) {
|
| // We assume validation checks happened already.
|
| DCHECK(child);
|
| @@ -217,6 +223,14 @@ void ServerView::SetSurfaceId(cc::SurfaceId surface_id) {
|
| delegate_->OnScheduleViewPaint(this);
|
| }
|
|
|
| +void ServerView::SubmitCompositorFrame(
|
| + mojo::CompositorFramePtr frame,
|
| + const SubmitCompositorFrameCallback& callback) {
|
| + gfx::Size frame_size = frame->passes[0]->output_rect.To<gfx::Rect>().size();
|
| + delegate_->SubmitCompositorFrame(this, frame.Pass(), callback);
|
| + last_submitted_frame_size_ = frame_size;
|
| +}
|
| +
|
| #if !defined(NDEBUG)
|
| std::string ServerView::GetDebugWindowHierarchy() const {
|
| std::string result;
|
|
|