Reland "Don't flatten images in SkImageShader"

This is a reland of 318afe66e699970ebf789718b5a2297f783ed712

Original change's description:
> Don't flatten images in SkImageShader
> 
> Bug: skia:9570
> 
> Change-Id: Idd4485b5c5814501fe98fbf2115d89a80a41f5c7
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299139
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>

Bug: skia:9570
Change-Id: I4761e354dd4ec4f4a60097e06c3b9b9b73e538f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299681
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
diff --git a/src/gpu/GrImageTextureMaker.cpp b/src/gpu/GrImageTextureMaker.cpp
index ebd12c4..581f285 100644
--- a/src/gpu/GrImageTextureMaker.cpp
+++ b/src/gpu/GrImageTextureMaker.cpp
@@ -40,7 +40,7 @@
 
 /////////////////////////////////////////////////////////////////////////////////////////////////
 
-GrYUVAImageTextureMaker::GrYUVAImageTextureMaker(GrContext* context, const SkImage* client)
+GrYUVAImageTextureMaker::GrYUVAImageTextureMaker(GrRecordingContext* context, const SkImage* client)
         : INHERITED(context, client->imageInfo())
         , fImage(static_cast<const SkImage_GpuYUVA*>(client)) {
     SkASSERT(as_IB(client)->isYUVA());
@@ -94,8 +94,9 @@
 
     const auto& caps = *fImage->context()->priv().caps();
     const SkMatrix& m = filterOrNullForBicubic ? textureMatrix : SkMatrix::I();
+    GrSamplerState sampler(wrapX, wrapY, filter);
     auto fp = GrYUVtoRGBEffect::Make(fImage->fViews, fImage->fYUVAIndices, fImage->fYUVColorSpace,
-                                     filter, caps, m, domain);
+                                     sampler, caps, m, domain);
     if (!filterOrNullForBicubic) {
         fp = GrBicubicEffect::Make(std::move(fp),
                                    fImage->alphaType(),