diff options
author | Mike Klein <mtklein@chromium.org> | 2017-05-10 12:35:51 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-05-10 19:01:39 +0000 |
commit | 2814d9148671b8bdbf40a192dcbe485199fd3230 (patch) | |
tree | 3c4536339091d3a48bf81b7f3a381e784d53019e /src/core/SkComposeShader.cpp | |
parent | 14113bcc4e55ab6029344a46fb70aa6344587409 (diff) |
clean up SkShader friends
Many SkShader subclasses are only friends to use makeColorSpace().
Our usual solution to this is to add a method on SkColorSpaceXformer
that calls makeColorSpace() for us, so that only SkColorSpaceXformer
needs to be a friend.
Just a refactor. No image diffs.
Change-Id: Icf952b739edf45f2fb8c0c35e353ef2866f4c5cc
Reviewed-on: https://skia-review.googlesource.com/16370
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'src/core/SkComposeShader.cpp')
-rw-r--r-- | src/core/SkComposeShader.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/SkComposeShader.cpp b/src/core/SkComposeShader.cpp index dd95c3edb3..9cb16addc6 100644 --- a/src/core/SkComposeShader.cpp +++ b/src/core/SkComposeShader.cpp @@ -96,6 +96,11 @@ SkShader::Context* SkComposeShader::onMakeContext( return alloc->make<ComposeShaderContext>(*this, rec, contextA, contextB); } +sk_sp<SkShader> SkComposeShader::onMakeColorSpace(SkColorSpaceXformer* xformer) const { + return SkShader::MakeComposeShader(xformer->apply(fShaderA.get()), + xformer->apply(fShaderB.get()), fMode); +} + SkComposeShader::ComposeShaderContext::ComposeShaderContext( const SkComposeShader& shader, const ContextRec& rec, SkShader::Context* contextA, SkShader::Context* contextB) |