| Index: webkit/gpu/context_provider_in_process.cc
|
| diff --git a/webkit/gpu/context_provider_in_process.cc b/webkit/gpu/context_provider_in_process.cc
|
| deleted file mode 100644
|
| index a8855ab41a545795fae252807835bd44a212e6c7..0000000000000000000000000000000000000000
|
| --- a/webkit/gpu/context_provider_in_process.cc
|
| +++ /dev/null
|
| @@ -1,134 +0,0 @@
|
| -// Copyright (c) 2013 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 "webkit/gpu/context_provider_in_process.h"
|
| -
|
| -#include "webkit/gpu/grcontext_for_webgraphicscontext3d.h"
|
| -
|
| -namespace webkit {
|
| -namespace gpu {
|
| -
|
| -class ContextProviderInProcess::LostContextCallbackProxy
|
| - : public WebKit::WebGraphicsContext3D::WebGraphicsContextLostCallback {
|
| - public:
|
| - explicit LostContextCallbackProxy(ContextProviderInProcess* provider)
|
| - : provider_(provider) {
|
| - provider_->context3d_->setContextLostCallback(this);
|
| - }
|
| -
|
| - virtual void onContextLost() {
|
| - provider_->OnLostContextInternal();
|
| - }
|
| -
|
| - private:
|
| - ContextProviderInProcess* provider_;
|
| -};
|
| -
|
| -class ContextProviderInProcess::MemoryAllocationCallbackProxy
|
| - : public WebKit::WebGraphicsContext3D::
|
| - WebGraphicsMemoryAllocationChangedCallbackCHROMIUM {
|
| - public:
|
| - explicit MemoryAllocationCallbackProxy(ContextProviderInProcess* provider)
|
| - : provider_(provider) {
|
| - provider_->context3d_->setMemoryAllocationChangedCallbackCHROMIUM(this);
|
| - }
|
| -
|
| - virtual void onMemoryAllocationChanged(
|
| - WebKit::WebGraphicsMemoryAllocation alloc) {
|
| - provider_->OnMemoryAllocationChanged(!!alloc.gpuResourceSizeInBytes);
|
| - }
|
| -
|
| - private:
|
| - ContextProviderInProcess* provider_;
|
| -};
|
| -
|
| -ContextProviderInProcess::ContextProviderInProcess()
|
| - : destroyed_(false) {
|
| -}
|
| -
|
| -ContextProviderInProcess::~ContextProviderInProcess() {}
|
| -
|
| -bool ContextProviderInProcess::InitializeOnMainThread() {
|
| - DCHECK(!context3d_);
|
| -
|
| - WebKit::WebGraphicsContext3D::Attributes attributes;
|
| - attributes.depth = false;
|
| - attributes.stencil = true;
|
| - attributes.antialias = false;
|
| - attributes.shareResources = true;
|
| - attributes.noAutomaticFlushes = true;
|
| -
|
| - using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;
|
| - context3d_.reset(
|
| - WebGraphicsContext3DInProcessCommandBufferImpl::CreateOffscreenContext(
|
| - attributes));
|
| -
|
| - return context3d_;
|
| -}
|
| -
|
| -bool ContextProviderInProcess::BindToCurrentThread() {
|
| - DCHECK(context3d_);
|
| -
|
| - if (lost_context_callback_proxy_)
|
| - return true;
|
| -
|
| - if (!context3d_->makeContextCurrent())
|
| - return false;
|
| -
|
| - lost_context_callback_proxy_.reset(new LostContextCallbackProxy(this));
|
| - return true;
|
| -}
|
| -
|
| -WebKit::WebGraphicsContext3D* ContextProviderInProcess::Context3d() {
|
| - DCHECK(context3d_);
|
| - DCHECK(lost_context_callback_proxy_); // Is bound to thread.
|
| -
|
| - return context3d_.get();
|
| -}
|
| -
|
| -class GrContext* ContextProviderInProcess::GrContext() {
|
| - DCHECK(context3d_);
|
| - DCHECK(lost_context_callback_proxy_); // Is bound to thread.
|
| -
|
| - if (gr_context_)
|
| - return gr_context_->get();
|
| -
|
| - gr_context_.reset(
|
| - new webkit::gpu::GrContextForWebGraphicsContext3D(context3d_.get()));
|
| - memory_allocation_callback_proxy_.reset(
|
| - new MemoryAllocationCallbackProxy(this));
|
| - return gr_context_->get();
|
| -}
|
| -
|
| -void ContextProviderInProcess::VerifyContexts() {
|
| - DCHECK(context3d_);
|
| - DCHECK(lost_context_callback_proxy_); // Is bound to thread.
|
| -
|
| - if (context3d_->isContextLost())
|
| - OnLostContextInternal();
|
| -}
|
| -
|
| -void ContextProviderInProcess::OnLostContextInternal() {
|
| - {
|
| - base::AutoLock lock(destroyed_lock_);
|
| - if (destroyed_)
|
| - return;
|
| - destroyed_ = true;
|
| - }
|
| - OnLostContext();
|
| -}
|
| -
|
| -bool ContextProviderInProcess::DestroyedOnMainThread() {
|
| - base::AutoLock lock(destroyed_lock_);
|
| - return destroyed_;
|
| -}
|
| -
|
| -void ContextProviderInProcess::OnMemoryAllocationChanged(
|
| - bool nonzero_allocation) {
|
| - if (gr_context_)
|
| - gr_context_->SetMemoryLimit(nonzero_allocation);
|
| -}
|
| -
|
| -} // namespace gpu
|
| -} // namespace webkit
|
|
|