Skip to content

Commit

Permalink
Extract WebGraphicsContext3DInProcessCommandBufferImpl from webkit/.
Browse files Browse the repository at this point in the history
This moves it into gpu/blink/ along side WebGraphicsContext3DImpl,
consolidating more this code as we are in the process of removing
webkit/ glue directory altogether. This is one more step on this way.

BUG=338338
TEST=compositor_unittests, gpu_unittests, content_unittests
R=jamesr@chromium.org,piman@chromium.org
TBR=boliu@chromium.org

Review URL: https://codereview.chromium.org/841773006

Cr-Commit-Position: refs/heads/master@{#310694}
  • Loading branch information
tfarina authored and Commit bot committed Jan 9, 2015
1 parent 8af6efb commit 70da38b
Show file tree
Hide file tree
Showing 23 changed files with 54 additions and 57 deletions.
4 changes: 2 additions & 2 deletions android_webview/browser/hardware_renderer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include "cc/scheduler/begin_frame_source.h"
#include "cc/trees/layer_tree_host.h"
#include "cc/trees/layer_tree_settings.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "gpu/command_buffer/common/gles2_cmd_utils.h"
#include "ui/gfx/frame_time.h"
Expand All @@ -28,14 +29,13 @@
#include "ui/gfx/transform.h"
#include "ui/gl/gl_bindings.h"
#include "webkit/common/gpu/context_provider_in_process.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace android_webview {

namespace {

using gpu_blink::WebGraphicsContext3DImpl;
using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;
using gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl;

scoped_refptr<cc::ContextProvider> CreateContext(
scoped_refptr<gfx::GLSurface> surface,
Expand Down
1 change: 0 additions & 1 deletion android_webview/lib/main/aw_main_delegate.cc
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "gpu/command_buffer/service/gpu_switches.h"
#include "media/base/media_switches.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace android_webview {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,16 @@
#include "content/browser/android/in_process/synchronous_compositor_output_surface.h"
#include "content/public/browser/browser_thread.h"
#include "content/renderer/gpu/frame_swap_message_queue.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "gpu/command_buffer/common/gles2_cmd_utils.h"
#include "ui/gl/android/surface_texture.h"
#include "ui/gl/gl_surface.h"
#include "ui/gl/gl_surface_stub.h"
#include "webkit/common/gpu/context_provider_in_process.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

using gpu_blink::WebGraphicsContext3DImpl;
using gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl;
using webkit::gpu::ContextProviderWebContext;

namespace content {
Expand All @@ -35,9 +37,6 @@ blink::WebGraphicsContext3D::Attributes GetDefaultAttribs() {
return attributes;
}

using gpu_blink::WebGraphicsContext3DImpl;
using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;

scoped_ptr<gpu::GLInProcessContext> CreateOffscreenContext(
const blink::WebGraphicsContext3D::Attributes& attributes) {
const gfx::GpuPreference gpu_preference = gfx::PreferDiscreteGpu;
Expand Down Expand Up @@ -160,7 +159,6 @@ class SynchronousCompositorFactoryImpl::VideoContextProvider
DISALLOW_COPY_AND_ASSIGN(VideoContextProvider);
};

using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;

SynchronousCompositorFactoryImpl::SynchronousCompositorFactoryImpl()
: record_full_layer_(true),
Expand Down Expand Up @@ -236,7 +234,7 @@ SynchronousCompositorFactoryImpl::CreateStreamTextureFactory(int frame_id) {
return factory;
}

webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl*
WebGraphicsContext3DInProcessCommandBufferImpl*
SynchronousCompositorFactoryImpl::CreateOffscreenGraphicsContext3D(
const blink::WebGraphicsContext3D::Attributes& attributes) {
return WrapContextWithAttributes(CreateOffscreenContext(attributes),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,9 @@ namespace gpu {
class GLInProcessContext;
}

namespace webkit {
namespace gpu {
namespace gpu_blink {
class WebGraphicsContext3DInProcessCommandBufferImpl;
}
}

namespace content {

Expand All @@ -46,7 +44,7 @@ class SynchronousCompositorFactoryImpl : public SynchronousCompositorFactory {
const std::string& debug_name) override;
virtual scoped_refptr<StreamTextureFactory> CreateStreamTextureFactory(
int view_id) override;
virtual webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl*
virtual gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl*
CreateOffscreenGraphicsContext3D(
const blink::WebGraphicsContext3D::Attributes& attributes) override;

Expand Down
2 changes: 1 addition & 1 deletion content/browser/gpu/gpu_ipc_browsertests.cc
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
#include "content/public/browser/gpu_data_manager.h"
#include "content/public/common/content_switches.h"
#include "content/public/test/content_browser_test.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "ui/gl/gl_switches.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace {

Expand Down
2 changes: 1 addition & 1 deletion content/browser/renderer_host/compositor_impl_android.cc
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@
#include "content/common/gpu/gpu_process_launch_causes.h"
#include "content/common/host_shared_bitmap_manager.h"
#include "content/public/browser/android/compositor_client.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/command_buffer/client/context_support.h"
#include "gpu/command_buffer/client/gles2_interface.h"
#include "third_party/khronos/GLES2/gl2.h"
Expand All @@ -56,7 +57,6 @@
#include "ui/gfx/android/device_display_info.h"
#include "ui/gfx/frame_time.h"
#include "webkit/common/gpu/context_provider_in_process.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace content {

Expand Down
6 changes: 3 additions & 3 deletions content/common/gpu/client/gl_helper_benchmark.cc
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@
#include "content/common/gpu/client/gl_helper_scaling.h"
#include "content/public/test/unittest_test_suite.h"
#include "content/test/content_test_suite.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "third_party/skia/include/core/SkTypes.h"
#include "ui/gfx/codec/png_codec.h"
#include "ui/gl/gl_surface.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

#if defined(OS_MACOSX)
#include "base/mac/scoped_nsautorelease_pool.h"
Expand Down Expand Up @@ -59,7 +59,7 @@ class GLHelperTest : public testing::Test {
void SetUp() override {
WebGraphicsContext3D::Attributes attributes;
bool lose_context_when_out_of_memory = false;
context_ = webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl::
context_ = gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl::
CreateOffscreenContext(attributes, lose_context_when_out_of_memory);
context_->InitializeOnCurrentThread();

Expand Down Expand Up @@ -107,7 +107,7 @@ class GLHelperTest : public testing::Test {
base::CloseFile(f);
}

scoped_ptr<webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl>
scoped_ptr<gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl>
context_;
scoped_ptr<content::GLHelper> helper_;
scoped_ptr<content::GLHelperScaling> helper_scaling_;
Expand Down
4 changes: 2 additions & 2 deletions content/common/gpu/client/gl_helper_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@
#include "content/common/gpu/client/gl_helper_scaling.h"
#include "content/public/test/unittest_test_suite.h"
#include "content/test/content_test_suite.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "media/base/video_frame.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "third_party/skia/include/core/SkTypes.h"
#include "ui/gl/gl_implementation.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

#if defined(OS_MACOSX)
#include "base/mac/scoped_nsautorelease_pool.h"
Expand All @@ -44,7 +44,7 @@ namespace content {

using blink::WebGLId;
using blink::WebGraphicsContext3D;
using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;
using gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl;

content::GLHelper::ScalerQuality kQualities[] = {
content::GLHelper::SCALER_QUALITY_BEST,
Expand Down
4 changes: 2 additions & 2 deletions content/common/gpu/client/gpu_in_process_context_tests.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@
#include <vector>

#include "content/public/test/unittest_test_suite.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_surface.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace {

using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;
using gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl;

class ContextTestBase : public testing::Test {
public:
Expand Down
7 changes: 5 additions & 2 deletions content/renderer/android/synchronous_compositor_factory.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,13 @@ class ContextProvider;
class OutputSurface;
}

namespace gpu_blink {
class WebGraphicsContext3DInProcessCommandBufferImpl;
}

namespace webkit {
namespace gpu {
class ContextProviderWebContext;
class WebGraphicsContext3DInProcessCommandBufferImpl;
}
}

Expand Down Expand Up @@ -62,7 +65,7 @@ class SynchronousCompositorFactory {
const std::string& debug_name) = 0;
virtual scoped_refptr<StreamTextureFactory> CreateStreamTextureFactory(
int frame_id) = 0;
virtual webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl*
virtual gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl*
CreateOffscreenGraphicsContext3D(
const blink::WebGraphicsContext3D::Attributes& attributes) = 0;

Expand Down
4 changes: 2 additions & 2 deletions content/renderer/renderer_blink_platform_impl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@
#if defined(OS_ANDROID)
#include "content/renderer/android/synchronous_compositor_factory.h"
#include "content/renderer/media/android/audio_decoder_android.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#endif

#if defined(OS_MACOSX)
Expand Down Expand Up @@ -964,7 +964,7 @@ RendererBlinkPlatformImpl::createOffscreenGraphicsContext3D(
#if defined(OS_ANDROID)
if (SynchronousCompositorFactory* factory =
SynchronousCompositorFactory::GetInstance()) {
scoped_ptr<webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl>
scoped_ptr<gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl>
in_process_context(
factory->CreateOffscreenGraphicsContext3D(attributes));
if (!in_process_context ||
Expand Down
2 changes: 2 additions & 0 deletions gpu/blink/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ component("blink") {
"gpu_blink_export.h",
"webgraphicscontext3d_impl.cc",
"webgraphicscontext3d_impl.h",
"webgraphicscontext3d_in_process_command_buffer_impl.cc",
"webgraphicscontext3d_in_process_command_buffer_impl.h",
]

defines = [ "GPU_BLINK_IMPLEMENTATION" ]
Expand Down
2 changes: 2 additions & 0 deletions gpu/blink/gpu_blink.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@
'gpu_blink_export.h',
'webgraphicscontext3d_impl.cc',
'webgraphicscontext3d_impl.h',
'webgraphicscontext3d_in_process_command_buffer_impl.cc',
'webgraphicscontext3d_in_process_command_buffer_impl.h',
],
'defines': [
'GPU_BLINK_IMPLEMENTATION',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"

#include <GLES2/gl2.h>
#ifndef GL_GLEXT_PROTOTYPES
Expand All @@ -27,8 +27,7 @@
using gpu::gles2::GLES2Implementation;
using gpu::GLInProcessContext;

namespace webkit {
namespace gpu {
namespace gpu_blink {

// static
scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl>
Expand Down Expand Up @@ -176,5 +175,4 @@ void WebGraphicsContext3DInProcessCommandBufferImpl::OnContextLost() {
}
}

} // namespace gpu
} // namespace webkit
} // namespace gpu_blink
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,23 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
#define WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
#ifndef GPU_BLINK_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
#define GPU_BLINK_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_

#include <vector>

#include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
#include "gpu/blink/gpu_blink_export.h"
#include "gpu/blink/webgraphicscontext3d_impl.h"
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "third_party/WebKit/public/platform/WebGraphicsContext3D.h"
#include "third_party/WebKit/public/platform/WebString.h"
#include "ui/gfx/native_widget_types.h"
#include "webkit/common/gpu/webkit_gpu_export.h"

namespace gpu {
class ContextSupport;
class GLInProcessContext;

namespace gles2 {
class GLES2Interface;
Expand All @@ -26,15 +27,10 @@ struct ContextCreationAttribHelper;
}
}

namespace gpu {
class GLInProcessContext;
}

namespace webkit {
namespace gpu {
namespace gpu_blink {

class WEBKIT_GPU_EXPORT WebGraphicsContext3DInProcessCommandBufferImpl
: public gpu_blink::WebGraphicsContext3DImpl {
class GPU_BLINK_EXPORT WebGraphicsContext3DInProcessCommandBufferImpl
: public WebGraphicsContext3DImpl {
public:
enum MappedMemoryReclaimLimit {
kNoLimit = 0,
Expand Down Expand Up @@ -104,7 +100,6 @@ class WEBKIT_GPU_EXPORT WebGraphicsContext3DInProcessCommandBufferImpl
::gpu::gles2::GLES2Implementation* real_gl_;
};

} // namespace gpu
} // namespace webkit
} // namespace gpu_blink

#endif // WEBKIT_COMMON_GPU_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
#endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IN_PROCESS_COMMAND_BUFFER_IMPL_H_
1 change: 1 addition & 0 deletions ui/compositor/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,7 @@ source_set("test_support") {
"//cc",
"//cc/surfaces",
"//cc:test_support",
"//gpu/blink",
"//skia",
"//testing/gtest",
"//third_party/WebKit/public:blink_minimal",
Expand Down
1 change: 1 addition & 0 deletions ui/compositor/compositor.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@
'<(DEPTH)/cc/cc.gyp:cc',
'<(DEPTH)/cc/cc.gyp:cc_surfaces',
'<(DEPTH)/cc/cc_tests.gyp:cc_test_support',
'<(DEPTH)/gpu/blink/gpu_blink.gyp:gpu_blink',
'<(DEPTH)/skia/skia.gyp:skia',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(DEPTH)/third_party/WebKit/public/blink.gyp:blink_minimal',
Expand Down
1 change: 1 addition & 0 deletions ui/compositor/test/DEPS
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
include_rules = [
"+gpu/blink",
"+gpu/command_buffer/client",
"+webkit/common/gpu",
]
4 changes: 2 additions & 2 deletions ui/compositor/test/in_process_context_factory.cc
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
#include "cc/surfaces/surface_id_allocator.h"
#include "cc/test/pixel_test_output_surface.h"
#include "cc/test/test_shared_bitmap_manager.h"
#include "gpu/blink/webgraphicscontext3d_in_process_command_buffer_impl.h"
#include "gpu/command_buffer/client/context_support.h"
#include "gpu/command_buffer/client/gles2_interface.h"
#include "ui/compositor/compositor_switches.h"
Expand All @@ -21,7 +22,6 @@
#include "ui/gl/gl_surface.h"
#include "webkit/common/gpu/context_provider_in_process.h"
#include "webkit/common/gpu/grcontext_for_webgraphicscontext3d.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"

namespace ui {
namespace {
Expand Down Expand Up @@ -94,7 +94,7 @@ void InProcessContextFactory::CreateOutputSurface(
attrs.shareResources = true;
bool lose_context_when_out_of_memory = true;

using webkit::gpu::WebGraphicsContext3DInProcessCommandBufferImpl;
using gpu_blink::WebGraphicsContext3DInProcessCommandBufferImpl;
scoped_ptr<WebGraphicsContext3DInProcessCommandBufferImpl> context3d(
WebGraphicsContext3DInProcessCommandBufferImpl::CreateViewContext(
attrs, lose_context_when_out_of_memory, compositor->widget()));
Expand Down
2 changes: 0 additions & 2 deletions webkit/common/gpu/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ component("gpu") {
"context_provider_web_context.h",
"grcontext_for_webgraphicscontext3d.cc",
"grcontext_for_webgraphicscontext3d.h",
"webgraphicscontext3d_in_process_command_buffer_impl.cc",
"webgraphicscontext3d_in_process_command_buffer_impl.h",
]

defines = [ "WEBKIT_GPU_IMPLEMENTATION" ]
Expand Down
Loading

0 comments on commit 70da38b

Please sign in to comment.