diff options
author | brianosman <brianosman@google.com> | 2016-09-20 09:56:23 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-20 09:56:23 -0700 |
commit | 3e6cf87b5cf48323efbf146e734bbadc7efb5078 (patch) | |
tree | 4031fc33b029a5602d1b80a61569a3e3169051e9 /src | |
parent | 9d54afc38b171c01a03b34e773d154fcf83d97dc (diff) |
Cleanup some sRGB TODOs, mostly around setting GrPaint flags correctly
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358433004
Review-Url: https://codereview.chromium.org/2358433004
Diffstat (limited to 'src')
-rw-r--r-- | src/core/SkSpecialSurface.cpp | 12 | ||||
-rw-r--r-- | src/effects/SkLightingImageFilter.cpp | 2 | ||||
-rw-r--r-- | src/effects/SkMorphologyImageFilter.cpp | 4 | ||||
-rw-r--r-- | src/effects/SkXfermodeImageFilter.cpp | 2 |
4 files changed, 10 insertions, 10 deletions
diff --git a/src/core/SkSpecialSurface.cpp b/src/core/SkSpecialSurface.cpp index 4c482dfffb..85bb61a3e3 100644 --- a/src/core/SkSpecialSurface.cpp +++ b/src/core/SkSpecialSurface.cpp @@ -137,12 +137,12 @@ public: ~SkSpecialSurface_Gpu() override { } sk_sp<SkSpecialImage> onMakeImageSnapshot() override { - // TODO: Supply color space from fDrawContext, once it's present - sk_sp<SkSpecialImage> tmp(SkSpecialImage::MakeFromGpu(this->subset(), - kNeedNewImageUniqueID_SpecialImage, - fDrawContext->asTexture(), - nullptr, - &this->props())); + sk_sp<SkSpecialImage> tmp(SkSpecialImage::MakeFromGpu( + this->subset(), + kNeedNewImageUniqueID_SpecialImage, + fDrawContext->asTexture(), + sk_ref_sp(fDrawContext->getColorSpace()), + &this->props())); fDrawContext = nullptr; return tmp; } diff --git a/src/effects/SkLightingImageFilter.cpp b/src/effects/SkLightingImageFilter.cpp index 0c82b1655e..c8d2154b86 100644 --- a/src/effects/SkLightingImageFilter.cpp +++ b/src/effects/SkLightingImageFilter.cpp @@ -390,7 +390,7 @@ void SkLightingImageFilterInternal::drawRect(GrDrawContext* drawContext, const SkIRect& bounds) const { SkRect srcRect = dstRect.makeOffset(SkIntToScalar(bounds.x()), SkIntToScalar(bounds.y())); GrPaint paint; - // SRGBTODO: AllowSRGBInputs? + paint.setAllowSRGBInputs(drawContext->isGammaCorrect()); sk_sp<GrFragmentProcessor> fp(this->makeFragmentProcessor(src, matrix, srcBounds, boundaryMode)); paint.addColorFragmentProcessor(std::move(fp)); diff --git a/src/effects/SkMorphologyImageFilter.cpp b/src/effects/SkMorphologyImageFilter.cpp index ebce1b3c5d..4e6032fa5a 100644 --- a/src/effects/SkMorphologyImageFilter.cpp +++ b/src/effects/SkMorphologyImageFilter.cpp @@ -394,7 +394,7 @@ static void apply_morphology_rect(GrDrawContext* drawContext, float bounds[2], Gr1DKernelEffect::Direction direction) { GrPaint paint; - // SRGBTODO: AllowSRGBInputs? + paint.setAllowSRGBInputs(drawContext->isGammaCorrect()); paint.addColorFragmentProcessor(GrMorphologyEffect::Make(texture, direction, radius, @@ -414,7 +414,7 @@ static void apply_morphology_rect_no_bounds(GrDrawContext* drawContext, GrMorphologyEffect::MorphologyType morphType, Gr1DKernelEffect::Direction direction) { GrPaint paint; - // SRGBTODO: AllowSRGBInputs? + paint.setAllowSRGBInputs(drawContext->isGammaCorrect()); paint.addColorFragmentProcessor(GrMorphologyEffect::Make(texture, direction, radius, morphType)); paint.setPorterDuffXPFactory(SkXfermode::kSrc_Mode); diff --git a/src/effects/SkXfermodeImageFilter.cpp b/src/effects/SkXfermodeImageFilter.cpp index c82482d9ab..558e29a82f 100644 --- a/src/effects/SkXfermodeImageFilter.cpp +++ b/src/effects/SkXfermodeImageFilter.cpp @@ -179,7 +179,6 @@ sk_sp<SkSpecialImage> SkXfermodeImageFilter::filterImageGPU(SkSpecialImage* sour } GrPaint paint; - // SRGBTODO: AllowSRGBInputs? sk_sp<GrFragmentProcessor> bgFP; if (backgroundTex) { @@ -248,6 +247,7 @@ sk_sp<SkSpecialImage> SkXfermodeImageFilter::filterImageGPU(SkSpecialImage* sour if (!drawContext) { return nullptr; } + paint.setAllowSRGBInputs(drawContext->isGammaCorrect()); SkMatrix matrix; matrix.setTranslate(SkIntToScalar(-bounds.left()), SkIntToScalar(-bounds.top())); |