Update MatrixConvolutionImageFilter to sk_sp

TBR=reed@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1869833002

Review URL: https://codereview.chromium.org/1869833002
diff --git a/gm/imagefilters.cpp b/gm/imagefilters.cpp
index 4343f8b..fcb82a7 100644
--- a/gm/imagefilters.cpp
+++ b/gm/imagefilters.cpp
@@ -114,7 +114,7 @@
 #include "SkColorFilterImageFilter.h"
 #include "SkRRect.h"
 
-static void draw_set(SkCanvas* canvas, SkImageFilter* filters[], int count) {
+static void draw_set(SkCanvas* canvas, sk_sp<SkImageFilter> filters[], int count) {
     const SkRect r = SkRect::MakeXYWH(30, 30, 200, 200);
     const SkScalar offset = 250;
     SkScalar dx = 0, dy = 0;
@@ -123,7 +123,7 @@
         canvas->save();
         SkRRect rr = SkRRect::MakeRectXY(r.makeOffset(dx, dy), 20, 20);
         canvas->clipRRect(rr, SkRegion::kIntersect_Op, true);
-        canvas->saveLayer({ &rr.getBounds(), nullptr, filters[i], 0 });
+        canvas->saveLayer({ &rr.getBounds(), nullptr, filters[i].get(), 0 });
         canvas->drawColor(0x40FFFFFF);
         canvas->restore();
         canvas->restore();
@@ -142,13 +142,14 @@
     cm.setSaturation(10);
     sk_sp<SkColorFilter> cf(SkColorFilter::MakeMatrixFilterRowMajor255(cm.fMat));
     const SkScalar kernel[] = { 4, 0, 4, 0, -15, 0, 4, 0, 4 };
-    SkImageFilter* filters[] = {
-        SkBlurImageFilter::Make(10, 10, nullptr).release(),
-        SkDilateImageFilter::Make(8, 8, nullptr).release(),
-        SkMatrixConvolutionImageFilter::Create({ 3, 3 }, kernel, 1, 0, { 0, 0 },
+    sk_sp<SkImageFilter> filters[] = {
+        SkBlurImageFilter::Make(10, 10, nullptr),
+        SkDilateImageFilter::Make(8, 8, nullptr),
+        SkMatrixConvolutionImageFilter::Make(
+                                           { 3, 3 }, kernel, 1, 0, { 0, 0 },
                                            SkMatrixConvolutionImageFilter::kClampToBlack_TileMode,
-                                               true),
-        SkColorFilterImageFilter::Make(std::move(cf), nullptr).release(),
+                                           true, nullptr),
+        SkColorFilterImageFilter::Make(std::move(cf), nullptr),
     };
 
     const struct {
@@ -173,8 +174,4 @@
         draw_set(canvas, filters, SK_ARRAY_COUNT(filters));
         canvas->restore();
     }
-
-    for (auto& filter : filters) {
-        filter->unref();
-    }
 }
diff --git a/gm/imagefiltersgraph.cpp b/gm/imagefiltersgraph.cpp
index 8bf3930..8c80ca3 100644
--- a/gm/imagefiltersgraph.cpp
+++ b/gm/imagefiltersgraph.cpp
@@ -216,15 +216,14 @@
             SkIPoint kernelOffset = SkIPoint::Make(1, 1);
             auto tileMode = SkMatrixConvolutionImageFilter::kClamp_TileMode;
             bool convolveAlpha = false;
-            sk_sp<SkImageFilter> convolve(
-                SkMatrixConvolutionImageFilter::Create(kernelSize,
-                                                       kernel,
-                                                       gain,
-                                                       bias,
-                                                       kernelOffset,
-                                                       tileMode,
-                                                       convolveAlpha,
-                                                       dilate.get()));
+            sk_sp<SkImageFilter> convolve(SkMatrixConvolutionImageFilter::Make(kernelSize,
+                                                                               kernel,
+                                                                               gain,
+                                                                               bias,
+                                                                               kernelOffset,
+                                                                               tileMode,
+                                                                               convolveAlpha,
+                                                                               std::move(dilate)));
 
             SkPaint paint;
             paint.setImageFilter(std::move(convolve));
diff --git a/gm/matrixconvolution.cpp b/gm/matrixconvolution.cpp
index b02f743..153f7a5 100644
--- a/gm/matrixconvolution.cpp
+++ b/gm/matrixconvolution.cpp
@@ -58,17 +58,15 @@
         SkISize kernelSize = SkISize::Make(3, 3);
         SkScalar gain = 0.3f, bias = SkIntToScalar(100);
         SkPaint paint;
-        SkAutoTUnref<SkImageFilter> filter(
-            SkMatrixConvolutionImageFilter::Create(kernelSize,
-                                                   kernel,
-                                                   gain,
-                                                   bias,
-                                                   kernelOffset,
-                                                   tileMode,
-                                                   convolveAlpha,
-                                                   nullptr,
-                                                   cropRect));
-        paint.setImageFilter(filter);
+        paint.setImageFilter(SkMatrixConvolutionImageFilter::Make(kernelSize,
+                                                                  kernel,
+                                                                  gain,
+                                                                  bias,
+                                                                  kernelOffset,
+                                                                  tileMode,
+                                                                  convolveAlpha,
+                                                                  nullptr,
+                                                                  cropRect));
         canvas->save();
         canvas->translate(SkIntToScalar(x), SkIntToScalar(y));
         canvas->clipRect(SkRect::MakeWH(SkIntToScalar(fBitmap.width()),