Plumbing SkMatrixProvider into the raster backend

Change-Id: Ic5786b995fdb439871f2e3ab94cd07a945de19af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288776
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
diff --git a/src/gpu/GrSWMaskHelper.cpp b/src/gpu/GrSWMaskHelper.cpp
index 0ccec74..65e6d47 100644
--- a/src/gpu/GrSWMaskHelper.cpp
+++ b/src/gpu/GrSWMaskHelper.cpp
@@ -8,6 +8,7 @@
 #include "src/gpu/GrSWMaskHelper.h"
 
 #include "include/private/GrRecordingContext.h"
+#include "src/core/SkMatrixProvider.h"
 #include "src/gpu/GrBitmapTextureMaker.h"
 #include "src/gpu/GrCaps.h"
 #include "src/gpu/GrProxyProvider.h"
@@ -49,7 +50,8 @@
                               uint8_t alpha) {
     SkMatrix translatedMatrix = matrix;
     translatedMatrix.postTranslate(fTranslate.fX, fTranslate.fY);
-    fDraw.fMatrix = &translatedMatrix;
+    SkSimpleMatrixProvider matrixProvider(translatedMatrix);
+    fDraw.fMatrixProvider = &matrixProvider;
 
     fDraw.drawRect(rect, get_paint(op, aa, alpha));
 }
@@ -58,7 +60,8 @@
                                GrAA aa, uint8_t alpha) {
     SkMatrix translatedMatrix = matrix;
     translatedMatrix.postTranslate(fTranslate.fX, fTranslate.fY);
-    fDraw.fMatrix = &translatedMatrix;
+    SkSimpleMatrixProvider matrixProvider(translatedMatrix);
+    fDraw.fMatrixProvider = &matrixProvider;
 
     fDraw.drawRRect(rrect, get_paint(op, aa, alpha));
 }
@@ -74,7 +77,8 @@
 
     SkMatrix translatedMatrix = matrix;
     translatedMatrix.postTranslate(fTranslate.fX, fTranslate.fY);
-    fDraw.fMatrix = &translatedMatrix;
+    SkSimpleMatrixProvider matrixProvider(translatedMatrix);
+    fDraw.fMatrixProvider = &matrixProvider;
 
     SkPath path;
     shape.asPath(&path);
@@ -92,7 +96,8 @@
 
     SkMatrix translatedMatrix = matrix;
     translatedMatrix.postTranslate(fTranslate.fX, fTranslate.fY);
-    fDraw.fMatrix = &translatedMatrix;
+    SkSimpleMatrixProvider matrixProvider(translatedMatrix);
+    fDraw.fMatrixProvider = &matrixProvider;
 
     if (shape.inverted()) {
         if (shape.isEmpty() || shape.isLine() || shape.isPoint()) {