| Index: mojo/services/native_viewport/viewport_surface.cc
|
| diff --git a/mojo/services/native_viewport/viewport_surface.cc b/mojo/services/native_viewport/viewport_surface.cc
|
| deleted file mode 100644
|
| index 96ed0835e401dbc712d923e2ec058c812d05a21b..0000000000000000000000000000000000000000
|
| --- a/mojo/services/native_viewport/viewport_surface.cc
|
| +++ /dev/null
|
| @@ -1,118 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "mojo/services/native_viewport/viewport_surface.h"
|
| -
|
| -#include "base/bind.h"
|
| -#include "cc/surfaces/surface_id_allocator.h"
|
| -#include "mojo/converters/geometry/geometry_type_converters.h"
|
| -#include "mojo/converters/surfaces/surfaces_type_converters.h"
|
| -#include "mojo/services/public/cpp/surfaces/surfaces_utils.h"
|
| -#include "ui/gfx/transform.h"
|
| -
|
| -namespace mojo {
|
| -
|
| -ViewportSurface::ViewportSurface(SurfacesService* surfaces_service,
|
| - Gpu* gpu_service,
|
| - const gfx::Size& size,
|
| - cc::SurfaceId child_id)
|
| - : gpu_service_(gpu_service),
|
| - widget_id_(0u),
|
| - size_(size),
|
| - child_id_(child_id),
|
| - weak_factory_(this) {
|
| - surfaces_service->CreateSurfaceConnection(
|
| - base::Bind(&ViewportSurface::OnSurfaceConnectionCreated,
|
| - weak_factory_.GetWeakPtr()));
|
| -}
|
| -
|
| -ViewportSurface::~ViewportSurface() {
|
| -}
|
| -
|
| -void ViewportSurface::SetWidgetId(uint64_t widget_id) {
|
| - widget_id_ = widget_id;
|
| - if (id_allocator_)
|
| - BindSurfaceToNativeViewport();
|
| -}
|
| -
|
| -void ViewportSurface::SetSize(const gfx::Size& size) {
|
| - if (size_ == size)
|
| - return;
|
| -
|
| - size_ = size;
|
| - if (id_.is_null())
|
| - return;
|
| -
|
| - surface_->DestroySurface(SurfaceId::From(id_));
|
| - if (widget_id_)
|
| - BindSurfaceToNativeViewport();
|
| -}
|
| -
|
| -void ViewportSurface::SetChildId(cc::SurfaceId child_id) {
|
| - child_id_ = child_id;
|
| - SubmitFrame();
|
| -}
|
| -
|
| -void ViewportSurface::OnSurfaceConnectionCreated(SurfacePtr surface,
|
| - uint32_t id_namespace) {
|
| - surface_ = surface.Pass();
|
| - surface_.set_client(this);
|
| - id_allocator_.reset(new cc::SurfaceIdAllocator(id_namespace));
|
| - if (widget_id_ != 0u)
|
| - BindSurfaceToNativeViewport();
|
| -}
|
| -
|
| -void ViewportSurface::BindSurfaceToNativeViewport() {
|
| - ViewportParameterListenerPtr listener;
|
| - InterfaceRequest<ViewportParameterListener> listener_request =
|
| - GetProxy(&listener);
|
| -
|
| - CommandBufferPtr command_buffer;
|
| - gpu_service_->CreateOnscreenGLES2Context(widget_id_, Size::From(size_),
|
| - GetProxy(&command_buffer),
|
| - listener.Pass());
|
| -
|
| - id_ = id_allocator_->GenerateId();
|
| - surface_->CreateGLES2BoundSurface(command_buffer.Pass(), SurfaceId::From(id_),
|
| - Size::From(size_), listener_request.Pass());
|
| -
|
| - SubmitFrame();
|
| -}
|
| -
|
| -void ViewportSurface::SubmitFrame() {
|
| - if (child_id_.is_null() || id_.is_null())
|
| - return;
|
| -
|
| - SurfaceQuadStatePtr surface_quad_state = SurfaceQuadState::New();
|
| - surface_quad_state->surface = SurfaceId::From(child_id_);
|
| -
|
| - gfx::Rect bounds(size_);
|
| -
|
| - QuadPtr surface_quad = Quad::New();
|
| - surface_quad->material = Material::MATERIAL_SURFACE_CONTENT;
|
| - surface_quad->rect = Rect::From(bounds);
|
| - surface_quad->opaque_rect = Rect::From(bounds);
|
| - surface_quad->visible_rect = Rect::From(bounds);
|
| - surface_quad->needs_blending = true;
|
| - surface_quad->shared_quad_state_index = 0;
|
| - surface_quad->surface_quad_state = surface_quad_state.Pass();
|
| -
|
| - PassPtr pass = CreateDefaultPass(1, *mojo::Rect::From(bounds));
|
| -
|
| - pass->quads.push_back(surface_quad.Pass());
|
| - pass->shared_quad_states.push_back(CreateDefaultSQS(
|
| - *mojo::Size::From(size_)));
|
| -
|
| - FramePtr frame = Frame::New();
|
| - frame->passes.push_back(pass.Pass());
|
| - frame->resources.resize(0u);
|
| - surface_->SubmitFrame(SurfaceId::From(id_), frame.Pass(), mojo::Closure());
|
| -}
|
| -
|
| -void ViewportSurface::ReturnResources(Array<ReturnedResourcePtr> resources) {
|
| - // We never submit resources so we should never get any back.
|
| - DCHECK_EQ(0u, resources.size());
|
| -}
|
| -
|
| -} // namespace mojo
|
|
|