aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn/gm.gni
Commit message (Collapse)AuthorAge
* Remove compressed (ETC1) texture support from Ganesh (take 2)Gravatar Robert Phillips2017-05-23
| | | | | | | | | | Reland of https://skia-review.googlesource.com/c/17456/ (Remove compressed (ETC1) texture support from Ganesh) but w/o removing third_part\etc1 files TBR=bsalomon@google.com Change-Id: I8ec4b7e3ddf47d213cb24c382731c050ffb8847f Reviewed-on: https://skia-review.googlesource.com/17700 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Remove compressed (ETC1) texture support from Ganesh"Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ee26363aaae62db2a851f2873e2405a9cf7f995a. Reason for revert: Failing Google 3 roll. Original change's description: > Remove compressed (ETC1) texture support from Ganesh > > Change-Id: If4cf286df87ea87338aba47001d90a5fcc4f2667 > Reviewed-on: https://skia-review.googlesource.com/17456 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ie1a57187287e03600a69e374501478e93c41415c Reviewed-on: https://skia-review.googlesource.com/17527 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove compressed (ETC1) texture support from GaneshGravatar Robert Phillips2017-05-22
| | | | | | | Change-Id: If4cf286df87ea87338aba47001d90a5fcc4f2667 Reviewed-on: https://skia-review.googlesource.com/17456 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add GM to verify that drawX == (path.addX, drawPath)Gravatar Brian Osman2017-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This demonstrates a new kind of hybrid unit test/GM. It creates a grid of cells. In each cell, we do two renders that are expected to produce the same result. For each cell, we render the two results overlaid, and highlight any differing pixels in red. Assuming there is a diff, the area around the largest diff is drawn zoomed in from both images. Matching cells are outlined in green, failing cells are outlined in red. Triaging this GM just involves answering the question: "Are there any red boxes?" "Good" example: https://screenshot.googleplex.com/909P3tvS55f.png "Bad" example: https://screenshot.googleplex.com/oXBWbEKw5ur.png To get more tests to pass, (and fix an assert in Ganesh), I've gone ahead and enforced that user supplied rects (in drawRect and drawOval) are always sorted once they hit the canvas virtuals. Currently, drawArc rejects empty ovals, but I added the same assert to onDrawArc, if we decide to change the strategy there. Re-land of: https://skia-review.googlesource.com/c/16983/ Bug: skia: Change-Id: I48f85de5f2bcb7fdc9558c2fd80cb1f20800b244 Reviewed-on: https://skia-review.googlesource.com/17270 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Add GM to verify that drawX == (path.addX, drawPath)"Gravatar Greg Daniel2017-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 78d1b428a8e8a0b76e88e9266d2893136acd5906. Reason for revert: break preabandongpu bot Original change's description: > Add GM to verify that drawX == (path.addX, drawPath) > > This demonstrates a new kind of hybrid unit test/GM. > It creates a grid of cells. In each cell, we do two > renders that are expected to produce the same result. > For each cell, we render the two results overlaid, > and highlight any differing pixels in red. Assuming > there is a diff, the area around the largest diff > is drawn zoomed in from both images. > > Matching cells are outlined in green, failing cells > are outlined in red. Triaging this GM just involves > answering the question: "Are there any red boxes?" > > "Good" example: https://screenshot.googleplex.com/909P3tvS55f.png > "Bad" example: https://screenshot.googleplex.com/oXBWbEKw5ur.png > > To get more tests to pass, (and fix an assert > in Ganesh), I've gone ahead and enforced that user > supplied rects (in drawRect and drawOval) are > always sorted once they hit the canvas virtuals. > Currently, drawArc rejects empty ovals, but I added > the same assert to onDrawArc, if we decide to change > the strategy there. > > Bug: skia: > Change-Id: I021a18c85e234298e1d29f333662683d996dd42c > Reviewed-on: https://skia-review.googlesource.com/16983 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Reed <reed@google.com> > TBR=mtklein@chromium.org,mtklein@google.com,brianosman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Bug: skia: Change-Id: Id1ead4e22115c49cad5d0adb6151ede81734b4d3 Reviewed-on: https://skia-review.googlesource.com/17269 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add GM to verify that drawX == (path.addX, drawPath)Gravatar Brian Osman2017-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This demonstrates a new kind of hybrid unit test/GM. It creates a grid of cells. In each cell, we do two renders that are expected to produce the same result. For each cell, we render the two results overlaid, and highlight any differing pixels in red. Assuming there is a diff, the area around the largest diff is drawn zoomed in from both images. Matching cells are outlined in green, failing cells are outlined in red. Triaging this GM just involves answering the question: "Are there any red boxes?" "Good" example: https://screenshot.googleplex.com/909P3tvS55f.png "Bad" example: https://screenshot.googleplex.com/oXBWbEKw5ur.png To get more tests to pass, (and fix an assert in Ganesh), I've gone ahead and enforced that user supplied rects (in drawRect and drawOval) are always sorted once they hit the canvas virtuals. Currently, drawArc rejects empty ovals, but I added the same assert to onDrawArc, if we decide to change the strategy there. Bug: skia: Change-Id: I021a18c85e234298e1d29f333662683d996dd42c Reviewed-on: https://skia-review.googlesource.com/16983 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* clamp to premul in ditherGravatar Mike Klein2017-05-16
| | | | | | | | | | | | | Dither can bump color values above alpha (duh), or below zero (duh), so clamp back to premul after dithering. BUG=skia:6644,skia:6643 Change-Id: Ida107e866380e06130af0d01467117bca929ba44 Reviewed-on: https://skia-review.googlesource.com/17070 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* fix SkJumper radial gradient precisionGravatar Mike Klein2017-05-15
| | | | | | | | | | | | rcp(rsqrt(x)) doesn't have enough precision when x is a coordinate. (It's fine when x is a color, like in the softlight blend mode.) Adds a GM to test this. It used to look quite ugly. Change-Id: Icec295c2e2f50ae7a5e3e33c62270f632a58f65c Reviewed-on: https://skia-review.googlesource.com/16914 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Added SkImage::MakeCrossContextFromEncodedGravatar Brian Osman2017-05-09
| | | | | | | | | | | | | | | Designed for Flutter's threading architecture, with an eye to being useful to other clients. Under the hood, uses a new image generator class to lazily wrap a texture for multiple GrContexts. Re-land of https://skia-review.googlesource.com/c/14180/ Bug: skia: Change-Id: I3dd382640629b79b3058f18fee68d043566e43e5 Reviewed-on: https://skia-review.googlesource.com/15895 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add jpeg encoder alpha handling optionGravatar Matt Sarett2017-05-09
| | | | | | | | | | | | | | | | | This instructs us on how to encode jpegs when the src image has alpha. The original behavior is to ignore the alpha channel. This CL adds the option to blend the pixels onto opaque black. Note that kBlendOnBlack and kIgnore are identical unless the input alpha type is kUnpremul. Bug: 713862 Bug: skia:1501 Change-Id: I4891c70bb0ccd83f7974c359bd40a2143b5c49ac Reviewed-on: https://skia-review.googlesource.com/15817 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert "Added SkImage::MakeCrossContextFromEncoded"Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 83b1b3db36e8622f4bbc8c391d5c714e258d1e03. Reason for revert: unit test failing and asan leaks Original change's description: > Added SkImage::MakeCrossContextFromEncoded > > Designed for Flutter's threading architecture, with > an eye to being useful to other clients. Under the > hood, uses a new image generator class to lazily wrap > a texture for multiple GrContexts. > > Bug: skia: > Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b > Reviewed-on: https://skia-review.googlesource.com/14180 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I1f0bf580aa0ea2d132e18b64ff610ddac9d073a7 Reviewed-on: https://skia-review.googlesource.com/15892 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Added SkImage::MakeCrossContextFromEncodedGravatar Brian Osman2017-05-08
| | | | | | | | | | | | | Designed for Flutter's threading architecture, with an eye to being useful to other clients. Under the hood, uses a new image generator class to lazily wrap a texture for multiple GrContexts. Bug: skia: Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b Reviewed-on: https://skia-review.googlesource.com/14180 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add bigrect GM.Gravatar Ben Wagner2017-05-05
| | | | | | | | | | | Previous version in https://codereview.chromium.org/1758113005 was reverted. Bug: skia:4632 Change-Id: I9a85f11ca3a6fcd5e67016edf67f0538f00b6f01 Reviewed-on: https://skia-review.googlesource.com/14751 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* add a new hsl GMGravatar Mike Klein2017-05-05
| | | | | | | Change-Id: I2c8b9df3e6bf40de4b38966fa8ea671fc68aa45f Reviewed-on: https://skia-review.googlesource.com/15635 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Reland "Add SkImage::makeColorSpace() with correct transfer fn behavior"Gravatar Matt Sarett2017-05-04
| | | | | | | | | | | Completes implementation for lazy and raster images. gpu is still a TODO. Bug: skia:6553 Change-Id: I898e4464ffc91442c7f98669f1203dd5c203621b Reviewed-on: https://skia-review.googlesource.com/15307 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert "Add SkImage::makeColorSpace() with correct transfer fn behavior"Gravatar Matt Sarett2017-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9ad0531a18f854e5a2c8034880140dd6cd3ea3c1. Reason for revert: Does not handle transfer fn behavior. Original change's description: > Add SkImage::makeColorSpace() with correct transfer fn behavior > > Completes implementation for lazy and raster images. gpu is > still a TODO. > > Bug: skia:6553 > Change-Id: I04eea5c4fb53c50c0406c2e6b6778b0e21fd85f8 > Reviewed-on: https://skia-review.googlesource.com/14403 > Commit-Queue: Matt Sarett <msarett@google.com> > Reviewed-by: Mike Reed <reed@google.com> > TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I3830321aea7d0dc5ab38a40f3318bb53a41df383 Reviewed-on: https://skia-review.googlesource.com/15306 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Add SkImage::makeColorSpace() with correct transfer fn behaviorGravatar Matt Sarett2017-05-03
| | | | | | | | | | | Completes implementation for lazy and raster images. gpu is still a TODO. Bug: skia:6553 Change-Id: I04eea5c4fb53c50c0406c2e6b6778b0e21fd85f8 Reviewed-on: https://skia-review.googlesource.com/14403 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Remove EXPERIMENTAL_SHADOWING, Part 1Gravatar Jim Van Verth2017-05-02
| | | | | | | | | Bug: skia:6557 Change-Id: I6482d74be7b360c93141a73dd80c67854530c7a1 Reviewed-on: https://skia-review.googlesource.com/15101 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* remove unused yuv methodsGravatar Mike Reed2017-04-28
| | | | | | | | Bug: skia: Change-Id: Ie1e6c905d8989b49c2cf5c9e5fd1f383268f6480 Reviewed-on: https://skia-review.googlesource.com/14645 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Delete SkGTypeface and SkGScalerContextGravatar Matt Sarett2017-04-25
| | | | | | | | Bug: skia: Change-Id: I6a513d0cb3600678bc3b9c2bdfa8e04d692e9acf Reviewed-on: https://skia-review.googlesource.com/14191 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Use dstColorSpace in SkPictureShader cache keyGravatar Matt Sarett2017-04-21
| | | | | | | | | | | | | | Starting with the bug fix + test. Broken off of: https://skia-review.googlesource.com/c/13976 Bug: skia: Change-Id: If6c28e2dfb0c5340c48e943d0313a9ea9515a6c3 Reviewed-on: https://skia-review.googlesource.com/14061 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local ↵Gravatar Matt Sarett2017-04-12
| | | | | | | | | | | | | | | | | matrix Fixes cts tests. b/37161109 b/37237678 CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN Bug: skia: Change-Id: I438b8b17f4c7c5bfcb50dfa22af1ddb97b905088 Reviewed-on: https://skia-review.googlesource.com/13261 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert "Fix SkLocalMatrixShader::isAImage() to respect local matrix and ↵Gravatar Matt Sarett2017-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | image local matrix" This reverts commit e5efa51b2acc86d1993132348d5b465855a653cc. Reason for revert: MSAN Original change's description: > Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local matrix > > Fixes cts tests. > > b/37161109 > b/37237678 > > Bug: skia: > Change-Id: Ida9ac5e4261e8a6b22e8cdc0e585e0e7929dbbfd > Reviewed-on: https://skia-review.googlesource.com/13249 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I2b78c7b32997344136c784dc77675dafca37565e Reviewed-on: https://skia-review.googlesource.com/13259 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local ↵Gravatar Matt Sarett2017-04-12
| | | | | | | | | | | | | | | matrix Fixes cts tests. b/37161109 b/37237678 Bug: skia: Change-Id: Ida9ac5e4261e8a6b22e8cdc0e585e0e7929dbbfd Reviewed-on: https://skia-review.googlesource.com/13249 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* don't use deprecated (raw) form of SkPatchUtils, delete duplicate utilGravatar Mike Reed2017-03-17
| | | | | | | | | | | deprecated API still used in android -- will fix (and then delete) BUG=skia:6366 Change-Id: Icd87acc680f7c8ae66ac231cb5d254f5eb178008 Reviewed-on: https://skia-review.googlesource.com/9864 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add gm to compare premuls in dst vs. src color spaceGravatar Matt Sarett2017-03-08
| | | | | | | | | BUG=skia: Change-Id: I36755f4bbc405a8af12990573e1f554df012b30a Reviewed-on: https://skia-review.googlesource.com/9402 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Add new GMs to stress rendering of many circles and rrectsGravatar Jim Van Verth2017-02-22
| | | | | | | Change-Id: I060419bc39484b379329a1691e199d9d3db9c808 Reviewed-on: https://skia-review.googlesource.com/8807 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Implement SkHighContrastFilterGravatar Dominic Mazzoni2017-02-16
| | | | | | | | | | | | | | | | | This is a color filter to apply several contrast adjustments for users with low vision, including inverting the colors (in either RGB or HSL space), applying gamma correction, converting to grayscale, and increasing the contrast. BUG=skia:6235 CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: Icb8f3e290932d8bcd9387fb1f39dd20767e15cf6 Reviewed-on: https://skia-review.googlesource.com/7460 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* removed unused code around scaled generatorsGravatar Mike Reed2017-02-15
| | | | | | | | | | BUG=skia: Change-Id: I9e042cd9343e0f29032f84ee17b4b316214ec693 Reviewed-on: https://skia-review.googlesource.com/8403 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* SkPDF: better tolerance path conversion to quadraticsGravatar Hal Canary2017-02-13
| | | | | | | | | BUG=chromium:691386 Change-Id: I2cb9be7dd606b2ba61ff609f9fd81a55655901f6 Reviewed-on: https://skia-review.googlesource.com/8381 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Cary Clark <caryclark@google.com>
* A simple gradient testGravatar Tenghui Zhu2017-02-13
| | | | | | | Change-Id: Ic3e53f7eab747f63641e0eb6a1c73ad0833acef6 Reviewed-on: https://skia-review.googlesource.com/8158 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Tenghui Zhu <ztenghui@google.com>
* Add GM to test ETC1Gravatar Robert Phillips2017-02-10
| | | | | | | | | I don't think ETC1 currently gets tested any other way. Change-Id: I125d6cb52603c87fc91b47d02743dc4efe0409b7 Reviewed-on: https://skia-review.googlesource.com/8316 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add GM to exercise some of the darker corners of SkMagnifierImageFilterGravatar Robert Phillips2017-02-07
| | | | | | | | | | | An upcoming CL (https://skia-review.googlesource.com/c/7995/ (Remove asTextureRef from SkSpecialImage & update effects accordingly)) modifies some untested portions of the SkMagnifierImageFilter. This adds a test to prevents regressions. Change-Id: I9fa406f699e39fa393212e7f63a457b015b36edb Reviewed-on: https://skia-review.googlesource.com/8023 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Fix rounding error with tiled bitmap drawsGravatar Brian Osman2017-02-06
| | | | | | | | | | | | | | | We were snapping the top-left of the destination rectangle to integers, but using the original (fractional) size. This led to us losing rows or columns of pixels at the first tile boundary. Also added a GM that demonstrates the bug (now renders correctly). BUG=skia: Change-Id: I50629dab9dd90fedad2c7e3393a1b1d1c7a8d45e Reviewed-on: https://skia-review.googlesource.com/8102 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add a GM for SkShadowUtils and fix a few issues.Gravatar Brian Salomon2017-02-01
| | | | | | | | | | | | | | | 1) Transform the path center to device space before computing the shadow offset. 2) Modulate the shadow color by the color filter's output color. 3) Make the scale of path points in the spot tessellator be relative to the path centroid. 4) Clamp the shadow alphas at 1. Change-Id: I480476df79b959f11c1eca0ba2a49a134d355cbb Reviewed-on: https://skia-review.googlesource.com/7860 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Move SkGammaColorFilter to tools, limit to sRGBGravatar Brian Osman2017-01-26
| | | | | | | | | | | Similarly, limit GrGammaEffect to sRGB (and rename it). BUG=skia: Change-Id: I88feef11ab7040bca2fa4c2eed71923ded87a0d0 Reviewed-on: https://skia-review.googlesource.com/7375 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove SkColorCubeFilter. It is unused.Gravatar Mike Klein2017-01-21
| | | | | | | Change-Id: Iec5fc759e331de24caea1347f9510917260d379b Reviewed-on: https://skia-review.googlesource.com/7363 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* savelayer gmGravatar Mike Reed2017-01-14
| | | | | | | | | BUG=skia: Change-Id: Ie24ed6e450b77447a75b5b9bdd0a4516cca5e85c Reviewed-on: https://skia-review.googlesource.com/7093 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* GrTessellator: fix artifact with exactly-1-px-wide edges.Gravatar Stephen White2017-01-12
| | | | | | | | | | | | | | | | | | | | | | | | When path features are exactly a pixel wide, the extruded inner edges can become collinear and then be removed, since their winding is zero. We need these edges to be preserved through triangulation, otherwise opaque portions of the geometry can become transparent. Since the simplify() pass can handle zero-winding edges just fine, the the fix is to simply not remove them. In addition, this changes refactors out disconnect() from all the calls to remove_edge_above()/remove_edge_below(). It also renames the remaining function erase_edge() (since it's now unconditional). Add a new test to a new "thinconcavepaths" GM. BUG=680260 NOTRY=true Change-Id: I1d3a436c95a01c4d4ef5dc05503de4312677f65d Reviewed-on: https://skia-review.googlesource.com/6902 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephan White <senorblanco@chromium.org>
* Respect SkColorSpace in SkPNGImageEncoderGravatar Matt Sarett2017-01-10
| | | | | | | | | | | | | | | | | | | | | | | This only changes behavior when the input SkBitmap/SkPixmap is tagged with a non-null SkColorSpace. Android tags their bitmaps as sRGB when linear blending is enabled. So this only changes behavior in Android when linear blending is turned on. *If linear blending is turned on, this will do a color correct encode (which is the desired behavior). *If linear blending is turned off, this will do a legacy encode. TODO: Add support for F16. TODO: Add color space support to WEBP. TODO: Tag encoded images with ICC profiles (when it makes sense). BUG=skia: Change-Id: Idd8a2836371d24a453d953e6fe2e76a87751be96 Reviewed-on: https://skia-review.googlesource.com/6498 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Improve color space support in SkImage::readPixels()Gravatar Matt Sarett2016-12-22
| | | | | | | | | | | | Correct handling of kGray, k565, k4444 etc. is still a TODO. SkImage_Generator and SkImage_Gpu are still TODOs. BUG=skia:6021 Change-Id: Ib53d97d3a866b2b4934fd85c10100855743a8fab Reviewed-on: https://skia-review.googlesource.com/6396 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Implement scaling in SkCodecImageGeneratorGravatar Leon Scroggins III2016-12-21
| | | | | | | | | | | Plumb calls down to SkCodec. Add a gm Change-Id: I16da24eb739295ab72f487df02f19968151443f3 Reviewed-on: https://skia-review.googlesource.com/6287 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Add GM for filtering bugGravatar Robert Phillips2016-12-16
| | | | | | | | | | | | | | | | | | | | | For SkFilterQuality we get: High - repros for GPU Medium - repros for both! Low - repros for both! None - doesn't repro For AA quality (with filter quality fixed at High) we get: AA - repros for GPU BW - repros for GPU BUG=673261 Change-Id: Ibf0644352bfa9d9c0e2d166e396ce9e9799b6d9d Reviewed-on: https://skia-review.googlesource.com/6187 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Add a method in SkCanvas to set "hard" clip bounds.Gravatar Stan Iliev2016-12-12
| | | | | | | | | | | | | Add SkCanvas::setBoundRect, which sets the max clip rectangle, which can be replaced by clipRect, clipRRect and clipPath. BUG=skia: Change-Id: Ie39eb1715214971576e7a1dda760c6997a7e0208 Reviewed-on: https://skia-review.googlesource.com/5359 Commit-Queue: Stan Iliev <stani@google.com> Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com>
* Added CMYK support for ICC profiles.Gravatar raftias2016-12-01
| | | | | | | | | | | | | | Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec (the only file that supports CMYK) and SkColorSpaceXform_A2B to allow parsing and color xforming of ICC CMYK images. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I11e3d17180244281be3eb43fd608609925a7f71e Reviewed-on: https://skia-review.googlesource.com/5444 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Add animating blur image filter GM/slide/benchGravatar Robert Phillips2016-12-01
| | | | | | | | | | Probably still worth having but I haven't been able to reproduce the perf regression in crbug.com/668179 with it yet. Change-Id: If3b0f2998ff38a17a173895ed9cea6950a81f6b7 Reviewed-on: https://skia-review.googlesource.com/5382 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Added CMYK support for ICC profiles."Gravatar Mike Klein2016-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 51c3fcd376c5c9972d9476b5532f6164375a38d1. Reason for revert: ASAN, MSAN both take issue with parse_and_load_gamma() Original change's description: > Added CMYK support for ICC profiles. > > Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel > inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec > (the only file that supports CMYK) and SkColorSpaceXform_A2B to allow > parsing and color xforming of ICC CMYK images. > > BUG=skia: > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5197 > CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD > > > Change-Id: Id6619f63f04071f79cd2d84321857dfa269ad3aa > Reviewed-on: https://skia-review.googlesource.com/5197 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Matt Sarett <msarett@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> > Reviewed-by: Leon Scroggins <scroggo@google.com> > TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,scroggo@google.com,brianosman@google.com,raftias@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ib43fef00bc233c0b4fa47ed29040d69601def267 Reviewed-on: https://skia-review.googlesource.com/5423 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Added CMYK support for ICC profiles.Gravatar raftias2016-12-01
| | | | | | | | | | | | | | | | | | | | Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec (the only file that supports CMYK) and SkColorSpaceXform_A2B to allow parsing and color xforming of ICC CMYK images. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5197 CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: Id6619f63f04071f79cd2d84321857dfa269ad3aa Reviewed-on: https://skia-review.googlesource.com/5197 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Add SkOverdrawColorFilterGravatar Matt Sarett2016-11-22
| | | | | | | | | | | | | | | | | | | Uses the value in the src alpha channel to choose how to set the dst pixel. This is a part of a multi-part change to detect and display gpu overdraw on Android. CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Debug-NoGPU-Trybot BUG:32370375 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5113 Change-Id: I07040929d8a46bbadd499dccec75eebef0e11d11 Reviewed-on: https://skia-review.googlesource.com/5113 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* External SkImageGenerator APIGravatar Florin Malita2016-11-16
| | | | | | | | | | | | | | | Introduce an SkImageGenerator API to support the implementation of externally-managed image decode and scale caches. BUG=skia:5806 R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4720 Change-Id: Ibfe37af5471f78f28f88f9d5e80938882be1a344 Reviewed-on: https://skia-review.googlesource.com/4720 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Reed <reed@google.com>