Commit 275682af authored by Mike Reed's avatar Mike Reed Committed by Chromium LUCI CQ

Pass sampling options when making an image-shader

Part of larger change: https://chromium-review.googlesource.com/c/chromium/src/+/2593832

Bug: skia:7650
Change-Id: Icad623c1a1b58c7f4f3e082457b3353b686ed4fc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2593830Reviewed-by: default avatarFlorin Malita <fmalita@chromium.org>
Reviewed-by: default avatarSunny Sachanandani <sunnyps@chromium.org>
Reviewed-by: default avatarSadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
Cr-Commit-Position: refs/heads/master@{#837294}
parent c78893f5
...@@ -550,12 +550,11 @@ void SoftwareRenderer::DrawRenderPassQuad( ...@@ -550,12 +550,11 @@ void SoftwareRenderer::DrawRenderPassQuad(
SkMatrix::kFill_ScaleToFit); SkMatrix::kFill_ScaleToFit);
sk_sp<SkShader> shader; sk_sp<SkShader> shader;
SkSamplingOptions sampling(current_paint_.getFilterQuality());
if (!filter_image) { if (!filter_image) {
shader = source_bitmap.makeShader(SkTileMode::kClamp, SkTileMode::kClamp, shader = source_bitmap.makeShader(sampling, content_mat);
&content_mat);
} else { } else {
shader = filter_image->makeShader(SkTileMode::kClamp, SkTileMode::kClamp, shader = filter_image->makeShader(sampling, content_mat);
&content_mat);
} }
if (quad->mask_resource_id()) { if (quad->mask_resource_id()) {
...@@ -572,9 +571,8 @@ void SoftwareRenderer::DrawRenderPassQuad( ...@@ -572,9 +571,8 @@ void SoftwareRenderer::DrawRenderPassQuad(
SkMatrix mask_mat; SkMatrix mask_mat;
mask_mat.setRectToRect(mask_rect, dest_rect, SkMatrix::kFill_ScaleToFit); mask_mat.setRectToRect(mask_rect, dest_rect, SkMatrix::kFill_ScaleToFit);
current_paint_.setMaskFilter( current_paint_.setMaskFilter(SkShaderMaskFilter::Make(
SkShaderMaskFilter::Make(mask_lock.sk_image()->makeShader( mask_lock.sk_image()->makeShader(sampling, mask_mat)));
SkTileMode::kClamp, SkTileMode::kClamp, &mask_mat)));
} }
// If we have a backdrop filter shader, render its results first. // If we have a backdrop filter shader, render its results first.
...@@ -902,7 +900,8 @@ sk_sp<SkShader> SoftwareRenderer::GetBackdropFilterShader( ...@@ -902,7 +900,8 @@ sk_sp<SkShader> SoftwareRenderer::GetBackdropFilterShader(
canvas.drawImageRect(filtered_image, src_rect, dst_rect, &paint); canvas.drawImageRect(filtered_image, src_rect, dst_rect, &paint);
return SkImage::MakeFromBitmap(bitmap)->makeShader( return SkImage::MakeFromBitmap(bitmap)->makeShader(
content_tile_mode, content_tile_mode, &filter_backdrop_transform); content_tile_mode, content_tile_mode, SkSamplingOptions(),
&filter_backdrop_transform);
} }
void SoftwareRenderer::UpdateRenderPassTextures( void SoftwareRenderer::UpdateRenderPassTextures(
......
...@@ -81,7 +81,7 @@ void SetCheckerboardShader(SkPaint* paint, const RECT& align_rect) { ...@@ -81,7 +81,7 @@ void SetCheckerboardShader(SkPaint* paint, const RECT& align_rect) {
local_matrix.setTranslate(SkIntToScalar(align_rect.left), local_matrix.setTranslate(SkIntToScalar(align_rect.left),
SkIntToScalar(align_rect.top)); SkIntToScalar(align_rect.top));
paint->setShader(bitmap.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat, paint->setShader(bitmap.makeShader(SkTileMode::kRepeat, SkTileMode::kRepeat,
&local_matrix)); SkSamplingOptions(), &local_matrix));
} }
// <-a-> // <-a->
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment