filter-quality is deprecated, pass sampling to drawImage

Bug: skia:7650
Change-Id: Ifd92705bd042db74a6c2527858239b0b8e5a4def
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/360981
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
diff --git a/gm/rectangletexture.cpp b/gm/rectangletexture.cpp
index 04fc98a..f21bc8f 100644
--- a/gm/rectangletexture.cpp
+++ b/gm/rectangletexture.cpp
@@ -153,11 +153,11 @@
 
         static constexpr SkScalar kPad = 5.f;
 
-        constexpr SkFilterQuality kQualities[] = {
-                kNone_SkFilterQuality,
-                kLow_SkFilterQuality,
-                kMedium_SkFilterQuality,
-                kHigh_SkFilterQuality,
+        const SkSamplingOptions kSamplings[] = {
+            SkSamplingOptions(SkFilterMode::kNearest),
+            SkSamplingOptions(SkFilterMode::kLinear),
+            SkSamplingOptions(SkFilterMode::kLinear, SkMipmapMode::kLinear),
+            SkSamplingOptions({1.0f/3, 1.0f/3}),
         };
 
         constexpr SkScalar kScales[] = {1.0f, 1.2f, 0.75f};
@@ -170,16 +170,14 @@
             for (auto s : kScales) {
                 canvas->save();
                 canvas->scale(s, s);
-                for (auto q : kQualities) {
+                for (auto s : kSamplings) {
                     // drawImage
-                    SkPaint plainPaint;
-                    plainPaint.setFilterQuality(q);
-                    canvas->drawImage(img, 0, 0, &plainPaint);
+                    canvas->drawImage(img, 0, 0, s);
                     canvas->translate(w + kPad, 0);
 
                     // clamp/clamp shader
                     SkPaint clampPaint;
-                    clampPaint.setShader(fGradImgs[i]->makeShader(SkSamplingOptions(q)));
+                    clampPaint.setShader(fGradImgs[i]->makeShader(s));
                     canvas->drawRect(SkRect::MakeWH(1.5f*w, 1.5f*h), clampPaint);
                     canvas->translate(1.5f*w + kPad, 0);
 
@@ -187,14 +185,14 @@
                     SkPaint repeatPaint;
                     repeatPaint.setShader(fGradImgs[i]->makeShader(SkTileMode::kRepeat,
                                                                    SkTileMode::kMirror,
-                                                                   SkSamplingOptions(q)));
+                                                                   s));
                     canvas->drawRect(SkRect::MakeWH(1.5f*w, 1.5f*h), repeatPaint);
                     canvas->translate(1.5f*w + kPad, 0);
 
                     // drawImageRect with kStrict
                     auto srcRect = SkRect::MakeXYWH(.25f*w, .25f*h, .50f*w, .50f*h);
                     auto dstRect = SkRect::MakeXYWH(      0,     0, .50f*w, .50f*h);
-                    canvas->drawImageRect(fGradImgs[i], srcRect, dstRect, &plainPaint,
+                    canvas->drawImageRect(fGradImgs[i], srcRect, dstRect, s, nullptr,
                                           SkCanvas::kStrict_SrcRectConstraint);
                     canvas->translate(.5f*w + kPad, 0);
                 }