aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkColorSpaceXformCanvas.cpp
Commit message (Collapse)AuthorAge
* Remove SkDrawFilter.Gravatar Ben Wagner2018-07-12
| | | | | | | | | Change-Id: I0204a9522e828c87bb7c6c20ae34ce51161442af Reviewed-on: https://skia-review.googlesource.com/137895 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* skeletal animation support added to API and software backendGravatar Ruiqi Mao2018-06-29
| | | | | | | | | | | | SkCanvas::drawVertices now supports overloads that take an array of bone deformation matrices. SkVertices::MakeCopy and SkVertices::Builder now support two additional optional attributes, boneIndices and boneWeights. Bug: skia: Change-Id: I30a3b11691e7cdb13924907cc1401ff86d127aea Reviewed-on: https://skia-review.googlesource.com/137221 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Fix A2B JPEG images on GPU backed xform or color-managed canvasGravatar Brian Osman2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | A2B images can't be transformed on the GPU, so ensure that they're "converted" before being uploaded. (This may just create a new lazy image with an updated color space). Then, when we're converting JPEG images (YUV) to textures, don't allow GPU decode if the result needs to go through A2B conversion (again, we can't do this). In that case, we just ask the generator (codec) for RGB data, which will trigger correct CPU conversion before the upload. Eventually this will be rewritten further, because we won't allow A2B data in SkColorSpace, but for now this fixes a problem that's not actually affecting any clients, but is blocking a GrColorSpaceXform refactor. Change-Id: I1ebef4a90773d21ec4011ed1ac16aed486ba5539 Reviewed-on: https://skia-review.googlesource.com/133447 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Shim to enforce that canvas virtuals are overriddenGravatar Brian Osman2018-03-09
| | | | | | | | Change-Id: Iad70d449bbc43195baefd70d20c41996a8435e6e Reviewed-on: https://skia-review.googlesource.com/113320 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove tonal color from DrawShadow internalsGravatar Jim Van Verth2018-01-19
| | | | | | | | Bug: b/71719631 Change-Id: I676c34dfe5ea9b5e184ea53dd49a8b835d4e8cb6 Reviewed-on: https://skia-review.googlesource.com/95741 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Apply color transform for Lattice fixed colorsGravatar Stan Iliev2017-12-18
| | | | | | | | | | | | This is fixing an issue with nine patch not drawing correctly if there is a color transformaton. Bug: b/69796044 Test: Ran lattice2 test for gbr-8888 Change-Id: Idadc2938222222750f0f8bfb12650569191b7ad9 Reviewed-on: https://skia-review.googlesource.com/83680 Commit-Queue: Stan Iliev <stani@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* quick-reject before transforming imagesGravatar Mike Klein2017-12-14
| | | | | | | | | | | Transforming images is expensive, and pointless if they're clipped out. Bug: chromium:794690 Change-Id: Iffa4f6c60275caf310b8327e083b8857018621c2 Reviewed-on: https://skia-review.googlesource.com/85044 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* remove clip-bounds query overrides from SkColorSpaceXformCanvasGravatar Mike Klein2017-11-28
| | | | | | | | | | | | | | | | | | | | | | | This is the only SkCanvas subclass currently overriding these, and this leads to buggy interactions with this canvas, saveLayer(), and image filters. The base SkCanvas tracks and can answer these queries just as well as fTarget. A couple other SkCanvas subclasses do override isClipEmpty() and isClipRect(), and these conservative clip tracking SkCanvases can't really answer isClipRect() correctly, so I've left those both. I'm intentionally keeping this CL minimal in case it needs backporting to other branches. I'm going to follow up separately with a GM or unit test that would reproduce the Chrome bug, and with a CL that de-virtualizes these two methods. BUG=chromium:781238 Change-Id: I75bf6b0910115fafe17fa721082acc415bfdae23 Reviewed-on: https://skia-review.googlesource.com/76802 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Include target CS in SkColorSpaceXformCanvas' image infoGravatar Brian Osman2017-11-09
| | | | | | | | Bug: skia: Change-Id: Idcf9c933e1a236772e0b5edd3ba8437d1a6ae293 Reviewed-on: https://skia-review.googlesource.com/69502 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Plumb internal helper to enable more GPU GMs w/SkColorSpaceXformCanvasGravatar Brian Osman2017-11-01
| | | | | | | | | | | | API change isn't really public. TBR:bsalomon@google.com Bug: skia: Change-Id: I3a1ae5d7ddb562387e8b8e1248b347704f88037b Reviewed-on: https://skia-review.googlesource.com/66144 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Reland "Optimize SkColorSpaceXformCanvas for GPU-acceleration"Gravatar Justin Novosad2017-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 1d3df3848ff297e353a2d0f0fae6ec4a55ab7ba6 Original change's description: > Optimize SkColorSpaceXformCanvas for GPU-acceleration > > This change ensures that SkImages are uploaded to the GPU before > applying the xform when the destination canvas is on the GPU. This > makes it possible to get hits in the texture cache and it ensures > that transforms get computed on the GPU. > > This fixes a severe performance regression in Chrome that happened > when color correction was enabled. > > Associated chromium patch for layout test rebaselines: > https://chromium-review.googlesource.com/c/chromium/src/+/655483 > > Merge dependency: Merging this change to the M-62 and M-61 > branches also requires merging the following change, otherwise > there will be rendering errors: > https://skia-review.googlesource.com/c/skia/+/43562 > > BUG=chromium:760738 > > Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73 > Reviewed-on: https://skia-review.googlesource.com/43183 > Commit-Queue: Justin Novosad <junov@chromium.org> > Reviewed-by: Brian Osman <brianosman@google.com> Bug: chromium:760738 Change-Id: I94a3482713dc4ff824ae21ea640c04d06bb7e29d Reviewed-on: https://skia-review.googlesource.com/44760 Reviewed-by: Justin Novosad <junov@chromium.org> Commit-Queue: Justin Novosad <junov@chromium.org>
* Revert "Optimize SkColorSpaceXformCanvas for GPU-acceleration"Gravatar Robert Phillips2017-09-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1d3df3848ff297e353a2d0f0fae6ec4a55ab7ba6. Reason for revert: Mac timeouts? crbug.com/763197 Original change's description: > Optimize SkColorSpaceXformCanvas for GPU-acceleration > > This change ensures that SkImages are uploaded to the GPU before > applying the xform when the destination canvas is on the GPU. This > makes it possible to get hits in the texture cache and it ensures > that transforms get computed on the GPU. > > This fixes a severe performance regression in Chrome that happened > when color correction was enabled. > > Associated chromium patch for layout test rebaselines: > https://chromium-review.googlesource.com/c/chromium/src/+/655483 > > Merge dependency: Merging this change to the M-62 and M-61 > branches also requires merging the following change, otherwise > there will be rendering errors: > https://skia-review.googlesource.com/c/skia/+/43562 > > BUG=chromium:760738 > > Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73 > Reviewed-on: https://skia-review.googlesource.com/43183 > Commit-Queue: Justin Novosad <junov@chromium.org> > Reviewed-by: Brian Osman <brianosman@google.com> TBR=brianosman@google.com,junov@chromium.org Change-Id: I1a43e9b277075d1aee0efd651c899e15ac3fa53b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:760738 Reviewed-on: https://skia-review.googlesource.com/44160 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Optimize SkColorSpaceXformCanvas for GPU-accelerationGravatar Justin Novosad2017-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | This change ensures that SkImages are uploaded to the GPU before applying the xform when the destination canvas is on the GPU. This makes it possible to get hits in the texture cache and it ensures that transforms get computed on the GPU. This fixes a severe performance regression in Chrome that happened when color correction was enabled. Associated chromium patch for layout test rebaselines: https://chromium-review.googlesource.com/c/chromium/src/+/655483 Merge dependency: Merging this change to the M-62 and M-61 branches also requires merging the following change, otherwise there will be rendering errors: https://skia-review.googlesource.com/c/skia/+/43562 BUG=chromium:760738 Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73 Reviewed-on: https://skia-review.googlesource.com/43183 Commit-Queue: Justin Novosad <junov@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* Revert "Optimize SkColorSpaceXformCanvas for GPU-acceleration"Gravatar Robert Phillips2017-09-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 19c8726a0829e506c5c42d22d67b3fe7505ed24e. Reason for revert: Breaking Chrome roll Original change's description: > Optimize SkColorSpaceXformCanvas for GPU-acceleration > > This change ensures that SkImages are uploaded to the GPU before > applying the xform when the destination canvas is on the GPU. This > makes it possible to get hits in the texture cache and it ensure > that transforms get computed on the GPU. > > This fixes a severe performance regression in Chrome that happened > when color correction was enabled. > > BUG=chromium:760738 > > Change-Id: I52032a9f06ccbe1a7fd56a91db15377925143b26 > Reviewed-on: https://skia-review.googlesource.com/42422 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Justin Novosad <junov@chromium.org> TBR=brianosman@google.com,junov@chromium.org Change-Id: Ia117d6f95c34324383aaf3bfc990bb13e48bed6e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:760738 Reviewed-on: https://skia-review.googlesource.com/42720 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Optimize SkColorSpaceXformCanvas for GPU-accelerationGravatar Justin Novosad2017-09-05
| | | | | | | | | | | | | | | | | This change ensures that SkImages are uploaded to the GPU before applying the xform when the destination canvas is on the GPU. This makes it possible to get hits in the texture cache and it ensure that transforms get computed on the GPU. This fixes a severe performance regression in Chrome that happened when color correction was enabled. BUG=chromium:760738 Change-Id: I52032a9f06ccbe1a7fd56a91db15377925143b26 Reviewed-on: https://skia-review.googlesource.com/42422 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Justin Novosad <junov@chromium.org>
* Compute correct bounds for DrawShadowRec.Gravatar Jim Van Verth2017-07-31
| | | | | | | | Bug: skia:6880 Change-Id: Ia8b94e52eec3feb5104d2351bf7a7e6f99101deb Reviewed-on: https://skia-review.googlesource.com/26370 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* move shadows to device virtualGravatar Mike Reed2017-05-17
| | | | | | | | | | | | | This CL keeps the impl for each device backend in the utils file for simplicity (shared helpers). Future CLs may move into their respective impl as they become more specialized. Bug: skia: Change-Id: I97ce6cdcc5106ebf4c84778f943cc32d0b7613c1 Reviewed-on: https://skia-review.googlesource.com/15893 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Forward getGrContext in color space xform canvasGravatar Brian Osman2017-05-09
| | | | | | | | Bug: chromium:719664 Change-Id: I7477c1eb0479d5305233dc6a643280d88029bd17 Reviewed-on: https://skia-review.googlesource.com/15888 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Revert "SaveLayerRec::fClipMask -> raw pointer""Gravatar Mike Klein2017-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3354969a4a4adcea159f3a0b01ad0a7c04fc9115. Reason for revert: not the problem? Original change's description: > Revert "SaveLayerRec::fClipMask -> raw pointer" > > This reverts commit a6b72cb5729306fdd676d739c1e2c53afa0786a7. > > Reason for revert: red bots > > Original change's description: > > SaveLayerRec::fClipMask -> raw pointer > > > > Use raw pointers for optional clip mask plumbing, to match the backdrop > > API. > > > > Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2 > > Reviewed-on: https://skia-review.googlesource.com/14901 > > Reviewed-by: Mike Reed <reed@google.com> > > Commit-Queue: Florin Malita <fmalita@chromium.org> > > > > TBR=fmalita@chromium.org,reed@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: I4387620cdc3410018af9cef221e5cf8d09015380 > Reviewed-on: https://skia-review.googlesource.com/14955 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,reviews@skia.org,fmalita@chromium.org,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I6dde9e0441928f7a7423139a5c39f520f892f4b5 Reviewed-on: https://skia-review.googlesource.com/14958 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "SaveLayerRec::fClipMask -> raw pointer"Gravatar Mike Klein2017-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a6b72cb5729306fdd676d739c1e2c53afa0786a7. Reason for revert: red bots Original change's description: > SaveLayerRec::fClipMask -> raw pointer > > Use raw pointers for optional clip mask plumbing, to match the backdrop > API. > > Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2 > Reviewed-on: https://skia-review.googlesource.com/14901 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Florin Malita <fmalita@chromium.org> > TBR=fmalita@chromium.org,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I4387620cdc3410018af9cef221e5cf8d09015380 Reviewed-on: https://skia-review.googlesource.com/14955 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SaveLayerRec::fClipMask -> raw pointerGravatar Florin Malita2017-05-01
| | | | | | | | | | Use raw pointers for optional clip mask plumbing, to match the backdrop API. Change-Id: I7eb0ee5896faf34cc05789ba0703f35a4ab6a4f2 Reviewed-on: https://skia-review.googlesource.com/14901 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Initial clip-mask-layer supportGravatar Florin Malita2017-05-01
| | | | | | | | | | | | | | SkBitmapDevice-only implementation. Will add A8 fast path specializations in a follow-up. Change-Id: I2ccb1ffba3689e92ac90a23e94737471dfb121a1 BUG=skia:6005 Change-Id: I2ccb1ffba3689e92ac90a23e94737471dfb121a1 Reviewed-on: https://skia-review.googlesource.com/14183 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Make SkColorSpaceXformer::apply(SkPaint) safe to call recursivelyGravatar Matt Sarett2017-04-25
| | | | | | | | | | | | | Before, we would stomp on the original paint in the recursive call. This fixes 4 gbr-8888 gms. Currently, this only affects loopers and SkPaintImageFilter. Bug: skia:6516 Change-Id: Ic47d637a912370c0a1ae8ef3282ad7d15d9902e3 Reviewed-on: https://skia-review.googlesource.com/14182 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* xform saveLayer() backdropGravatar Mike Klein2017-04-25
| | | | | | | | | | | | | Just noticed this TODO is easy now. This doesn't seem to change any GMs, and definitely isn't used by Chrome or Android... this is just for completeness. It's also definitely correct to unfurl pictures. Change-Id: Ida6e43788d1de7a9452dad47aea8a5fbe41a1f46 Reviewed-on: https://skia-review.googlesource.com/14276 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com>
* Override setDrawFilter() in SkColorSpaceXformCanvasGravatar Matt Sarett2017-04-12
| | | | | | | | | | | | | | Fixes cts tests. b/37161109 b/37237678 Bug: skia: Change-Id: I12d78b631b4056a78cbbb2962144e8cc62eb931a Reviewed-on: https://skia-review.googlesource.com/13244 Commit-Queue: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Avoid extra bitmap copies in SkColorSpaceXformCanvasGravatar Matt Sarett2017-04-03
| | | | | | | | | | | | | | | | | | Before: ColorCanvasDrawBitmap_sRGB_to_sRGB 5.09us ColorCanvasDrawBitmap_AdobeRGB_to_sRGB 50.7us After: ColorCanvasDrawBitmap_sRGB_to_sRGB 2.43us ColorCanvasDrawBitmap_AdobeRGB_to_sRGB 37.1us BUG=skia:6456 Change-Id: Ie382936c36fd347b59485882cf8f27f315a5d35f Change-Id: Ie382936c36fd347b59485882cf8f27f315a5d35f Reviewed-on: https://skia-review.googlesource.com/11040 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* avoid deprecated SkRect::MakeFromIRectGravatar Mike Klein2017-03-30
| | | | | | | | Change-Id: I55a5fd92b4b53b2676983233619cee4875967e01 Reviewed-on: https://skia-review.googlesource.com/10860 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkColorSpaceXformCanvas: setMatrix(), clipRect() in constructorGravatar Matt Sarett2017-03-30
| | | | | | | | | | BUG=703363 Change-Id: Ie0053940dd041614b93400e34145118fb0742cae Change-Id: Ie0053940dd041614b93400e34145118fb0742cae Reviewed-on: https://skia-review.googlesource.com/10806 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Add more overrides to SkColorSpaceXformCanvasGravatar Matt Sarett2017-03-30
| | | | | | | | | | Number of matching gms is unchanged. Bug: skia: Change-Id: I43961c716899ddacc560dd7888d4427563cdf7ca Reviewed-on: https://skia-review.googlesource.com/10805 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Make xformer class for SkCSXCanvas, use for draw loopersGravatar Matt Sarett2017-03-30
| | | | | | | | | | Fixes draw looper gms in gbr-8888 config. Bug: skia: Change-Id: I0a9306cc0523c82f2ad9516752d79c1d86b1e295 Reviewed-on: https://skia-review.googlesource.com/10644 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Override onImageInfo() in SkColorSpaceXformCanvasGravatar Matt Sarett2017-03-23
| | | | | | | | | | | Fixes the gamut gm in gbr modes and maybe others. BUG=skia: Change-Id: I341f8fe795860862158a823c99efddaa4478a3a7 Reviewed-on: https://skia-review.googlesource.com/10040 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Have SkColorSpaceXformCanas tell SkCanvas about clips.Gravatar Mike Klein2017-03-21
| | | | | | | | | | | | This should make queries like SkCanvas::getLocalClipBounds() work. BUG=chromium:703363 Change-Id: I1d8a39880152ba1da99cc8b289072ef747271bc8 Reviewed-on: https://skia-review.googlesource.com/9915 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* remove legacy virtual for vertices, only support object formGravatar Mike Reed2017-03-17
| | | | | | | | | BUG=skia:6366 Change-Id: Ic422fa44a788d3488c050c6218dbfba188bb8f3e Reviewed-on: https://skia-review.googlesource.com/9835 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Support all gradient types in SkColorSpaceXformCanvas.Gravatar Mike Klein2017-03-16
| | | | | | | | | | | | This shader introspection still doesn't seem like the right way to go, but while we've got it might as well fill in the rest of gradient types. These are low-hanging and among the most egregious gbr-8888/8888 diffs. Change-Id: Iaee67b615e49873c3aa8e2a67396a311efa75060 Reviewed-on: https://skia-review.googlesource.com/9746 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkColorSpaceXformCanvas: simple support for shadersGravatar Mike Klein2017-03-15
| | | | | | | | | | | | | | So far it looks like we can hit the major shader subclasses without needing to add new calls to SkShader. Not married to this approach, but it's a big head start. I've left out nonlinear gradient types just to keep this CL clear. Will follow up with them... they won't be interestingly different. Change-Id: I8711ff464f384d8be1671c139ba10a20502d9c0f Reviewed-on: https://skia-review.googlesource.com/9742 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Begin implementation of SkImage_Base::makeColorSpaceGravatar Matt Sarett2017-03-14
| | | | | | | | | | | | | | Originally: https://skia-review.googlesource.com/9622 CQ_INCLUDE_TRYBOTS=skia.primary:Test-Mac-Clang-MacMini6.2-CPU-AVX-x86_64-Release,Test-Android-Clang-PixelC-CPU-TegraX1-arm64-Debug-Android BUG=skia: Change-Id: I7ef1daaab32892399e3333e4b2fc75d70a1900e4 Reviewed-on: https://skia-review.googlesource.com/9651 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* Revert "Begin implementation of SkImage_Base::makeColorSpace"Gravatar Mike Reed2017-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 98629efdde9236e444d7b3fa644eaab3a1301566. Reason for revert: unittest failures Failures: ../../../tests/ImageTest.cpp:1099 0x28 == SkGetPackedR32(*p3Bitmap.getAddr32(0, 0)) ../../../tests/ImageTest.cpp:1100 0x40 == SkGetPackedG32(*p3Bitmap.getAddr32(0, 0)) ../../../tests/ImageTest.cpp:1101 0x5E == SkGetPackedB32(*p3Bitmap.getAddr32(0, 0)) Original change's description: > Begin implementation of SkImage_Base::makeColorSpace > > BUG=skia: > > Change-Id: Idf946faa64dad32a28070a430926a8225dbf6e5a > Reviewed-on: https://skia-review.googlesource.com/9622 > Commit-Queue: Matt Sarett <msarett@google.com> > Reviewed-by: Brian Osman <brianosman@google.com> > TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I6ce2a28ca581f7d01322588c2435133d8c6a2435 Reviewed-on: https://skia-review.googlesource.com/9649 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Begin implementation of SkImage_Base::makeColorSpaceGravatar Matt Sarett2017-03-14
| | | | | | | | | BUG=skia: Change-Id: Idf946faa64dad32a28070a430926a8225dbf6e5a Reviewed-on: https://skia-review.googlesource.com/9622 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* More SkCSXformCanvas work.Gravatar Mike Klein2017-03-13
| | | | | | | | | | | | | | - handle color arrays in drawPatch(), drawVertices(), drawAtlas() - color filters Color filter support is a one-off for SkModeColorFilter. I don't know any other color filters that are parameterized by a color. If there are any/many, we may want to wire up something more comprehensive here. Change-Id: Ibc89574e3a32d38af3bc2443a7d4bac0bb52d493 Reviewed-on: https://skia-review.googlesource.com/9601 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkColorSpaceXformCanvasGravatar Mike Klein2017-03-13
TODO: images shaders color filters image filters a couple stray color arrays Change-Id: Ib91639bb0a6a00af737dd5186180011fe5120860 Reviewed-on: https://skia-review.googlesource.com/9529 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>