[go: nahoru, domu]

Pass 4 floats directly into the raster interface for color

Some of these interfaces are autogenerated by gpu/command_buffer/raster_cmd_buffer_functions.txt which has no mechanism for includes and thus only uses GL primitives. To get around this I'm unrolling the color as 4 floats and passing in r, g, b and a directly to these functions.

oop_draw_rect_query.png needed to be rebaselined because #808080 is not exactly the same color as rgb(0.5, 0.5, 0.5)

Bug: 1308932
Change-Id: If651e69cc89b9a66adee4059a742d4e73079064c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3653319
Reviewed-by: Juanmi Huertas <juanmihd@chromium.org>
Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org>
Reviewed-by: ccameron chromium <ccameron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Aaron Krajeski <aaronhk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1007355}
diff --git a/cc/raster/gpu_raster_buffer_provider.cc b/cc/raster/gpu_raster_buffer_provider.cc
index e8bbd4d..bf0d9d7b 100644
--- a/cc/raster/gpu_raster_buffer_provider.cc
+++ b/cc/raster/gpu_raster_buffer_provider.cc
@@ -389,10 +389,12 @@
   bool is_raw_draw_backing =
       client_->is_using_raw_draw_ && !backing_->overlay_candidate;
   bool use_lcd_text = playback_settings.use_lcd_text && !is_raw_draw_backing;
+
   ri->BeginRasterCHROMIUM(
-      raster_source->background_color().toSkColor(), mailbox_needs_clear,
+      raster_source->background_color(), mailbox_needs_clear,
       playback_settings.msaa_sample_count, msaa_mode, use_lcd_text,
       playback_settings.visible, color_space_, backing_->mailbox.name);
+
   gfx::Vector2dF recording_to_raster_scale = transform.scale();
   recording_to_raster_scale.Scale(1 / raster_source->recording_scale_factor());
   gfx::Size content_size = raster_source->GetContentSize(transform.scale());