use rasterpipeline for images if matrix is >= scale+translate
Bug: skia:
Change-Id: I36112fe54c6f2d0965d0b88f0291d7ffe0902715
Reviewed-on: https://skia-review.googlesource.com/30480
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
diff --git a/src/shaders/SkImageShader.h b/src/shaders/SkImageShader.h
index b74c315..b499b92 100644
--- a/src/shaders/SkImageShader.h
+++ b/src/shaders/SkImageShader.h
@@ -29,7 +29,7 @@
SkImageShader(sk_sp<SkImage>, TileMode tx, TileMode ty, const SkMatrix* localMatrix);
- static bool IsRasterPipelineOnly(SkColorType, SkAlphaType,
+ static bool IsRasterPipelineOnly(const SkMatrix& ctm, SkColorType, SkAlphaType,
SkShader::TileMode tx, SkShader::TileMode ty);
protected:
@@ -40,7 +40,7 @@
#endif
SkImage* onIsAImage(SkMatrix*, TileMode*) const override;
- bool onIsRasterPipelineOnly() const override;
+ bool onIsRasterPipelineOnly(const SkMatrix& ctm) const override;
bool onAppendStages(SkRasterPipeline*, SkColorSpace*, SkArenaAlloc*,
const SkMatrix& ctm, const SkPaint&, const SkMatrix*) const override;