[viz] Eliminate TransferableResource::MakeSoftware(ResourceFormat)

This CL converts the remaining usage of
TransferableResource::MakeSoftware(ResourceFormat) in the codebase to
the variant that takes in SharedImageFormat and eliminates the
deprecated variant.

Note: The format argument in MakeSoftware() is currently always
RGBA_8888, although the flow through [1] is not straightforward to
verify. However, the upcoming SharedBitmap => SharedImage transformation
will change this.

[1] https://source.chromium.org/chromium/chromium/src/+/main:cc/resources/resource_pool.cc;l=347-349;drc=8101d6d81854e4f437e0f03f77694a01aaa8df7a;bpv=1;bpt=1

Bug: 1378708
Change-Id: I000c060d7878fd5768f94a38ead9d4e8b0f5908a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4372840
Reviewed-by: Vasiliy Telezhnikov <[email protected]>
Reviewed-by: Kentaro Hara <[email protected]>
Reviewed-by: danakj <[email protected]>
Commit-Queue: Colin Blundell <[email protected]>
Reviewed-by: Vasiliy Telezhnikov <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1122875}
diff --git a/cc/test/pixel_test.cc b/cc/test/pixel_test.cc
index 76480de..79d1dc7 100644
--- a/cc/test/pixel_test.cc
+++ b/cc/test/pixel_test.cc
@@ -245,8 +245,8 @@
   source.readPixels(info, mapping.memory(), info.minRowBytes(), 0, 0);
 
   return child_resource_provider_->ImportResource(
-      viz::TransferableResource::MakeSoftware(shared_bitmap_id, size,
-                                              viz::RGBA_8888),
+      viz::TransferableResource::MakeSoftware(
+          shared_bitmap_id, size, viz::SinglePlaneFormat::kRGBA_8888),
       base::DoNothing());
 }
 
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index 78d403d..cc26eda15 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -10689,7 +10689,8 @@
         quad_visible_rect_(5, 5, 5, 5) {
     resource_id_ = resource_provider_->ImportResource(
         viz::TransferableResource::MakeSoftware(
-            viz::SharedBitmap::GenerateId(), gfx::Size(1, 1), viz::RGBA_8888),
+            viz::SharedBitmap::GenerateId(), gfx::Size(1, 1),
+            viz::SinglePlaneFormat::kRGBA_8888),
         base::DoNothing());
     SetBounds(gfx::Size(10, 10));
     SetDrawsContent(true);
diff --git a/components/viz/common/resources/transferable_resource.h b/components/viz/common/resources/transferable_resource.h
index de70043..2bbd0d9 100644
--- a/components/viz/common/resources/transferable_resource.h
+++ b/components/viz/common/resources/transferable_resource.h
@@ -55,11 +55,6 @@
       const std::vector<TransferableResource>& input);
   bool is_null() const { return mailbox_holder.mailbox.IsZero(); }
 
-  static TransferableResource MakeSoftware(const SharedBitmapId& id,
-                                           const gfx::Size& size,
-                                           ResourceFormat format) {
-    return MakeSoftware(id, size, SharedImageFormat::SinglePlane(format));
-  }
   static TransferableResource MakeGpu(const gpu::Mailbox& mailbox,
                                       uint32_t filter,
                                       uint32_t texture_target,
diff --git a/components/viz/service/compositor_frame_fuzzer/compositor_frame_fuzzer_util.cc b/components/viz/service/compositor_frame_fuzzer/compositor_frame_fuzzer_util.cc
index aa706eb17..042b6c4 100644
--- a/components/viz/service/compositor_frame_fuzzer/compositor_frame_fuzzer_util.cc
+++ b/components/viz/service/compositor_frame_fuzzer/compositor_frame_fuzzer_util.cc
@@ -272,7 +272,7 @@
       tile_size, GetColorFromProtobuf(quad_spec.tile_quad().texture_color()));
   TransferableResource transferable_resource =
       TransferableResource::MakeSoftware(fuzzed_bitmap->id, fuzzed_bitmap->size,
-                                         RGBA_8888);
+                                         SinglePlaneFormat::kRGBA_8888);
 
   auto* shared_quad_state = pass->CreateAndAppendSharedQuadState();
   ConfigureSharedQuadState(shared_quad_state, quad_spec);
diff --git a/components/viz/service/display/display_resource_provider_software_unittest.cc b/components/viz/service/display/display_resource_provider_software_unittest.cc
index 5a83f61..cfcbef86 100644
--- a/components/viz/service/display/display_resource_provider_software_unittest.cc
+++ b/components/viz/service/display/display_resource_provider_software_unittest.cc
@@ -54,12 +54,12 @@
 
 static SharedBitmapId CreateAndFillSharedBitmap(SharedBitmapManager* manager,
                                                 const gfx::Size& size,
-                                                ResourceFormat format,
+                                                SharedImageFormat format,
                                                 uint32_t value) {
   SharedBitmapId shared_bitmap_id = SharedBitmap::GenerateId();
 
-  base::MappedReadOnlyRegion shm = bitmap_allocation::AllocateSharedBitmap(
-      size, SinglePlaneFormat::kRGBA_8888);
+  base::MappedReadOnlyRegion shm =
+      bitmap_allocation::AllocateSharedBitmap(size, format);
   manager->ChildAllocatedSharedBitmap(shm.region.Map(), shared_bitmap_id);
   base::span<uint32_t> span =
       shm.mapping.GetMemoryAsSpan<uint32_t>(size.GetArea());
@@ -79,14 +79,6 @@
     child_resource_provider_->ShutdownAndReleaseAllResources();
   }
 
-  TransferableResource CreateResource(ResourceFormat format) {
-    constexpr gfx::Size size(64, 64);
-    SharedBitmapId shared_bitmap_id = CreateAndFillSharedBitmap(
-        shared_bitmap_manager_.get(), size, format, 0);
-
-    return TransferableResource::MakeSoftware(shared_bitmap_id, size, format);
-  }
-
  protected:
   const std::unique_ptr<TestSharedBitmapManager> shared_bitmap_manager_;
   const std::unique_ptr<DisplayResourceProviderSoftware> resource_provider_;
@@ -95,7 +87,7 @@
 
 TEST_F(DisplayResourceProviderSoftwareTest, ReadSoftwareResources) {
   gfx::Size size(64, 64);
-  ResourceFormat format = RGBA_8888;
+  SharedImageFormat format = SinglePlaneFormat::kRGBA_8888;
   const uint32_t kBadBeef = 0xbadbeef;
   SharedBitmapId shared_bitmap_id = CreateAndFillSharedBitmap(
       shared_bitmap_manager_.get(), size, format, kBadBeef);
diff --git a/components/viz/service/display/renderer_pixeltest.cc b/components/viz/service/display/renderer_pixeltest.cc
index c8ce716..6b6d781 100644
--- a/components/viz/service/display/renderer_pixeltest.cc
+++ b/components/viz/service/display/renderer_pixeltest.cc
@@ -283,7 +283,7 @@
                                               shared_bitmap_manager);
     resource = child_resource_provider->ImportResource(
         TransferableResource::MakeSoftware(shared_bitmap_id, rect.size(),
-                                           RGBA_8888),
+                                           SinglePlaneFormat::kRGBA_8888),
         base::DoNothing());
 
     auto span = mapping.GetMemoryAsSpan<uint32_t>(pixels.size());
@@ -346,7 +346,7 @@
                                               shared_bitmap_manager);
     resource = child_resource_provider->ImportResource(
         TransferableResource::MakeSoftware(shared_bitmap_id, rect.size(),
-                                           RGBA_8888),
+                                           SinglePlaneFormat::kRGBA_8888),
         base::DoNothing());
 
     auto span = mapping.GetMemoryAsSpan<uint32_t>(pixels.size());
diff --git a/components/viz/service/display/software_renderer_unittest.cc b/components/viz/service/display/software_renderer_unittest.cc
index 52e5e293..2d9db960 100644
--- a/components/viz/service/display/software_renderer_unittest.cc
+++ b/components/viz/service/display/software_renderer_unittest.cc
@@ -93,7 +93,8 @@
 
     // Makes a resource id that refers to the registered SharedBitmapId.
     return child_resource_provider_->ImportResource(
-        TransferableResource::MakeSoftware(shared_bitmap_id, size, RGBA_8888),
+        TransferableResource::MakeSoftware(shared_bitmap_id, size,
+                                           SinglePlaneFormat::kRGBA_8888),
         base::DoNothing());
   }
 
diff --git a/components/viz/service/display/surface_aggregator_perftest.cc b/components/viz/service/display/surface_aggregator_perftest.cc
index e90c7199..369aa525 100644
--- a/components/viz/service/display/surface_aggregator_perftest.cc
+++ b/components/viz/service/display/surface_aggregator_perftest.cc
@@ -113,7 +113,7 @@
       for (int j = 0; j < num_textures; j++) {
         const gfx::Size size(1, 2);
         TransferableResource resource = TransferableResource::MakeSoftware(
-            SharedBitmap::GenerateId(), size, ResourceFormat::RGBA_8888);
+            SharedBitmap::GenerateId(), size, SinglePlaneFormat::kRGBA_8888);
         resource.id = ResourceId(j);
         frame_builder.AddTransferableResource(resource);
 
@@ -231,7 +231,8 @@
           // Create the resource if we haven't yet.
           if (created_resources.find(resource_id) == created_resources.end()) {
             created_resources[resource_id] = TransferableResource::MakeSoftware(
-                SharedBitmap::GenerateId(), quad->rect.size(), RGBA_8888);
+                SharedBitmap::GenerateId(), quad->rect.size(),
+                SinglePlaneFormat::kRGBA_8888);
             created_resources[resource_id].id = resource_id;
           }
           resource_data_map_[frame_sink_id]
diff --git a/components/viz/service/display/surface_aggregator_unittest.cc b/components/viz/service/display/surface_aggregator_unittest.cc
index 19f488b99..ac35644 100644
--- a/components/viz/service/display/surface_aggregator_unittest.cc
+++ b/components/viz/service/display/surface_aggregator_unittest.cc
@@ -5841,7 +5841,8 @@
 
   for (ResourceId resource_id : resource_ids) {
     auto resource = TransferableResource::MakeSoftware(
-        SharedBitmap::GenerateId(), gfx::Size(1, 1), RGBA_8888);
+        SharedBitmap::GenerateId(), gfx::Size(1, 1),
+        SinglePlaneFormat::kRGBA_8888);
     resource.id = resource_id;
     if (!valid) {
       // ResourceProvider is software, so only software resources are valid. Do
diff --git a/components/viz/service/transitions/transferable_resource_tracker.cc b/components/viz/service/transitions/transferable_resource_tracker.cc
index a60e0b5..92eeed6a 100644
--- a/components/viz/service/transitions/transferable_resource_tracker.cc
+++ b/components/viz/service/transitions/transferable_resource_tracker.cc
@@ -82,7 +82,7 @@
     shared_bitmap_manager_->LocalAllocatedSharedBitmap(
         std::move(output_copy.bitmap), id);
     resource = TransferableResource::MakeSoftware(
-        id, output_copy.draw_data.size, RGBA_8888);
+        id, output_copy.draw_data.size, SinglePlaneFormat::kRGBA_8888);
 
     // Remove the bitmap from shared bitmap manager when no longer in use.
     release_callback = base::BindOnce(
diff --git a/components/viz/test/compositor_frame_helpers.cc b/components/viz/test/compositor_frame_helpers.cc
index 1d2e6b2..cd4a965 100644
--- a/components/viz/test/compositor_frame_helpers.cc
+++ b/components/viz/test/compositor_frame_helpers.cc
@@ -518,7 +518,8 @@
         // Adds a TransferableResource the first time seeing a ResourceId.
         if (resources_added.insert(resource_id).second) {
           frame.resource_list.push_back(TransferableResource::MakeSoftware(
-              SharedBitmap::GenerateId(), quad->rect.size(), RGBA_8888));
+              SharedBitmap::GenerateId(), quad->rect.size(),
+              SinglePlaneFormat::kRGBA_8888));
           frame.resource_list.back().id = resource_id;
         }
       }
diff --git a/content/renderer/pepper/pepper_graphics_2d_host.cc b/content/renderer/pepper/pepper_graphics_2d_host.cc
index 2c6a701d1..a62621e 100644
--- a/content/renderer/pepper/pepper_graphics_2d_host.cc
+++ b/content/renderer/pepper/pepper_graphics_2d_host.cc
@@ -759,7 +759,8 @@
   image_data_->Unmap();
 
   *transferable_resource = viz::TransferableResource::MakeSoftware(
-      shared_bitmap->id(), pixel_image_size, viz::RGBA_8888);
+      shared_bitmap->id(), pixel_image_size,
+      viz::SinglePlaneFormat::kRGBA_8888);
   *release_callback = base::BindOnce(
       &PepperGraphics2DHost::ReleaseSoftwareCallback, this->AsWeakPtr(),
       std::move(shared_bitmap), std::move(registration));
diff --git a/content/web_test/renderer/test_plugin.cc b/content/web_test/renderer/test_plugin.cc
index 027526d..2c37c02f 100644
--- a/content/web_test/renderer/test_plugin.cc
+++ b/content/web_test/renderer/test_plugin.cc
@@ -338,7 +338,8 @@
                                                  shared_bitmap_);
 
     *resource = viz::TransferableResource::MakeSoftware(
-        shared_bitmap_->id(), shared_bitmap_->size(), viz::RGBA_8888);
+        shared_bitmap_->id(), shared_bitmap_->size(),
+        viz::SinglePlaneFormat::kRGBA_8888);
     *release_callback =
         base::BindOnce(&ReleaseSharedMemory, std::move(shared_bitmap_),
                        std::move(registration));
diff --git a/third_party/blink/renderer/platform/graphics/canvas_resource.cc b/third_party/blink/renderer/platform/graphics/canvas_resource.cc
index ad61f0e6..ed2fff5 100644
--- a/third_party/blink/renderer/platform/graphics/canvas_resource.cc
+++ b/third_party/blink/renderer/platform/graphics/canvas_resource.cc
@@ -211,8 +211,8 @@
   // the resource type and completely ignores the format set on the
   // TransferableResource. Clients are expected to render in N32 format but use
   // RGBA as the tagged format on resources.
-  *out_resource =
-      viz::TransferableResource::MakeSoftware(mailbox, Size(), viz::RGBA_8888);
+  *out_resource = viz::TransferableResource::MakeSoftware(
+      mailbox, Size(), viz::SinglePlaneFormat::kRGBA_8888);
 
   out_resource->color_space = GetColorSpace();
 
diff --git a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
index 9171b1b..681f13c 100644
--- a/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
+++ b/third_party/blink/renderer/platform/graphics/gpu/drawing_buffer.cc
@@ -505,7 +505,7 @@
       static_cast<uint8_t*>(registered.bitmap->memory()));
 
   *out_resource = viz::TransferableResource::MakeSoftware(
-      registered.bitmap->id(), size_, viz::RGBA_8888);
+      registered.bitmap->id(), size_, viz::SinglePlaneFormat::kRGBA_8888);
   out_resource->color_space = back_color_buffer_->color_space;
 
   // This holds a ref on the DrawingBuffer that will keep it alive until the