aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkLocalMatrixShader.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/SkLocalMatrixShader.h')
-rw-r--r--src/core/SkLocalMatrixShader.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/SkLocalMatrixShader.h b/src/core/SkLocalMatrixShader.h
index cba140906b..97986a6332 100644
--- a/src/core/SkLocalMatrixShader.h
+++ b/src/core/SkLocalMatrixShader.h
@@ -14,6 +14,7 @@
class GrFragmentProcessor;
class SkArenaAlloc;
+class SkColorSpaceXformer;
class SkLocalMatrixShader : public SkShader {
public:
@@ -50,6 +51,10 @@ protected:
bool onAppendStages(SkRasterPipeline*, SkColorSpace*, SkArenaAlloc*,
const SkMatrix&, const SkPaint&, const SkMatrix*) const override;
+ sk_sp<SkShader> onMakeColorSpace(SkColorSpaceXformer* xformer) const override {
+ return fProxyShader->makeColorSpace(xformer)->makeWithLocalMatrix(this->getLocalMatrix());
+ }
+
#ifdef SK_SUPPORT_LEGACY_SHADER_ISABITMAP
bool onIsABitmap(SkBitmap* bitmap, SkMatrix* matrix, TileMode* mode) const override {
return fProxyShader->isABitmap(bitmap, matrix, mode);