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());