aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
...
* 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>
* 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>
* 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>
* remove unused virtual onNotifyPixelsChangedGravatar Mike Reed2018-04-13
| | | | | | | | Bug: skia: Change-Id: I993701a1059d7d309991b06147bd0cc4a1a4fe93 Reviewed-on: https://skia-review.googlesource.com/121350 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Clone the xpos array in drawPosTextGravatar Yuqian Li2018-04-13
| | | | | | | | | | | | | It was a mistake to miss it... This fixes GM bigtext and almost every GM that uses drawPosText in the t8888 mode. Bug: skia: Change-Id: I32d6cc1fd1cde5c8b7caaad9eb3ba6a1706c22a6 Reviewed-on: https://skia-review.googlesource.com/121328 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Don't try to readback from the GPU for small blur sigmasGravatar Robert Phillips2018-04-13
| | | | | | | | | | | | | This should revert Ganesh's small sigma handling behavior to back before: https://skia-review.googlesource.com/c/skia/+/52400 (Reorganize blur filter to insert new implementation) BUG=skia:7787 BUG=skia:7751 BUG=832838 Change-Id: I0ce6b888be534afb60336abf561e97741fa34684 Reviewed-on: https://skia-review.googlesource.com/121331 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Herb Derby <herb@google.com>
* path is rect bug number nineGravatar Cary Clark2018-04-13
| | | | | | | | | | | | | | | This variation exploits a sequence which uses a zero length line to note that lines have been recorded, but no rectangle edge has been encountered. R=robertphillips@google.com Docs-Preview: https://skia.org/?cl=121282 Bug: 824145,skia:7792 Change-Id: I652e9482b2867c3d7da30d5f5df2aecbfd0d716d Reviewed-on: https://skia-review.googlesource.com/121282 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* Limit our IsBadForDAA for stroke width > 0 and <= 2Gravatar Yuqian Li2018-04-13
| | | | | | | | | | | Now, according to our gold, we probably are overkilling the DAA. That could be bad for performance. Bug: skia:6886 chromium:821353 Change-Id: I92bb4cbedb106f7fbd7e01e8107773d413e2da52 Reviewed-on: https://skia-review.googlesource.com/121260 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* can't abort looper loop, as saveCount won't be balancedGravatar Mike Reed2018-04-12
| | | | | | | | | | | | | | This is triggered by a recent change to clear the looper from the paint we return. That change made the call to nothingToDraw() return true, which in turn meant we didn't get the balancing call to restore in the looper's next() call. Follow-up to https://skia-review.googlesource.com/c/skia/+/121062 Bug: skia: Change-Id: I3ba7d487e4193103fb1d223d34c9c6eb486eca09 Reviewed-on: https://skia-review.googlesource.com/121220 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* son of path is rect bugGravatar Cary Clark2018-04-12
| | | | | | | | | | | | | | | | | | | This variation tricks SkPath::isRect by exploiting that the implementation resets the point pointer to process the close verb, and using the reset pointer to walk over a series of points that don't move. In addition to fixing this, rename variables to make the line creation more obvious, since left, right, and friends, are not the left and right. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: If8ebbc3eedd270652670d6e111a5bc02e61f0eec Reviewed-on: https://skia-review.googlesource.com/121122 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* check for non-finite values output by clipperGravatar Mike Reed2018-04-12
| | | | | | | | | | Bug: oss-fuzz:7452 Change-Id: Id1b9bd1ad9245f32d69b7ce97544955fcde5670f Reviewed-on: https://skia-review.googlesource.com/121102 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Reland "Add private fIsBadForDAA bit to SkPath"Gravatar Yuqian Li2018-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ed5e069dbb0b2ef49e22b9d17af3875e3682cd61. Reason for revert: add the guard flag Original change's description: > Revert "Add private fIsBadForDAA bit to SkPath" > > This reverts commit 54aefc74103a5c1810a7cc074746915c78ab3132. > > Reason for revert: Forget the guard flag. Pixel tests would fail. > > Original change's description: > > Add private fIsBadForDAA bit to SkPath > > > > Bug: chromium:821353 > > Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4 > > Reviewed-on: https://skia-review.googlesource.com/120201 > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > Reviewed-by: Mike Reed <reed@google.com> > > TBR=caryclark@google.com,liyuqian@google.com,reed@google.com > > Change-Id: I2fe7cfcc3a80a51415f72d656da95a894a3240a4 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: chromium:821353 > Reviewed-on: https://skia-review.googlesource.com/120505 > 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: Iebf7caf9ca74f305dec25b1b6512e93cb41cc8ec No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:821353 Reviewed-on: https://skia-review.googlesource.com/120620 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* add conservative bounds to raster tilingGravatar Mike Reed2018-04-12
| | | | | | | | | | | | | | This allows the tiler to optimally visit only the tiles that might intersect the drawing. Not all call-sites can cheaply compute their bounds, so for those we just pass nullptr, which tells the tiler to visit all of the tiles. Bug: 818693 Bug: 820245 Bug: 820470 Change-Id: I8bda668a99bcdb2a9a74a8278ec0cf1004acba6e Reviewed-on: https://skia-review.googlesource.com/119570 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* always clear the looper when we're unrolling it, to not confused devicesGravatar Mike Reed2018-04-12
| | | | | | | | | | Discovered by https://skia-review.googlesource.com/c/skia/+/119570 Bug: skia: Change-Id: I18c13052c5eb410a46ab16e2f1015861948678af Reviewed-on: https://skia-review.googlesource.com/121062 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* another rect is path fixGravatar Cary Clark2018-04-12
| | | | | | | | | | | | | | | | | | | | | | | | This addresses comment #17 of skbug.com/7792. The bug overshoots the end and exploits that the first point tracked by close isn't the first point in the rectangle. Fixing this slightly regresses the example in comment #14; before it was treated as a filled rect but now it is not; this conservative approach doesn't cause any other regressions. bug7792 in pathfill.cpp verifies that all paths in the bug draw correctly by comparing CPU and GPU. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I55bea023d2ad7456c8c3ebd9d1df95fe34e0a0d4 Reviewed-on: https://skia-review.googlesource.com/120996 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Implement Sk4f min/maxGravatar Chris Dalton2018-04-12
| | | | | | | | Bug: skia: Change-Id: Icf235dea81e9f125c1c8590ec87cb3591393036c Reviewed-on: https://skia-review.googlesource.com/120281 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Remove obsolete commentGravatar Yuqian Li2018-04-12
| | | | | | | | | Bug: skia: Change-Id: I4a290e643275c4e41e7f42496ffc14a9a1abca82 TBR: reed@google.com, mtklein@google.com, herb@google.com Reviewed-on: https://skia-review.googlesource.com/120560 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Reland "Fix handling of MaskFilter matrices"Gravatar Florin Malita2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c64ee20e135a336ed775ccb6dec8a87efd19ec02. Reason for revert: initial failures should be fixed in https://skia.googlesource.com/skia.git/+/8eaf64ae12696d4189d3cea9f023658494cf82b8 Original change's description: > Revert "Fix handling of MaskFilter matrices" > > This reverts commit 2097fd03ffea48bd904c48c93348b2350600870e. > > Reason for revert: This is breaking a lot of Windows bots (esp. on the shadermaskfilter_localmatrix) > > Original change's description: > > Fix handling of MaskFilter matrices > > > > 1) extend GrFPArgs to track pre/post local matrices, add helpers for > > creating pre/post wrapper args > > > > 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM > > sandwich logic. > > > > 3) update call sites to use the above > > > > 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to > > disambiguate vs. SkShader::makeWithLocalMatrix. > > > > BUG=skia:7744 > > > > Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 > > Reviewed-on: https://skia-review.googlesource.com/119330 > > Commit-Queue: Florin Malita <fmalita@chromium.org> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com > > Change-Id: I918dbb95bf00b3122e6699b84566ec82dbb5fc5c > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7744 > Reviewed-on: https://skia-review.googlesource.com/120340 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com Change-Id: If194862a928d1abe22ed8fa968436c725d19a8fc No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7744 Reviewed-on: https://skia-review.googlesource.com/120480 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* remove unused/dumb methods from SkRectGravatar Mike Reed2018-04-11
| | | | | | | | Bug: skia: Change-Id: I407dc94256a347c7a9343b75a5af43c4294891d3 Reviewed-on: https://skia-review.googlesource.com/119360 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Clean-up paints for drawImage (etc.) to enforce that we alwaysGravatar Mike Reed2018-04-11
| | | | | | | | | | ignore stroking and patheffects. Bug: skia:7804 Change-Id: I0b5f3a6734c5e4201a6e3a2bd5e398d213c8950e Reviewed-on: https://skia-review.googlesource.com/120504 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* more path is rect bugsGravatar Cary Clark2018-04-11
| | | | | | | | | | | | | More edge cases found; clean up the logic a bit to make more clear where the rectangle points start and stop. R=robertphillips@google.com,brianosman@google.com Bug: 824145,skia:7792 Change-Id: Ie24dfd1519f30875f44ffac68e20d777490b00b9 Reviewed-on: https://skia-review.googlesource.com/120422 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Add private fIsBadForDAA bit to SkPath"Gravatar Yuqian Li2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 54aefc74103a5c1810a7cc074746915c78ab3132. Reason for revert: Forget the guard flag. Pixel tests would fail. Original change's description: > Add private fIsBadForDAA bit to SkPath > > Bug: chromium:821353 > Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4 > Reviewed-on: https://skia-review.googlesource.com/120201 > Commit-Queue: Yuqian Li <liyuqian@google.com> > Reviewed-by: Mike Reed <reed@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com Change-Id: I2fe7cfcc3a80a51415f72d656da95a894a3240a4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:821353 Reviewed-on: https://skia-review.googlesource.com/120505 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Add private fIsBadForDAA bit to SkPathGravatar Yuqian Li2018-04-11
| | | | | | | | Bug: chromium:821353 Change-Id: Ic6585e76df692bb1853d0990d75f0e8d1dee22f4 Reviewed-on: https://skia-review.googlesource.com/120201 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Mike Reed <reed@google.com>
* no need to tile draws that don't involve pathsGravatar Mike Reed2018-04-11
| | | | | | | | Bug: skia: Change-Id: I2e974162982a81b1d2ac2505df809f15354ded07 Reviewed-on: https://skia-review.googlesource.com/120425 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Fix handling of MaskFilter matrices"Gravatar Robert Phillips2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2097fd03ffea48bd904c48c93348b2350600870e. Reason for revert: This is breaking a lot of Windows bots (esp. on the shadermaskfilter_localmatrix) Original change's description: > Fix handling of MaskFilter matrices > > 1) extend GrFPArgs to track pre/post local matrices, add helpers for > creating pre/post wrapper args > > 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM > sandwich logic. > > 3) update call sites to use the above > > 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to > disambiguate vs. SkShader::makeWithLocalMatrix. > > BUG=skia:7744 > > Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 > Reviewed-on: https://skia-review.googlesource.com/119330 > Commit-Queue: Florin Malita <fmalita@chromium.org> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com Change-Id: I918dbb95bf00b3122e6699b84566ec82dbb5fc5c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7744 Reviewed-on: https://skia-review.googlesource.com/120340 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Fix handling of MaskFilter matricesGravatar Florin Malita2018-04-11
| | | | | | | | | | | | | | | | | | | | 1) extend GrFPArgs to track pre/post local matrices, add helpers for creating pre/post wrapper args 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM sandwich logic. 3) update call sites to use the above 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to disambiguate vs. SkShader::makeWithLocalMatrix. BUG=skia:7744 Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 Reviewed-on: https://skia-review.googlesource.com/119330 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Merge drawDevice and respect ctm for the paintGravatar Yuqian Li2018-04-10
| | | | | | | | | | See GM savelayer_maskfilter Bug: skia: Change-Id: I70ce73f19067fc8c097a55e99e305e14e8a320ac Reviewed-on: https://skia-review.googlesource.com/120182 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Do not use CTM for drawDevice or drawSpriteGravatar Yuqian Li2018-04-10
| | | | | | | | | | | Otherwise, imagefilters_xfermodes GM would be rendered wrong in t8888 mode. Bug: skia: Change-Id: I1e06d42f2cf5f52e345ed72f321d811076a647ef Reviewed-on: https://skia-review.googlesource.com/118743 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* one more path is rect bugGravatar Cary Clark2018-04-10
| | | | | | | | | | | | | | | | Add a check to see that the close path generated line is horizontal or vertical when determining that path is a rect. Also change several tests to defer their initialization to reduce debugging interference. R=brianosman@google.com,robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I4a081ee4ffd3558b499a7a1aede2d6232059715e Reviewed-on: https://skia-review.googlesource.com/120081 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* fix path to rect when missing close verbGravatar Cary Clark2018-04-10
| | | | | | | | | | | R=brianosman@google.com,robertphillips@google.com TBR=reed@google.com Bug: 824145,skia:7792 Change-Id: I24f121cfa7d437c95b94bd917d3c4888a10c519e Reviewed-on: https://skia-review.googlesource.com/119569 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove SkDEBUGFAIL for non-invertible XYZ matrixGravatar Brian Osman2018-04-10
| | | | | | | | | | We have a reasonable fallback for this (extremely unlikely) scenario. Bug: chromium:819192 Change-Id: I7a9a28c067fb029fd1000e1eeb488ede688fc3b2 Reviewed-on: https://skia-review.googlesource.com/119945 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* use commonPaint for all raster pipelineGravatar Mike Klein2018-04-09
| | | | | | | | | | Looks like a typo? Change-Id: Ie5a1ab546d4d658a864e3362319883f2bf46c111 Reviewed-on: https://skia-review.googlesource.com/119942 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Implement Sk2f::Store2Gravatar Chris Dalton2018-04-09
| | | | | | | | Bug: skia: Change-Id: Ifea5957458e5547ee428809d9599286e70f3f8f9 Reviewed-on: https://skia-review.googlesource.com/119860 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "Remove all notion of transport from the API."Gravatar Herb Derby2018-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4961a938586e3c46cf80f15ecb70a011324bfe59. Reason for revert: Breaks MSVC Original change's description: > Remove all notion of transport from the API. > > There is only a need to pass buffers in and out of the system. > All transport is external to the system. > > Change-Id: I26dfc8e0b4cce9969395c96d5230078e7dca3f3d > Reviewed-on: https://skia-review.googlesource.com/119062 > Commit-Queue: Herb Derby <herb@google.com> > Reviewed-by: Khushal Sagar <khushalsagar@google.com> TBR=herb@google.com,reed@google.com,khushalsagar@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I62cbac1be4483702ba7464822d93fb9f818f88b7 Reviewed-on: https://skia-review.googlesource.com/119580 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Better layer tracking fidelityGravatar Herb Derby2018-04-06
| | | | | | | | | | | | | | Track layer processing more faithfully. This temporary until we can remove the old system for dissabling the unneeded system for falling back to A8 format. BUG=skia:7786 Change-Id: Iee9154f4209c4020f16b04edd03e42c6b7d0ec98 Reviewed-on: https://skia-review.googlesource.com/119104 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Remove all notion of transport from the API.Gravatar Herb Derby2018-04-06
| | | | | | | | | | There is only a need to pass buffers in and out of the system. All transport is external to the system. Change-Id: I26dfc8e0b4cce9969395c96d5230078e7dca3f3d Reviewed-on: https://skia-review.googlesource.com/119062 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Khushal Sagar <khushalsagar@google.com>
* SkRegion: Use less memory for SkRegion::OperGravatar Hal Canary2018-04-06
| | | | | | | | | | Also add fuzzer. BUG=chromium:797940 Change-Id: Id6d483120f3325c3b1085a90277d56a4f7a0e989 Reviewed-on: https://skia-review.googlesource.com/118623 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Cary Clark <caryclark@skia.org>
* Region Op FuzzerGravatar Hal Canary2018-04-06
| | | | | | | | | | | Also: assert Region IRects don't contain Sentinel value. Also: Region fuzzer can't produce Sentinel value. Change-Id: Ia33c7eeb9ef2c46b3da4a025d85de8a0406c3c0c Reviewed-on: https://skia-review.googlesource.com/119011 Reviewed-by: Kevin Lubick <kjlubick@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SK_SUPPORT_LEGACY_BLURMASKFILTERGravatar Brian Osman2018-04-06
| | | | | | | Change-Id: I1d99d9bb83d8a612d1c1fd298c1f7ed706a2277b Reviewed-on: https://skia-review.googlesource.com/118990 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* remove SK_IGNORE_TO_STRINGGravatar Cary Clark2018-04-05
| | | | | | | | | | | | | | | | | | | SK_IGNORE_TO_STRING is not defined anywhere. The same effect can be had by using a modern linker. Removing it simplifies bookmaker and makes our includes easier to understand. R=robertphillips@google.com TBR=reed@google.com Bug: skia:6898 Change-Id: Ib716f5ef1b42a7fbda0df43ece212d1b7c40289f Reviewed-on: https://skia-review.googlesource.com/118963 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>