History log of /external/skia/src/effects/SkToSRGBColorFilter.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
333848272c4d023199e44ff38f2e6fc6876388e8 26-Jan-2018 Mike Klein <mtklein@chromium.org> remove SkColorSpace_Base

The type SkColorSpace_Base doesn't need to exist. Its one type() query
can be answered instead by toXYZD50().

Now all that's left in the file is SkGammas, so rename it to SkGammas.h.

Change-Id: Id60ddbfb342accfd5674ae89b37a24a6583ef7b8
Reviewed-on: https://skia-review.googlesource.com/99702
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
f1f1162273b382db99f8609e5bbfff24f5594821 18-Dec-2017 Mike Klein <mtklein@chromium.org> remove append_from_srgb()

It's now no different than append(from_srgb).

Bug: skia:7419

Change-Id: I97c59b6987f033ec2f1859db40ca3056b87b370a
Reviewed-on: https://skia-review.googlesource.com/86741
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
37155d476cd727329d985b75ecedbefe380a0f23 15-Dec-2017 Mike Klein <mtklein@chromium.org> Rework out-of-gamut handling in SkRasterPipeline

Instead of trying to carefully manage the in-gamut / out-of-gamut state
of the pipeline, let's do what a GPU would do, clamping to representable
range in any float -> integer conversion.

Most effects doing table lookups now clamp themselves internally, and
the store_foo() methods clamp when the destination is fixed point. In
turn the from_srgb() conversions and all future transfer function stages
can care less about this stuff.

If I'm thinking right, the _lowp side of things need not change at all,
and that will soften the performance impact of this change. Anything
that was fast to begin with was probably running a _lowp pipeline.

Bug: skia:7419

Change-Id: Id2e080ac240a97b900a1ac131c85d9e15f70af32
Reviewed-on: https://skia-review.googlesource.com/85740
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
dbd43481f1da3c9c87f5d913660f216ec531870a 14-Dec-2017 Mike Klein <mtklein@chromium.org> Don't pass a stack address as a pipeline context pointer.

We call isNumericalTransferFn() both to test if an SkColorSpace
is a 7-parameter numerical transfer function, and to get those
parameters if so. They're passed to the stage functions that
apply that transfer function via a context pointer.

We can't use &srcFn as this pointer, as it's on the stack,
and won't be alive by the time we get around to running the
pipeline. Instead, copy it to the SkArenaAlloc we thread
through just for this purpose.

This would be a beginner's mistake, except that I wrote
the API myself...

Bug: chromium:794406
Change-Id: I9f9581f07a14ab501762f050e2c26f2e55a0c253
Reviewed-on: https://skia-review.googlesource.com/85340
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
364c4c87c1321625ae961d8f2cf315096ccfd462 04-Dec-2017 Mike Klein <mtklein@chromium.org> Only look at gamut_transform if we wrote to it.

If we're already in sRGB gamut, we will not write to the 3x4 matrix,
but we still analyze it to see if we need clamping. So we might
(harmlessly) re-clamp some already clamped colors unnecessarily.

Found by this Chromium MSAN bot.
Bug: chromium:789767
Change-Id: I5d76e59b541a03ee8efbd4352262b4f650e1ec01
Reviewed-on: https://skia-review.googlesource.com/79762
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
c9bc81434adc0c0ea6012167fbda0e131548e683 27-Nov-2017 Mike Klein <mtklein@chromium.org> Handle null colorspace in SkToSRGBColorFilter.

This was uncovered by the linked fuzzer issue.

I haven't looked hard at it, but I'd guess it's fuzzed an ICC profile
into one that can't be deserialized, and we get a null in CreateProc().

We could probably restrict the null check to just CreateProc(), but
putting it in Make() and asserting in the constructor feels cozy.

BUG=chromium:787718

Change-Id: Ic4b1dad28c00ee5870f22093eedbf34686c32120
Reviewed-on: https://skia-review.googlesource.com/76080
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
4cbb6e6d551e8bea2c040b1aa9dce253cffb9af0 25-Oct-2017 Brian Salomon <bsalomon@google.com> Pass GrRenderTargetContext's GrColorSpaceInfo to SkShader and SkColorFilter.

Also to SkColorTo(Premul|Unpremul)GrColor4f.

This can avoid cache lookups to find GrColorSpaceXforms as the xform pointer is stored in GrColorSpaceInfo after the first lookup.

Also uses GrColorSpaceInfo to construct GrTextUtils::Paint.

Bug: skia:
Change-Id: Idf19d512a60d2269e6921c7fb54d93aee499a70d
Reviewed-on: https://skia-review.googlesource.com/63660
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
aff329b8e9b239bca1d93b13a914fbef45ccf7fe 11-Aug-2017 Brian Salomon <bsalomon@google.com> Make GrFragmentProcessor be non-refcounted and use std::unique_ptr.

Change-Id: I985e54a071338e99292a5aa2f42c92bc115b4008
Reviewed-on: https://skia-review.googlesource.com/32760
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
159db0a6a1001b220b42fcae46ed324e0986b14a 25-Jul-2017 Mike Klein <mtklein@chromium.org> rough clamped tracking in SkRasterPipeline

This should make srgb_color_filter draw correctly in software.
Previously the Rec2020 block would overflow.

Change-Id: Ied4516728039e54214886d55bba92662beee9a26
Reviewed-on: https://skia-review.googlesource.com/26562
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
e4832b287c6d0ae4a4a193f0144736f7eb6a824d 25-Jul-2017 Mike Klein <mtklein@chromium.org> clean up check now done in Make()

Change-Id: I773450b057ca7da06c7be4bdfd475d0c070f8558
Reviewed-on: https://skia-review.googlesource.com/26560
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
fa78ece52e8e30f522eea77df7ab67edcd17bddc 25-Jul-2017 Mike Reed <reed@google.com> Revert "Revert "Add GM to test SkToSRGBColorFilter""

This reverts commit a1fc47169a9eb2ba5d1cf55b60f77405394b449c.

Reason for revert: serialization fixed

Original change's description:
> Revert "Add GM to test SkToSRGBColorFilter"
>
> This reverts commit fa3ed03720b5083afd3620c9239863f05f2eedbd.
>
> Reason for revert: GM is failing on a lot of bots
>
> Original change's description:
> > Add GM to test SkToSRGBColorFilter
> >
> > Bug: skia:
> > Change-Id: If342ad5503d1b427f2d04ce15b75f0f7fa2706c1
> > Reviewed-on: https://skia-review.googlesource.com/26426
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
>
> TBR=djsollen@google.com,mtklein@google.com,brianosman@google.com
>
> Change-Id: I92fe179ead6d115b32b3a9533b8ee0e10bb3ee43
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/26522
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Commit-Queue: Kevin Lubick <kjlubick@google.com>

TBR=djsollen@google.com,mtklein@google.com,kjlubick@google.com,brianosman@google.com

Change-Id: Id4db253a149ff978456ecfe55c8e551e325c98ac
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/26511
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
205c69d4895ac115c2e456707169321b257dc6ae 25-Jul-2017 Mike Reed <reed@google.com> implement serialization for tosrgb

Bug: skia:
Change-Id: I365f3398f74dbaaeb22c9246255c03b078386877
Reviewed-on: https://skia-review.googlesource.com/26507
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
a1fc47169a9eb2ba5d1cf55b60f77405394b449c 25-Jul-2017 Kevin Lubick <kjlubick@google.com> Revert "Add GM to test SkToSRGBColorFilter"

This reverts commit fa3ed03720b5083afd3620c9239863f05f2eedbd.

Reason for revert: GM is failing on a lot of bots

Original change's description:
> Add GM to test SkToSRGBColorFilter
>
> Bug: skia:
> Change-Id: If342ad5503d1b427f2d04ce15b75f0f7fa2706c1
> Reviewed-on: https://skia-review.googlesource.com/26426
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=djsollen@google.com,mtklein@google.com,brianosman@google.com

Change-Id: I92fe179ead6d115b32b3a9533b8ee0e10bb3ee43
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/26522
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
fa3ed03720b5083afd3620c9239863f05f2eedbd 25-Jul-2017 Brian Osman <brianosman@google.com> Add GM to test SkToSRGBColorFilter

Bug: skia:
Change-Id: If342ad5503d1b427f2d04ce15b75f0f7fa2706c1
Reviewed-on: https://skia-review.googlesource.com/26426
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
92db5a39d4f810dbef96b2b966e4615f7af0ce51 25-Jul-2017 Mike Klein <mtklein@chromium.org> CPU impl for ToSRGBColorFilter

Change-Id: Idf445e661997a86517cd4d07e50f3cbe5d219a7e
Reviewed-on: https://skia-review.googlesource.com/26520
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp
10b6ad13f996d2f522bc057d17acea58e43a7f0b 25-Jul-2017 Brian Osman <brianosman@google.com> sRGB color filter

Bug: skia:
Change-Id: I9f04b8ce778349218ccd55673bdd1d16a192383c
Reviewed-on: https://skia-review.googlesource.com/26422
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
/external/skia/src/effects/SkToSRGBColorFilter.cpp