Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Unified Diff: cc/raster/one_copy_tile_task_worker_pool.cc

Issue 1310233003: cc: Fix support for RGBA4444 texture format and one-copy. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2490
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/raster/one_copy_tile_task_worker_pool.cc
diff --git a/cc/raster/one_copy_tile_task_worker_pool.cc b/cc/raster/one_copy_tile_task_worker_pool.cc
index 9874e0f6a1bb5d18cc66c0b64d2802ad517b4f23..169fc36c2eb49bc1a5c9ec019c9c0277bd3b68ee 100644
--- a/cc/raster/one_copy_tile_task_worker_pool.cc
+++ b/cc/raster/one_copy_tile_task_worker_pool.cc
@@ -376,7 +376,8 @@ void OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread(
resource_provider_->gpu_memory_buffer_manager()
->AllocateGpuMemoryBuffer(
staging_buffer->size,
- BufferFormat(resource_provider_->best_texture_format()),
+ BufferFormat(
+ resource_provider_->memory_efficient_texture_format()),
use_persistent_gpu_memory_buffers_
? gfx::BufferUsage::PERSISTENT_MAP
: gfx::BufferUsage::MAP);
@@ -405,9 +406,9 @@ void OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread(
DCHECK(!playback_rect.IsEmpty())
<< "Why are we rastering a tile that's not dirty?";
TileTaskWorkerPool::PlaybackToMemory(
- data, resource_provider_->best_texture_format(), staging_buffer->size,
- static_cast<size_t>(stride), raster_source, raster_full_rect,
- playback_rect, scale, include_images);
+ data, resource_provider_->memory_efficient_texture_format(),
+ staging_buffer->size, static_cast<size_t>(stride), raster_source,
+ raster_full_rect, playback_rect, scale, include_images);
staging_buffer->gpu_memory_buffer->Unmap();
staging_buffer->content_id = new_content_id;
}
@@ -424,7 +425,7 @@ void OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread(
DCHECK(gl);
unsigned image_target = resource_provider_->GetImageTextureTarget(
- resource_provider_->best_texture_format());
+ resource_provider_->memory_efficient_texture_format());
// Create and bind staging texture.
if (!staging_buffer->texture_id) {
@@ -444,7 +445,8 @@ void OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread(
staging_buffer->image_id = gl->CreateImageCHROMIUM(
staging_buffer->gpu_memory_buffer->AsClientBuffer(),
staging_buffer->size.width(), staging_buffer->size.height(),
- GLInternalFormat(resource_provider_->best_texture_format()));
+ GLInternalFormat(
+ resource_provider_->memory_efficient_texture_format()));
gl->BindTexImage2DCHROMIUM(image_target, staging_buffer->image_id);
}
} else {
@@ -471,7 +473,7 @@ void OneCopyTileTaskWorkerPool::PlaybackAndCopyOnWorkerThread(
}
int bytes_per_row =
- (BitsPerPixel(resource_provider_->best_texture_format()) *
+ (BitsPerPixel(resource_provider_->memory_efficient_texture_format()) *
resource->size().width()) /
8;
int chunk_size_in_rows =
@@ -525,7 +527,8 @@ bool OneCopyTileTaskWorkerPool::OnMemoryDump(
base::AutoLock lock(lock_);
for (const auto& buffer : buffers_) {
- buffer->OnMemoryDump(pmd, resource_provider_->best_texture_format(),
+ buffer->OnMemoryDump(pmd,
+ resource_provider_->memory_efficient_texture_format(),
std::find(free_buffers_.begin(), free_buffers_.end(),
buffer) != free_buffers_.end());
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698