aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkDraw.cpp
Commit message (Collapse)AuthorAge
* Avoid drawing BW clipped color glyphs many times.Gravatar Ben Wagner2018-05-04
| | | | | | | | | | | | | | | | | Prior to this change if a color glyph is drawn through the raster device with an aliased clip the glyph is drawn once for each rectangular region in the aliased clip. In addition, even when the glyph was not a color glyph in this situation, the mask was checked for being a color glyph once for each rectangular region of the aliased clip. This change hoists the test for the color format out of the loop to ensure that the mask format is checked once and the mask is drawn once. This issue was discovered by rotating the coloremoji_blendmodes gm. Change-Id: I18b6b546356780e0b00948fff7b65783219f5c92 Reviewed-on: https://skia-review.googlesource.com/125868 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Reland "Remove devKerning"Gravatar Herb Derby2018-05-02
| | | | | | | | | | | | | | | | | | | | | | This is a reland of c86c5c0144b85d0bc8ec791f9609ee2d4e7d835a Original change's description: > Remove devKerning > > Dev kerning is not supported by any scalers. This is > mostly removed. The remaining fields fRsbDelta and > fLsbDelta are kept to keep Android compiling. > > Change-Id: If1a9ee9bb599d4e1bdf4b3751ac0c65246350809 > Reviewed-on: https://skia-review.googlesource.com/124921 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Herb Derby <herb@google.com> Change-Id: Ibf5fac5f1442c7e62392d5146ad460da27b10d5c Reviewed-on: https://skia-review.googlesource.com/125300 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Revert "Remove devKerning"Gravatar Mike Klein2018-05-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c86c5c0144b85d0bc8ec791f9609ee2d4e7d835a. Reason for revert: 4 of 5 Original change's description: > Remove devKerning > > Dev kerning is not supported by any scalers. This is > mostly removed. The remaining fields fRsbDelta and > fLsbDelta are kept to keep Android compiling. > > Change-Id: If1a9ee9bb599d4e1bdf4b3751ac0c65246350809 > Reviewed-on: https://skia-review.googlesource.com/124921 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Herb Derby <herb@google.com> TBR=bungeman@google.com,herb@google.com,reed@google.com Change-Id: If865f702868192a1b72cd811baa996dd1282bbce No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/125263 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Remove devKerningGravatar Herb Derby2018-05-01
| | | | | | | | | | | Dev kerning is not supported by any scalers. This is mostly removed. The remaining fields fRsbDelta and fLsbDelta are kept to keep Android compiling. Change-Id: If1a9ee9bb599d4e1bdf4b3751ac0c65246350809 Reviewed-on: https://skia-review.googlesource.com/124921 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Reland "Reland "Reland "Exercise the threaded backend in test bots"""Gravatar Yuqian Li2018-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 47f2b7b089c688503b12caff9c8a84fb185d01c5. Reason for revert: try to fix the issue by reducing the set of bots Original change's description: > Revert "Reland "Reland "Exercise the threaded backend in test bots""" > > This reverts commit 7ddad479e464a3d481d106415c9c1b8cc8496848. > > Reason for revert: bots failure > > Original change's description: > > Reland "Reland "Exercise the threaded backend in test bots"" > > > > This reverts commit 0f5972604ce4439fd33118d6be1e4f24fe6c267f. > > > > Reason for revert: ASAN/MSAN should have been fixed > > > > Original change's description: > > > Revert "Reland "Exercise the threaded backend in test bots"" > > > > > > This reverts commit 654ca8a340700ca8089abb7828adc2c229c6241e. > > > > > > Reason for revert: ASAN,MSAN failures > > > > > > Original change's description: > > > > Reland "Exercise the threaded backend in test bots" > > > > > > > > This reverts commit ea51393ba918f75c1b40d521081789eeb3b42d6f. > > > > > > > > Reason for revert: try again after many fixes of the threaded backend > > > > > > > > Original change's description: > > > > > Revert "Exercise the threaded backend in test bots" > > > > > > > > > > This reverts commit a39991ebd70f4aaf1290dd516467d729811e45ee. > > > > > > > > > > Reason for revert: Random bots timeout > > > > > > > > > > Original change's description: > > > > > > Exercise the threaded backend in test bots > > > > > > > > > > > > We can't draw everything correctly now, but it's at least not crashing. > > > > > > > > > > > > The draw_to_canvas is modified by adding flush because now the raster > > > > > > canvas also needs flush like GPU canvases because of the threaded > > > > > > backend. (Previously, AndroidCodecSrc vetoed GPU (non-raster) sink > > > > > > and that's why it was not crashing.) > > > > > > > > > > > > > > > > > > Bug: skia: > > > > > > Change-Id: I222d706c33e15326e1b97d6bef6c46b8c35cebfd > > > > > > Reviewed-on: https://skia-review.googlesource.com/118886 > > > > > > Reviewed-by: Kevin Lubick <kjlubick@google.com> > > > > > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > > > > > > > > > TBR=kjlubick@google.com,stephana@google.com,liyuqian@google.com > > > > > > > > > > Change-Id: Ib1089d937b6e25cc39d90ad4de35b3a4c406f6b1 > > > > > No-Presubmit: true > > > > > No-Tree-Checks: true > > > > > No-Try: true > > > > > Bug: skia: > > > > > Reviewed-on: https://skia-review.googlesource.com/119100 > > > > > Reviewed-by: Yuqian Li <liyuqian@google.com> > > > > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > > > > > > > TBR=kjlubick@google.com,stephana@google.com,liyuqian@google.com > > > > > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > > > > > Bug: skia:7838 > > > > Change-Id: I1405212204bf694b2f31dfc38154759e1d3e363f > > > > Reviewed-on: https://skia-review.googlesource.com/121680 > > > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > > > Reviewed-by: Yuqian Li <liyuqian@google.com> > > > > > > TBR=kjlubick@google.com,stephana@google.com,liyuqian@google.com > > > > > > Change-Id: Id1b273e22a1d0cbc15a2155252909f576b401fa4 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia:7838 > > > Reviewed-on: https://skia-review.googlesource.com/123360 > > > Reviewed-by: Mike Klein <mtklein@google.com> > > > Commit-Queue: Mike Klein <mtklein@google.com> > > > > TBR=mtklein@google.com,kjlubick@google.com,stephana@google.com,liyuqian@google.com > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > Bug: skia:7838 > > Change-Id: I205d579f2959ea726b447993314c1326b731730e > > Reviewed-on: https://skia-review.googlesource.com/123660 > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > Reviewed-by: Yuqian Li <liyuqian@google.com> > > TBR=mtklein@google.com,kjlubick@google.com,stephana@google.com,liyuqian@google.com > > Change-Id: I1d3986cc2af12836dd7acbcbba713081a88301a6 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7838 > Reviewed-on: https://skia-review.googlesource.com/124200 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=mtklein@google.com,kjlubick@google.com,stephana@google.com,liyuqian@google.com Change-Id: I2d4d0c172849a86b37c60b32938a7a2b828258fa No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7838 Reviewed-on: https://skia-review.googlesource.com/124201 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Experiment to track coverage in a layerGravatar Mike Reed2018-04-25
| | | | | | | | Bug: skia: Change-Id: I5ed334f63e64991944394dc8103092a2c6280546 Reviewed-on: https://skia-review.googlesource.com/122000 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Move strike cache Find*() to strike cacheGravatar Herb Derby2018-04-18
| | | | | | | | | BUG=skia:7515 Change-Id: Ic1580d4752d51a62df5427a28f843bc7b3181797 Reviewed-on: https://skia-review.googlesource.com/122020 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* 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>
* 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>
* 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>
* 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>
* detect non-finite ptsGravatar Mike Reed2018-03-15
| | | | | | | | Bug: oss-fuzz:6638 Change-Id: I72dab6783099facbe8d658ec1bc4b175a383e174 Reviewed-on: https://skia-review.googlesource.com/114565 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* SkAutoGlyphCache change some sites to Find*.Gravatar Herb Derby2018-03-15
| | | | | | | Change-Id: Iec3a0c60106017394fcdd981052713b6e42fa595 Reviewed-on: https://skia-review.googlesource.com/114506 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Revert "Revert "add tiler for SkDraw""Gravatar Mike Reed2018-03-07
| | | | | | | | | | | | This reverts commit 461ef7af88cc966007c464130a971ec86c803f1d. Prev CL to SkScan_Hairline.cpp fixed the bug that caused the earlier revert. Bug: skia: Change-Id: Ifd9a364c7546175be292f726e19465b72196b45e Reviewed-on: https://skia-review.googlesource.com/112723 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "add tiler for SkDraw"Gravatar Florin Malita2018-03-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit be1b3971806e3d80aa9673a36e2b35d0145198ac. Reason for revert: Unexpected layout test diffs: https://test-results.appspot.com/data/layout_results/linux_trusty_blink_rel/24989/layout-test-results/results.html Original change's description: > add tiler for SkDraw > > Bug: skia:2122 > Change-Id: I276de2064939151eef5fa14c53188e8b5728b7c9 > Reviewed-on: https://skia-review.googlesource.com/110840 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Yuqian Li <liyuqian@google.com> TBR=liyuqian@google.com,reed@google.com Change-Id: Ia598c0d7c4ac6cfcdb905b847040c250fa366402 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:2122 Reviewed-on: https://skia-review.googlesource.com/112740 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* add tiler for SkDrawGravatar Mike Reed2018-03-06
| | | | | | | | Bug: skia:2122 Change-Id: I276de2064939151eef5fa14c53188e8b5728b7c9 Reviewed-on: https://skia-review.googlesource.com/110840 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* keep points as floats until after clippingGravatar Mike Reed2018-02-27
| | | | | | | | Bug: oss-fuzz:6539 Change-Id: Ia91dee2a023c9b17d06948c455b8ea6a1b213e0d Reviewed-on: https://skia-review.googlesource.com/110501 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Set empty drawFn when init-once returns earlyGravatar Yuqian Li2018-02-25
| | | | | | | | Bug: skia: Change-Id: I01def2c2c9651585555740e5ab86f8eac38be6fc Reviewed-on: https://skia-review.googlesource.com/109721 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Enable DAA in the init-once phase of threaded backendsGravatar Yuqian Li2018-02-21
| | | | | | | | Bug: skia: Change-Id: Idb856fe12f0f9fa1014e7d15ef40bd7b456634d6 Reviewed-on: https://skia-review.googlesource.com/107540 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Add init-once to threaded backendGravatar Yuqian Li2018-02-12
| | | | | | | | | | | | For the simplicity of this CL, I haven't enabled DAA for init-once yet. The current init-once is only enabled for draw path, and it simply generates the dev path in the init-once phase. Bug: skia: Change-Id: Ie9a9ef9fc453acbdeb48b06b93d578c626961e3f Reviewed-on: https://skia-review.googlesource.com/87784 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Can't correctly call computeFastBounds on maskfilter w/ device geoGravatar Mike Reed2018-02-06
| | | | | | | | | | | | | maskfilter's computeFastBounds assumes the passed-in geometry bounds is in src space, but in drawDevPath the bounds is in device space, so this call can return meaningless answers. Skip this whole block of code, since filterPath itself performs culling. Bug: skia: Change-Id: Ia668d8b692ce77332fa16908e9b0cf774c189e11 Reviewed-on: https://skia-review.googlesource.com/104520 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* move the guts of SkMaskFilter.h into SkMaskFilterBase.hGravatar Mike Reed2018-01-23
| | | | | | | | | Bug: skia: Change-Id: I29ad0960156562867429542d3cfbf3d639529cab Reviewed-on: https://skia-review.googlesource.com/98802 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Clean up SkScalerContext descriptor creationGravatar Herb Derby2018-01-23
| | | | | | | | | | | | | | | | Allow a descriptor creation using just a rec and effects. This is the most complex part of the change. Cleanup SkScalerContextFlags to be a real thing. This has spread everywhere. BUG=skia:7515 Change-Id: I67189c9aeb51f1777a1c60145216524d440cb890 Reviewed-on: https://skia-review.googlesource.com/98320 Commit-Queue: Herb Derby <herb@google.com> Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* move zero-init to sk_malloc for masksGravatar Mike Reed2018-01-22
| | | | | | | | Bug: skia: Change-Id: I75d557068bdcd9e9f7e380e4fa447f9d83dd1554 Reviewed-on: https://skia-review.googlesource.com/98200 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused SkRasterizerGravatar Mike Reed2018-01-21
| | | | | | | | Bug: skia:7500 Change-Id: Iaa683cf8f0b18887cce4ec676631d1e1efee1712 Reviewed-on: https://skia-review.googlesource.com/97400 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* detect fixed overflow in drawPointsGravatar Mike Reed2018-01-18
| | | | | | | | | | | | | | | | | | | | | This particular test this is addressing is: 1. very large device (>32K in a test case) 2. drawPoints has special (fast) case where it converts all of the pts (rects) into fixed point 3. overflows fixed -- assert Paths already don't draw into a device this large (they are limited by 32K I think, smaller if aa) The (theoretical) solution for paths is to tile the draw itself. Perhaps that approach could be applied everywhere in bitmapdevice... This older issue sums up this idea: https://bugs.chromium.org/p/skia/issues/detail?id=2122 Will look into this general solution in a separate CL/effort. Bug: skia:7425 Change-Id: I57f8da92df78127e6b8e42e422c43e50bb5748d6 Reviewed-on: https://skia-review.googlesource.com/96700 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* handle large rects, rename helperGravatar Mike Reed2018-01-17
| | | | | | | | | | | To fix gm/bigrect, needed to do adjust "largest" rect so it doesn't become empty when round-tripping with SkRect/SkIRect. I renamed it after this. Bug: skia: Change-Id: I747782c8456da603cf298275d2300ea1996e7629 Reviewed-on: https://skia-review.googlesource.com/95563 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Support scaled color emojis for SDF fallbackGravatar Jim Van Verth2018-01-17
| | | | | | | | | | | | | This patch enables scaling for overlarge color emojis when trying to render with SDFs, i.e. between 162 and 324 point in normal text rendering mode. Also ensures that we only try to render blobs with bitmap/SDF when the text size will fit in the atlas. Bug: skia: Change-Id: Ib675d99ef22bf66368dc8737ef63db4a5d3d5a9f Reviewed-on: https://skia-review.googlesource.com/94361 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* move largest apis into privateGravatar Mike Reed2018-01-08
| | | | | | | | | Related to https://skia-review.googlesource.com/c/skia/+/91860 Bug: skia: Change-Id: Ia8fd981b422bbab75541b078277d2e09e1fc9d41 Reviewed-on: https://skia-review.googlesource.com/91940 Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Revert "Fix a couple float-cast-overflow in SkScan*.""Gravatar Ben Wagner2017-10-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b6abb9b4e088abee8b8dfcce9c9f7eb759518198. Reason for revert: It doesn't make sense that this CL would affect the tests implicated in the perf regression in skia:7143, and the revert had no effect on the perf of those tests. Seems like the perf alert was either noise or due to a different CL. Original change's description: > Revert "Fix a couple float-cast-overflow in SkScan*." > > This reverts commit 3cd0bef0fd9d062bbcc313c329b4f31925e8ded7. > > Reason for revert: https://bugs.chromium.org/p/skia/issues/detail?id=7143 > > Original change's description: > > Fix a couple float-cast-overflow in SkScan*. > > > > Bug: skia:5060 > > Change-Id: I60a48993c77631aaad9354bb86b13204dc618bf4 > > Reviewed-on: https://skia-review.googlesource.com/47422 > > Commit-Queue: Ben Wagner <benjaminwagner@google.com> > > Reviewed-by: Mike Reed <reed@google.com> > > TBR=benjaminwagner@google.com,reed@google.com > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia:7143 > Change-Id: I0f19720a7d8344789a375bbb6b9e28bf4f4e55ae > Reviewed-on: https://skia-review.googlesource.com/57240 > Commit-Queue: Ben Wagner <benjaminwagner@google.com> > Reviewed-by: Ben Wagner <benjaminwagner@google.com> TBR=benjaminwagner@google.com,reed@google.com Change-Id: I29ac47d6665e2e52ee2a6500488dc407c8d2af1c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7143 Reviewed-on: https://skia-review.googlesource.com/57440 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* Revert "Fix a couple float-cast-overflow in SkScan*."Gravatar Ben Wagner2017-10-09
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3cd0bef0fd9d062bbcc313c329b4f31925e8ded7. Reason for revert: https://bugs.chromium.org/p/skia/issues/detail?id=7143 Original change's description: > Fix a couple float-cast-overflow in SkScan*. > > Bug: skia:5060 > Change-Id: I60a48993c77631aaad9354bb86b13204dc618bf4 > Reviewed-on: https://skia-review.googlesource.com/47422 > Commit-Queue: Ben Wagner <benjaminwagner@google.com> > Reviewed-by: Mike Reed <reed@google.com> TBR=benjaminwagner@google.com,reed@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia:7143 Change-Id: I0f19720a7d8344789a375bbb6b9e28bf4f4e55ae Reviewed-on: https://skia-review.googlesource.com/57240 Commit-Queue: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* Fix a couple float-cast-overflow in SkScan*.Gravatar Ben Wagner2017-10-07
| | | | | | | | Bug: skia:5060 Change-Id: I60a48993c77631aaad9354bb86b13204dc618bf4 Reviewed-on: https://skia-review.googlesource.com/47422 Commit-Queue: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Mike Reed <reed@google.com>
* make most of SkColorPriv.h privateGravatar Cary Clark2017-09-15
| | | | | | | | | | | | | created new file src/core/SkColorData.h for internal consumption. Note that many of the functions there are unused as well. Bug: skia: 6898 R: reed@google.com Change-Id: I25bfd5a9c21f53558c4ca65a77eb5d322d897c6d Reviewed-on: https://skia-review.googlesource.com/46848 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Replace variant system with arenaGravatar Herb Derby2017-06-22
| | | | | | | | Bug: skia:6764 Change-Id: I9327b953efeedd73e7985904d17b971939468e40 Reviewed-on: https://skia-review.googlesource.com/20500 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* bail out of ChooseBitmapXferProc with a color spaceGravatar Mike Klein2017-05-25
| | | | | | | | | | | | | | This fixes the paint-color parts of the gamut GM, and a handful of other similar problems. We'll still memset in the blitter, just after we get in the right gamut. BUG=skia:6679 Change-Id: I2b16259ad689c63ae304fb600802acf9125b8c25 Reviewed-on: https://skia-review.googlesource.com/17922 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkSTArenaAllocGravatar Florin Malita2017-05-24
| | | | | | | | | Syntactic sugar, gets rid of some boilerplate. Change-Id: Ibdb28b7a8f1d5e4a4e18c12d423b987d7194e340 Reviewed-on: https://skia-review.googlesource.com/17837 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* move impl for drawvertices into separate fileGravatar Mike Reed2017-05-15
| | | | | | | | | | | expect to refactor the impl, so this just makes that easier (plus SkDraw.cpp was just too big) Bug: skia: Change-Id: I22c07d37429195363d9a76e56a1dca915f9c2d57 Reviewed-on: https://skia-review.googlesource.com/16863 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* implement 4f for composeshaderGravatar Mike Reed2017-05-12
| | | | | | | | Bug: skia: Change-Id: I7ad0077345f7589528c89cd84d252539a1df6614 Reviewed-on: https://skia-review.googlesource.com/16703 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* fold matrices together for tricolorGravatar Mike Reed2017-05-12
| | | | | | | | Bug: skia: Change-Id: Ic4ef679c6b5514f0fc7f895d71b5feeb812da53e Reviewed-on: https://skia-review.googlesource.com/16606 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* move set-text-matrix into privateGravatar Mike Reed2017-05-09
| | | | | | | | | | Had no external callers, and was poorly named. Bug: skia: Change-Id: I5bed6853e9aa3b31fa106a436a73297bf55f0503 Reviewed-on: https://skia-review.googlesource.com/16155 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* impl 4f version for tricolor shaderGravatar Mike Reed2017-05-06
| | | | | | | | Bug: skia: Change-Id: I43f456aa115ce71a5d1acd9bc94984248a88319a Reviewed-on: https://skia-review.googlesource.com/15540 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* fix tricolor shaderGravatar Mike Reed2017-05-02
| | | | | | | | | | | | | 1. map pixel-centers through inverse (correctness) 2. forward-difference srcXY in loop (perf) Lots of minor (but correct) changes in GMs Bug: skia:6578 Change-Id: I2ad2ef939f58373d33212d4056c7d2f63eaafe0e Reviewed-on: https://skia-review.googlesource.com/15153 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* hide lockpixels api behind flagGravatar Mike Reed2017-04-17
| | | | | | | | | | | | | | guarded by SK_SUPPORT_OBSOLETE_LOCKPIXELS needs https://codereview.chromium.org/2820873002/# to land first Bug: skia:6481 Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09 Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09 Reviewed-on: https://skia-review.googlesource.com/13580 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Mike Reed <reed@google.com>
* move vertex-mode enum into SkVerticesGravatar Mike Reed2017-04-03
| | | | | | | | | BUG=skia:6366 Change-Id: I3c0bf96cce6d32c9b8d12d16a772aaa6f18981aa Reviewed-on: https://skia-review.googlesource.com/11062 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Mark overridden destructors with 'override' and remove 'virtual'Gravatar Brian Salomon2017-03-22
| | | | | | | | | This silences a new warning in clang 5.0 Change-Id: Ieb5b75a6ffed60107c3fd16075d2ecfd515b55e8 Reviewed-on: https://skia-review.googlesource.com/10006 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert[6] "Remove SkDraw from device-draw methods, and enable device-centric ↵Gravatar Mike Reed2017-03-07
| | | | | | | | | | | | | | | | | clipping."""""" Previous failure was failure to detect that the clip wasn't wide-open when optimizing for retain-vs-discard in copy-on-write. gm:copy_on_write_retain detected this. Now fixed by adding new method to SkBaseDevice.h This reverts commit 27d07f0acb85eea4062075dfbe9148ce12d92c66. BUG=skia:6214 Change-Id: I532d16ec075a4525c2a550b1157bcec695dd8efd Reviewed-on: https://skia-review.googlesource.com/9341 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "Revert "Revert[2] "Remove SkDraw from device-draw methods, ↵Gravatar Mike Reed2017-03-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and enable device-centric clipping.""""" This reverts commit 025e2444c1f5a0c3cdc0bf60d1fa59941a0b5db4. Reason for revert: layouttest failures -- need to rebase these (tiny diffs in gradients) https://storage.googleapis.com/chromium-layout-test-archives/linux_trusty_blink_rel/6018/layout-test-results/results.html Original change's description: > Revert "Revert "Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping."""" > > This reverts commit baf06bc89a0ee2ac4033281e7310f6c727faab79. > > Reason for revert: reland to diagnose possible g3 failure > > Original change's description: > > Revert "Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping.""" > > > > This reverts commit cfaa63237b152ae216f1351207bce3ea9808814c. > > > > Reason for revert: speculative revert to fix Google3 > > > > Original change's description: > > > Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping."" > > > > > > passes new (augmented) CanvasClipType unittest > > > fixed rasterclipstack::setnewsize > > > > > > This reverts commit ea5e676a7b75600edcde3912886486004ccd7626. > > > > > > BUG=skia: > > > > > > Change-Id: I004653e0f4d01454662f8516fccab0046486f273 > > > Reviewed-on: https://skia-review.googlesource.com/9185 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Mike Reed <reed@google.com> > > > > > > > TBR=bsalomon@google.com,reed@google.com,reviews@skia.org > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Change-Id: Ibd7ee6383999f008eb6ee59c1c3f1c06a86044ea > > Reviewed-on: https://skia-review.googlesource.com/9230 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Cary Clark <caryclark@google.com> > > > > TBR=bsalomon@google.com,reviews@skia.org,caryclark@google.com,reed@google.com,mtklein@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Change-Id: I093fa8788056be39af01191bbf3a9e5de9f73954 > Reviewed-on: https://skia-review.googlesource.com/9244 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> > TBR=mtklein@chromium.org,bsalomon@google.com,reviews@skia.org,caryclark@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I58f810a8ff241dbaf3133e2fe844548fcd0fa67a Reviewed-on: https://skia-review.googlesource.com/9245 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "Revert[2] "Remove SkDraw from device-draw methods, and ↵Gravatar Mike Reed2017-03-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enable device-centric clipping."""" This reverts commit baf06bc89a0ee2ac4033281e7310f6c727faab79. Reason for revert: reland to diagnose possible g3 failure Original change's description: > Revert "Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping.""" > > This reverts commit cfaa63237b152ae216f1351207bce3ea9808814c. > > Reason for revert: speculative revert to fix Google3 > > Original change's description: > > Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping."" > > > > passes new (augmented) CanvasClipType unittest > > fixed rasterclipstack::setnewsize > > > > This reverts commit ea5e676a7b75600edcde3912886486004ccd7626. > > > > BUG=skia: > > > > Change-Id: I004653e0f4d01454662f8516fccab0046486f273 > > Reviewed-on: https://skia-review.googlesource.com/9185 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Mike Reed <reed@google.com> > > > > TBR=bsalomon@google.com,reed@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Change-Id: Ibd7ee6383999f008eb6ee59c1c3f1c06a86044ea > Reviewed-on: https://skia-review.googlesource.com/9230 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Cary Clark <caryclark@google.com> > TBR=bsalomon@google.com,reviews@skia.org,caryclark@google.com,reed@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I093fa8788056be39af01191bbf3a9e5de9f73954 Reviewed-on: https://skia-review.googlesource.com/9244 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert[2] "Remove SkDraw from device-draw methods, and enable ↵Gravatar Cary Clark2017-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | device-centric clipping.""" This reverts commit cfaa63237b152ae216f1351207bce3ea9808814c. Reason for revert: speculative revert to fix Google3 Original change's description: > Revert[2] "Remove SkDraw from device-draw methods, and enable device-centric clipping."" > > passes new (augmented) CanvasClipType unittest > fixed rasterclipstack::setnewsize > > This reverts commit ea5e676a7b75600edcde3912886486004ccd7626. > > BUG=skia: > > Change-Id: I004653e0f4d01454662f8516fccab0046486f273 > Reviewed-on: https://skia-review.googlesource.com/9185 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Mike Reed <reed@google.com> > TBR=bsalomon@google.com,reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: Ibd7ee6383999f008eb6ee59c1c3f1c06a86044ea Reviewed-on: https://skia-review.googlesource.com/9230 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Cary Clark <caryclark@google.com>