| Index: content/test/layouttest_support.cc
|
| diff --git a/content/test/layouttest_support.cc b/content/test/layouttest_support.cc
|
| index 55d825da7a882cf9ce20b63140eb29bc53607221..e50757b14a791a747006036d4565a24250d2f355 100644
|
| --- a/content/test/layouttest_support.cc
|
| +++ b/content/test/layouttest_support.cc
|
| @@ -12,7 +12,11 @@
|
| #include "base/memory/ptr_util.h"
|
| #include "base/strings/string_util.h"
|
| #include "build/build_config.h"
|
| -#include "cc/test/pixel_test_delegating_output_surface.h"
|
| +#include "cc/output/texture_mailbox_deleter.h"
|
| +#include "cc/scheduler/begin_frame_source.h"
|
| +#include "cc/scheduler/delay_based_time_source.h"
|
| +#include "cc/test/pixel_test_output_surface.h"
|
| +#include "cc/test/test_delegating_output_surface.h"
|
| #include "components/scheduler/test/renderer_scheduler_test_support.h"
|
| #include "components/test_runner/test_common.h"
|
| #include "components/test_runner/web_frame_test_proxy.h"
|
| @@ -196,26 +200,50 @@ class LayoutTestDependenciesImpl : public LayoutTestDependencies {
|
| const bool automatic_flushes = false;
|
| const bool support_locking = false;
|
|
|
| - scoped_refptr<cc::ContextProvider> display_context_provider(
|
| - new ContextProviderCommandBuffer(
|
| - std::move(gpu_channel), gpu::GPU_STREAM_DEFAULT,
|
| - gpu::GpuStreamPriority::NORMAL, gpu::kNullSurfaceHandle,
|
| - GURL(
|
| - "chrome://gpu/LayoutTestDependenciesImpl::CreateOutputSurface"),
|
| - automatic_flushes, support_locking, gpu::SharedMemoryLimits(),
|
| - attributes, nullptr,
|
| - command_buffer_metrics::OFFSCREEN_CONTEXT_FOR_TESTING));
|
| + bool flipped_output_surface = false;
|
| + std::unique_ptr<cc::OutputSurface> display_output_surface(
|
| + new cc::PixelTestOutputSurface(
|
| + make_scoped_refptr(new ContextProviderCommandBuffer(
|
| + std::move(gpu_channel), gpu::GPU_STREAM_DEFAULT,
|
| + gpu::GpuStreamPriority::NORMAL, gpu::kNullSurfaceHandle,
|
| + GURL("chrome://gpu/"
|
| + "LayoutTestDependenciesImpl::CreateOutputSurface"),
|
| + automatic_flushes, support_locking, gpu::SharedMemoryLimits(),
|
| + attributes, nullptr,
|
| + command_buffer_metrics::OFFSCREEN_CONTEXT_FOR_TESTING)),
|
| + nullptr, flipped_output_surface));
|
| +
|
| + auto* task_runner = deps->GetCompositorImplThreadTaskRunner().get();
|
| + bool synchronous_compositor = !task_runner;
|
| + if (!task_runner)
|
| + task_runner = base::ThreadTaskRunnerHandle::Get().get();
|
| +
|
| + std::unique_ptr<cc::SyntheticBeginFrameSource> begin_frame_source;
|
| + std::unique_ptr<cc::DisplayScheduler> scheduler;
|
| + if (!synchronous_compositor) {
|
| + begin_frame_source.reset(new cc::DelayBasedBeginFrameSource(
|
| + base::MakeUnique<cc::DelayBasedTimeSource>(task_runner)));
|
| + scheduler.reset(new cc::DisplayScheduler(
|
| + begin_frame_source.get(), task_runner,
|
| + display_output_surface->capabilities().max_frames_pending));
|
| + }
|
|
|
| cc::LayerTreeSettings settings =
|
| RenderWidgetCompositor::GenerateLayerTreeSettings(
|
| *base::CommandLine::ForCurrentProcess(), deps, 1.f);
|
|
|
| - return base::MakeUnique<cc::PixelTestDelegatingOutputSurface>(
|
| + std::unique_ptr<cc::Display> display(new cc::Display(
|
| + deps->GetSharedBitmapManager(), deps->GetGpuMemoryBufferManager(),
|
| + settings.renderer_settings, std::move(begin_frame_source),
|
| + std::move(display_output_surface), std::move(scheduler),
|
| + base::MakeUnique<cc::TextureMailboxDeleter>(task_runner)));
|
| +
|
| + const bool context_shared_with_compositor = false;
|
| + const bool allow_force_reclaim_resources = false;
|
| + return base::MakeUnique<cc::TestDelegatingOutputSurface>(
|
| std::move(compositor_context_provider),
|
| - std::move(worker_context_provider), std::move(display_context_provider),
|
| - settings.renderer_settings, deps->GetSharedBitmapManager(),
|
| - deps->GetGpuMemoryBufferManager(), gfx::Size(), false,
|
| - !deps->GetCompositorImplThreadTaskRunner());
|
| + std::move(worker_context_provider), std::move(display),
|
| + context_shared_with_compositor, allow_force_reclaim_resources);
|
| }
|
| };
|
|
|
|
|