add surfaceprops param to SkCanvas::MakeRasterDirect

Bug: skia:
Change-Id: I8b69280469cdf34c3c3cb126db9457a712143f88
Reviewed-on: https://skia-review.googlesource.com/68701
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
index 1043d74..a6fe197 100644
--- a/include/core/SkCanvas.h
+++ b/include/core/SkCanvas.h
@@ -90,10 +90,12 @@
                          width, or height, or both, may be zero
         @param pixels    pointer to destination pixels buffer
         @param rowBytes  interval from one SkSurface row to the next, or zero
+        @param props     optional surfaceprops
         @return          SkCanvas if all parameters are valid; otherwise, nullptr
     */
     static std::unique_ptr<SkCanvas> MakeRasterDirect(const SkImageInfo& info, void* pixels,
-                                                      size_t rowBytes);
+                                                      size_t rowBytes,
+                                                      const SkSurfaceProps* props = nullptr);
 
     /** Allocates raster SkCanvas specified by inline image specification. Subsequent SkCanvas
         calls draw into pixels.
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index fdfd5a4..445ad05 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -2892,7 +2892,7 @@
 }
 
 std::unique_ptr<SkCanvas> SkCanvas::MakeRasterDirect(const SkImageInfo& info, void* pixels,
-                                                     size_t rowBytes) {
+                                                     size_t rowBytes, const SkSurfaceProps* props) {
     if (!supported_for_raster_canvas(info)) {
         return nullptr;
     }
@@ -2901,7 +2901,10 @@
     if (!bitmap.installPixels(info, pixels, rowBytes)) {
         return nullptr;
     }
-    return skstd::make_unique<SkCanvas>(bitmap);
+
+    return props ?
+        skstd::make_unique<SkCanvas>(bitmap, *props) :
+        skstd::make_unique<SkCanvas>(bitmap);
 }
 
 ///////////////////////////////////////////////////////////////////////////////