diff options
author | reveman <reveman@chromium.org> | 2015-08-06 16:58:22 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-08-06 23:59:01 +0000 |
commit | d5157ac5afec145b85746b42f2d86383483a8222 (patch) | |
tree | d7b8edd68e4238c07076b5f19ac0d6e8a0ecebcd /cc/surfaces | |
parent | ae7f0073aef3299dca34cb59ab4c827d1145f0c2 (diff) | |
download | chromium_src-d5157ac5afec145b85746b42f2d86383483a8222.zip chromium_src-d5157ac5afec145b85746b42f2d86383483a8222.tar.gz chromium_src-d5157ac5afec145b85746b42f2d86383483a8222.tar.bz2 |
cc: Use worker context for one-copy tile initialization.
This moves management of staging resources to
OneCopyTileTaskWorkerPool class. This makes it possible
to use a worker context to issue and detect when copy
operations complete.
BUG=490295
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
Review URL: https://codereview.chromium.org/1230203007
Cr-Commit-Position: refs/heads/master@{#342235}
Diffstat (limited to 'cc/surfaces')
-rw-r--r-- | cc/surfaces/display.cc | 5 | ||||
-rw-r--r-- | cc/surfaces/surface_display_output_surface.cc | 5 | ||||
-rw-r--r-- | cc/surfaces/surface_display_output_surface.h | 3 | ||||
-rw-r--r-- | cc/surfaces/surface_display_output_surface_unittest.cc | 3 |
4 files changed, 8 insertions, 8 deletions
diff --git a/cc/surfaces/display.cc b/cc/surfaces/display.cc index 7e80854..586bfad 100644 --- a/cc/surfaces/display.cc +++ b/cc/surfaces/display.cc @@ -101,13 +101,10 @@ void Display::InitializeRenderer() { if (resource_provider_) return; - // Display does not use GpuMemoryBuffers, so persistent map is not relevant. - bool use_persistent_map_for_gpu_memory_buffers = false; scoped_ptr<ResourceProvider> resource_provider = ResourceProvider::Create( output_surface_.get(), bitmap_manager_, gpu_memory_buffer_manager_, nullptr, settings_.highp_threshold_min, settings_.use_rgba_4444_textures, - settings_.texture_id_allocation_chunk_size, - use_persistent_map_for_gpu_memory_buffers); + settings_.texture_id_allocation_chunk_size); if (!resource_provider) return; diff --git a/cc/surfaces/surface_display_output_surface.cc b/cc/surfaces/surface_display_output_surface.cc index e21d15d..6a2779d 100644 --- a/cc/surfaces/surface_display_output_surface.cc +++ b/cc/surfaces/surface_display_output_surface.cc @@ -17,8 +17,9 @@ namespace cc { SurfaceDisplayOutputSurface::SurfaceDisplayOutputSurface( SurfaceManager* surface_manager, SurfaceIdAllocator* allocator, - const scoped_refptr<ContextProvider>& context_provider) - : OutputSurface(context_provider), + const scoped_refptr<ContextProvider>& context_provider, + const scoped_refptr<ContextProvider>& worker_context_provider) + : OutputSurface(context_provider, worker_context_provider), display_client_(NULL), factory_(surface_manager, this), allocator_(allocator) { diff --git a/cc/surfaces/surface_display_output_surface.h b/cc/surfaces/surface_display_output_surface.h index c11bb86..2cdaadc 100644 --- a/cc/surfaces/surface_display_output_surface.h +++ b/cc/surfaces/surface_display_output_surface.h @@ -27,7 +27,8 @@ class CC_SURFACES_EXPORT SurfaceDisplayOutputSurface SurfaceDisplayOutputSurface( SurfaceManager* surface_manager, SurfaceIdAllocator* allocator, - const scoped_refptr<ContextProvider>& context_provider); + const scoped_refptr<ContextProvider>& context_provider, + const scoped_refptr<ContextProvider>& worker_context_provider); ~SurfaceDisplayOutputSurface() override; void set_display_client(OnscreenDisplayClient* display_client) { diff --git a/cc/surfaces/surface_display_output_surface_unittest.cc b/cc/surfaces/surface_display_output_surface_unittest.cc index 9b67f1f..3145729 100644 --- a/cc/surfaces/surface_display_output_surface_unittest.cc +++ b/cc/surfaces/surface_display_output_surface_unittest.cc @@ -60,7 +60,8 @@ class SurfaceDisplayOutputSurfaceTest : public testing::Test { context_provider_(TestContextProvider::Create()), surface_display_output_surface_(&surface_manager_, &allocator_, - context_provider_) { + context_provider_, + nullptr) { output_surface_ = display_client_.output_surface(); display_client_.set_surface_output_surface( &surface_display_output_surface_); |