aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Always call endFlush on opLists that might survive a flushGravatar Chris Dalton2018-04-18
| | | | | | | | | | | | We were missing a few that got unreffed due to failed proxy instantiation. Bug: skia:7655 Bug: skia:7111 Change-Id: I95847a16890f2993a1433d4d9fdaa8a4a6c2f0b6 Reviewed-on: https://skia-review.googlesource.com/122121 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Convert A8 D32 mask blitters to Sk4pxGravatar Florin Malita2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | Improves the newly added bench by ~25% (hsw): -- before -- micros bench 2298.34 shadermaskfilter_picture_80 8888 2339.60 shadermaskfilter_picture_ff 8888 2287.11 shadermaskfilter_bitmap_80 8888 2223.14 shadermaskfilter_bitmap_ff 8888 -- after -- 1693.36 shadermaskfilter_picture_80 8888 1637.45 shadermaskfilter_picture_ff 8888 1691.65 shadermaskfilter_bitmap_80 8888 1637.70 shadermaskfilter_bitmap_ff 8888 But: skia:7810 Change-Id: I7274b10f517551ee2c0646842f72e0372d55e509 Reviewed-on: https://skia-review.googlesource.com/121642 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com>
* Reland "Fix the fat rect bug in the threaded backend"Gravatar Yuqian Li2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1b637615144604a2d50cf983ac9aa5aab71cf73b. Reason for revert: add guard flag Original change's description: > Revert "Fix the fat rect bug in the threaded backend" > > This reverts commit c41569a29fde10c6fec43cc4593334e9a4b34b76. > > Reason for revert: maybe break the Chrome layout tests > > Original change's description: > > Fix the fat rect bug in the threaded backend > > > > Bug: skia:7813 > > Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 > > Reviewed-on: https://skia-review.googlesource.com/121641 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > TBR=caryclark@google.com,liyuqian@google.com,reed@google.com > > Change-Id: If35617a9774b3367561981e39a2fa89a972684b9 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7813 > Reviewed-on: https://skia-review.googlesource.com/121820 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia:7813 Change-Id: I8b17be4251b5efc20142295cca787474f32e3a86 Reviewed-on: https://skia-review.googlesource.com/122100 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Support all destination profiles in SkColorSpaceXform_skcmsGravatar Brian Osman2018-04-18
| | | | | | | | | | | | | EnsureUsable forces the profile to something that we can target, so there may be some quality tradeoff (or complete fallback to sRGB for B2A profiles), but we will no longer fail to transform. Bug: skia: Change-Id: I6c5ffb8f092cd0aeffadc361c3ae95825916fa4f Reviewed-on: https://skia-review.googlesource.com/122080 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* With ES3, enable both ES2 and ES3 external image extensionsGravatar Brian Osman2018-04-18
| | | | | | | | Bug: skia:7713 Change-Id: If06c0368e91c33bbac9e7715227d619c4834684f Reviewed-on: https://skia-review.googlesource.com/121884 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* fix path is rect flaw exposed by goldGravatar Cary Clark2018-04-18
| | | | | | | | | | | | | | | | | | | One of the path is rect bug fixes changed the behavior of zero-length strokes which showed up as a change in Gold. The bug is if a rect is defined by a series of colinear movetos, the bounds did not work out if the rect started and stopped in the middle of a side. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I226545efeda03dedd928eebc120d2508b428fef0 Reviewed-on: https://skia-review.googlesource.com/122002 Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* Simplify strike cache NodeGravatar Herb Derby2018-04-18
| | | | | | | | Change-Id: Ia7d65d84ad0ebe2a62fbd98629c7c37273a6167a Reviewed-on: https://skia-review.googlesource.com/121980 Auto-Submit: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Remove text flag filtering from SkBitmapDevice.Gravatar Ben Wagner2018-04-18
| | | | | | | | | | The SkScaler context can do subpixel antialiasing for fake bold, path effects, and stroking. So don't disable LCD due to these reasons. Change-Id: I6688e96e7e3d2b3a1d610b3e46d87d33b9f08059 Reviewed-on: https://skia-review.googlesource.com/121881 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Move node information to SkStrikeCacheGravatar Herb Derby2018-04-17
| | | | | | | | | | | | | | Move all the information for handling nodes into SkStrikeCache. Having all the cache organization in SkStrikeCache will localize all the Chrome pinning machinery to this class. BUG=skia:7515 Change-Id: I5bc5488ddfe1806d62927d13148af36dac08eae9 Reviewed-on: https://skia-review.googlesource.com/121888 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* detect if we made an infinite rectGravatar Mike Reed2018-04-17
| | | | | | | | Bug: oss-fuzz:7747 Change-Id: I43897e90bb3f0929afa72c40336f771f3a878ecb Reviewed-on: https://skia-review.googlesource.com/121887 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* No long require copy as draw for vulkan wrapped resources.Gravatar Greg Daniel2018-04-17
| | | | | | | | | | | | | | With the recent changes to GrBackendTexture and the atomic ref counted GrVkImageLayout, this should not longer be an issue for cross context images. There still is the requirement that they need to manually synchronize the submission of work involving the image on two threads, but that is a requirement regardless of layout issues. Bug: skia: Change-Id: Ia86e51fda8606838dabd1bc36cf14c7679b46d49 Reviewed-on: https://skia-review.googlesource.com/121349 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* path is rect diag test is requiredGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | Removed a test that appeared to go uncalled; Ivan to the rescue, with a test case proving that it is required. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I7df9688072bd36b7597673148e3fe5dbbf82f5a7 Reviewed-on: https://skia-review.googlesource.com/121883 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* SkStrikeDifferences::operator() -> add()Gravatar Mike Klein2018-04-17
| | | | | | | | | | Am I crazy or is this use of operator() rather unclear? Change-Id: If388047f8a02be90f30e54452c75ebfec8b57a37 Reviewed-on: https://skia-review.googlesource.com/121880 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com>
* avoid overflow by using tmp 64bitsGravatar Mike Reed2018-04-17
| | | | | | | | | Bug: oss-fuzz:7746 Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SKNX_NO_SIMD Change-Id: Iba3ea50331fa06ca201ac316e33d4f79ab8ef459 Reviewed-on: https://skia-review.googlesource.com/121802 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Move external texture extension logic into SkSLGravatar Brian Osman2018-04-17
| | | | | | | | | | Automatically enable the extension if any external samplers are used. Bug: skia:7713 Change-Id: I1de2faddd7c8eda864873941b90d7a4c4606497a Reviewed-on: https://skia-review.googlesource.com/121797 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* path is rect bug number twelveGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | Exposes that final close along a diagonal need not include a close verb if the subsequent verb is move; so we have to check for a diagonal then. The later check for diagonal included a comment that it may not be needed which does appear to be the case. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I17a9414e8b3e69b82c2eda28195696eae4e3d513 Reviewed-on: https://skia-review.googlesource.com/121801 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Fix the fat rect bug in the threaded backend"Gravatar Yuqian Li2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c41569a29fde10c6fec43cc4593334e9a4b34b76. Reason for revert: maybe break the Chrome layout tests Original change's description: > Fix the fat rect bug in the threaded backend > > Bug: skia:7813 > Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 > Reviewed-on: https://skia-review.googlesource.com/121641 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com Change-Id: If35617a9774b3367561981e39a2fa89a972684b9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7813 Reviewed-on: https://skia-review.googlesource.com/121820 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* only recheck fNeedsTiling if we computed fSrcBoundsGravatar Mike Reed2018-04-17
| | | | | | | | Bug: oss-fuzz:7363 Change-Id: I64cc83d31e8aaf8221e78c3b5301ffcce45449c1 Reviewed-on: https://skia-review.googlesource.com/121795 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add SkColorSpace::Make, taking an skcms_ICCProfileGravatar Brian Osman2018-04-17
| | | | | | | | | Bug: skia:7419 Change-Id: I912d4ae842d9cab09395fac3136e2e900611c8e5 Reviewed-on: https://skia-review.googlesource.com/121358 Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Reland "low-hanging bilerp_clamp_8888 wins"Gravatar Mike Klein2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of f946b41643e049f3b81f40316373ad22e1518818 Patches since the original make sure the sample area sums to 1. Original change's description: > low-hanging bilerp_clamp_8888 wins > > - support sampling bgra too > - lowp impl > > Bug: skia:7810 > > Change-Id: I21db805483f612024802f2b508c140c42a029c54 > Reviewed-on: https://skia-review.googlesource.com/121582 > Commit-Queue: Mike Klein <mtklein@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> Bug: skia:7810 Change-Id: If20d31b4f8c4163bdb567b4f15a62035265b1b30 Reviewed-on: https://skia-review.googlesource.com/121464 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Reorganize strike cache and glyph cache codeGravatar Herbert Derby2018-04-17
| | | | | | | | | BUG=skia:7515 Change-Id: I05867890e88de7a7d23b60d9eec989d93d39d333 Reviewed-on: https://skia-review.googlesource.com/121783 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Fix the fat rect bug in the threaded backendGravatar Yuqian Li2018-04-17
| | | | | | | | Bug: skia:7813 Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 Reviewed-on: https://skia-review.googlesource.com/121641 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* yet another path is rect exploitGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | This one accumulates the othershoot when all four sides have the same direction, and the final side when closed should cause the overshoot to be ignored. Docs-Preview: https://skia.org/?cl=121787 Bug: 824145,skia:7792 Change-Id: I71ea0fcdd0f03a4fcac224b57220c65c321112f6 Reviewed-on: https://skia-review.googlesource.com/121787 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* a more involved path is rect bugGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | This is bug number ten in the series, and is the most interesting. It exploits that the code tracks corners 0, 2, and 3 but not corner 1. Changing the code to track all corners is the biggest so far, and while it (hopefully) simplifies things, the presence of new code may signify more bugs to come. R=robertphillips@google.com Bug: 824145,skia::7792 Change-Id: Ia18e4d80fbed06ae6d9c89dcb4c462c5610213cc Reviewed-on: https://skia-review.googlesource.com/121487 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* Update our config fallback switch in GrContext.Gravatar Greg Daniel2018-04-17
| | | | | | | | | | | | | First we didn't have any of our new private configs in the fallback switch statement. Also this is a workaround for the case where we want to make a copy of a Gray8 image but we claim its not renderable so we fail the copy. Bug: skia: Change-Id: I68d29c91f07bb87eb1eec650594cc035ed823e3f Reviewed-on: https://skia-review.googlesource.com/121355 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "low-hanging bilerp_clamp_8888 wins"Gravatar Mike Klein2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f946b41643e049f3b81f40316373ad22e1518818. Reason for revert: nervous diffs Original change's description: > low-hanging bilerp_clamp_8888 wins > > - support sampling bgra too > - lowp impl > > Bug: skia:7810 > > Change-Id: I21db805483f612024802f2b508c140c42a029c54 > Reviewed-on: https://skia-review.googlesource.com/121582 > Commit-Queue: Mike Klein <mtklein@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org Change-Id: Id91d583151091a082a2d3f301d85f3acb12f4b19 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7810 Reviewed-on: https://skia-review.googlesource.com/121589 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* low-hanging bilerp_clamp_8888 winsGravatar Mike Klein2018-04-16
| | | | | | | | | | | | - support sampling bgra too - lowp impl Bug: skia:7810 Change-Id: I21db805483f612024802f2b508c140c42a029c54 Reviewed-on: https://skia-review.googlesource.com/121582 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Don't support GrCubicEffect if float != fp32Gravatar Chris Dalton2018-04-16
| | | | | | | | | | Otherwise the cubic math is too unstable. Bug: skia: Change-Id: I2c8d8d9abcae517d42dd3eddb5bf455c7c7487dd Reviewed-on: https://skia-review.googlesource.com/121709 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "ccpr: Implement conics"Gravatar Chris Dalton2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 98b241573e6083c4c7f0ce9e30cc214c4da1a8ba. Reason for revert: TSAN not happy Original change's description: > ccpr: Implement conics > > Bug: skia: > Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 > Reviewed-on: https://skia-review.googlesource.com/120040 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com Change-Id: Ic29bf660f042c20b7e4492b03400412e378dbb8a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/121717 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Implement conicsGravatar Chris Dalton2018-04-16
| | | | | | | | Bug: skia: Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 Reviewed-on: https://skia-review.googlesource.com/120040 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Rename SkGlyphCacheGlobals to SkStrikeCacheGravatar Herb Derby2018-04-16
| | | | | | | Change-Id: I7773c1fff309bf9416f16fe9908191eeba94eb99 Reviewed-on: https://skia-review.googlesource.com/121356 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Add glFlush workaround for instanced draws on SkylakeGravatar Chris Dalton2018-04-16
| | | | | | | | Bug: skia: Change-Id: I1292cc423b4d3d7fc2a9035d3ad251ad7e00f0f6 Reviewed-on: https://skia-review.googlesource.com/121700 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove SkPaint::kGenA8FromLCD_Flag.Gravatar Ben Wagner2018-04-16
| | | | | | | | | | | | | The original intent of this flag is now handled by SkPixelGeomety on SkSurfaceProps on SkSurface. BUG=skia:7515 Change-Id: I54bb1be072b5b5b2164a59196bfeacac254823c7 Reviewed-on: https://skia-review.googlesource.com/121346 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Fix many return-std-move-in-c++11 warningsGravatar Kevin Lubick2018-04-16
| | | | | | | | | Change-Id: Ib0042cf412fe3c5fa600b7ae644d16740457535e Reviewed-on: https://skia-review.googlesource.com/121354 Commit-Queue: Kevin Lubick <kjlubick@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Remove unused BW mask blittersGravatar Florin Malita2018-04-16
| | | | | | | Change-Id: I59593e84945633f505d034bea01f6d0b51c5b837 Reviewed-on: https://skia-review.googlesource.com/121663 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* optimize fast/simple case in raster tilingGravatar Mike Reed2018-04-16
| | | | | | | | | | | | | | | 1. We want to avoid as much overhead as possible in the tiler setup, so do a quick check before handling bounds 2. Compare against current clipbounds instead of devicesize, which may eliminate looping sometimes Follow-on to https://skia-review.googlesource.com/c/skia/+/119570 Bug: 818693 Bug: 820245 Bug: 820470 Change-Id: If34721c7e467d1ab9e879f25e7b86af6732ca384 Reviewed-on: https://skia-review.googlesource.com/121329 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Simplify the operation on atomic fIsFinishingGravatar Yuqian Li2018-04-16
| | | | | | | | Bug: skia: Change-Id: I7ffe9bc11d211b0c1a4873b28ad4d0f574a6148b Reviewed-on: https://skia-review.googlesource.com/121326 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Let SkCoverageDeltaList store width and use it during blittingGravatar Yuqian Li2018-04-16
| | | | | | | | | | | | Otherwise, out/Debug/viewer -m complexclip_bw_invert may crash using the threaded backend because the clip in the initFn may be wider than the clip in the drawFn. Bug: skia: Change-Id: I3b3ddc9a912fcc155bd30a6bc1f87e24739d1ca6 Reviewed-on: https://skia-review.googlesource.com/121327 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* SkBlitter is not thread safe; make one for each thread.Gravatar Yuqian Li2018-04-16
| | | | | | | | | | | | | | | Otherwise, GM fancy_gradients would be drawn incorrectly and TSAN will issue alerts as SkARGB32_Shader_Blitter has its own memory that may be written during blitting. As we make one blitter for each thread, we also don't need to send in a thread-alloc for blitCoverageDeltas Bug: skia: Change-Id: Ie4ee0886b88c797ab57c65674b0b7527501b164f Reviewed-on: https://skia-review.googlesource.com/120641 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Snap the bitmap as it may be changed laterGravatar Yuqian Li2018-04-16
| | | | | | | | Bug: skia: Change-Id: If06510f6fd3b64cce3440a543973c9c83913da10 Reviewed-on: https://skia-review.googlesource.com/120141 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* SkPDF: use std::aligned_storage for typed unionGravatar Hal Canary2018-04-16
| | | | | | | Change-Id: I38e063cf7557aab1cffbaa126aea4dc7142d914c Reviewed-on: https://skia-review.googlesource.com/121583 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Don't allow ganesh to allocate mip maps for wrapped textures.Gravatar Greg Daniel2018-04-16
| | | | | | | | | | | | | | We will not allocate new mips on a wrapped texture but we will use mips if the wrapped texture already has one. If we need mips for a draw this will trigger a copy to occur. Also some cleanup up of our InternalSurfaceFlags in general. Bug: skia:7806 Change-Id: I7aa666478cc91bba6e0644b323825fcc9b49793a Reviewed-on: https://skia-review.googlesource.com/121348 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Draw stroked circles with round caps analytically.Gravatar Brian Salomon2018-04-16
| | | | | | | | | | These draw as the butt cap version where the stroked circle is clipped by half planes. But then we add in coverage from circles at the caps. Bug: skia:7793 Change-Id: I7c27a2a5f1f9c1645cc9042e68e787dd81ea28b8 Reviewed-on: https://skia-review.googlesource.com/120140 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Reland "Cumulate deltas even if they're out of the clip"Gravatar Yuqian Li2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ffbe93296838c3a93a87261cae7f7229b56f1f8a. Reason for revert: guard flag is now in Original change's description: > Revert "Cumulate deltas even if they're out of the clip" > > This reverts commit 520e578b9987ea99b8ee62b485e941b3d5d96e0f. > > Reason for revert: guard flag isn't in yet > > Original change's description: > > Cumulate deltas even if they're out of the clip > > > > Otherwise, GM complexclip_aa_inverse will be drawn incorrectly > > in t8888 mode. > > > > Bug: skia: > > Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba > > Reviewed-on: https://skia-review.googlesource.com/121261 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > TBR=caryclark@google.com,liyuqian@google.com,reed@google.com > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia: > Change-Id: If7fa2a8bd1ff3e9b55c3900cbba82a3e2562f502 > Reviewed-on: https://skia-review.googlesource.com/121424 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com Change-Id: I4ec1fec53782a106407d1398c43cab748fd5f259 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/121600 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Revert "Cumulate deltas even if they're out of the clip"Gravatar Yuqian Li2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 520e578b9987ea99b8ee62b485e941b3d5d96e0f. Reason for revert: guard flag isn't in yet Original change's description: > Cumulate deltas even if they're out of the clip > > Otherwise, GM complexclip_aa_inverse will be drawn incorrectly > in t8888 mode. > > Bug: skia: > Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba > Reviewed-on: https://skia-review.googlesource.com/121261 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: If7fa2a8bd1ff3e9b55c3900cbba82a3e2562f502 Reviewed-on: https://skia-review.googlesource.com/121424 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* ccpr: Normalize the cubic inflection function instead of its rootsGravatar Chris Dalton2018-04-16
| | | | | | | | | | | | When solving for KLM, switches back to normalizing the cubic's inflection function rather than both individual roots. Also performs some general code clean up for SkClassifyCubic. Bug: skia: Change-Id: Id513e7e02c50a8709f3eccf92fad9e5134d73d83 Reviewed-on: https://skia-review.googlesource.com/121201 Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove all notion of transport from the API - V2.Gravatar Herb Derby2018-04-16
| | | | | | | | | | | | There is only a need to pass buffers in and out of the system. All transport is external to the system. BUG=skia:7515 Change-Id: Ie50cbc3fa1b9776e56dab8e49e91ce640e0b3954 Reviewed-on: https://skia-review.googlesource.com/119893 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Revert "Delete getRenderTargetHandle call on SkSurface."Gravatar Greg Daniel2018-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c828109ebd1519134b1c3fa168519ac07a31fe05. Reason for revert: Need to fix flutter Original change's description: > Delete getRenderTargetHandle call on SkSurface. > > All clients and internal code should be switched (once changes land soon) > to the new getBackendRenderTarget call instead. > > Bug: skia: > Change-Id: I6f490b6d26a72f37f97216be04e541483206510d > Reviewed-on: https://skia-review.googlesource.com/121103 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I571298f839757fcdedcd8117519e740ac7ef1344 Reviewed-on: https://skia-review.googlesource.com/121480 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Cumulate deltas even if they're out of the clipGravatar Yuqian Li2018-04-14
| | | | | | | | | | | Otherwise, GM complexclip_aa_inverse will be drawn incorrectly in t8888 mode. Bug: skia: Change-Id: I2fe9dd94f3219e3883f713ca95ea3c3d8a49c7ba Reviewed-on: https://skia-review.googlesource.com/121261 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* fix sksl standalone build errorGravatar Ethan Nicholas2018-04-13
| | | | | | | | Bug: skia: Change-Id: I7de6d46a5774b5820bb6468a418be7c56da8510b Reviewed-on: https://skia-review.googlesource.com/121421 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>