aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
* Add SkGlyphRunListGravatar Herb Derby2018-06-21
| | | | | | | | | | | | Extend the glyph run system with a glyph run list. This allows the processing of text blobs. Add original text an cluster to runs for PDF. Change-Id: If4867d000e45f8975a30e982fc8fdbe104ef4332 Reviewed-on: https://skia-review.googlesource.com/135627 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* make includes available for flutterGravatar Cary Clark2018-06-21
| | | | | | | | | | | | | | | | | | temporarily copy SkBase64.h until flutter can move to using the one in include/util Copy TRACE_EVENT_PHASE_* into its own file in include/util; the only part of SkTraceEventCommon.h that flutter needs. R=reed@google.com,chinmaygarde@google.com Bug: skia:7741 Change-Id: I8671edbf1d6b6b868bde98aa9ad04abcb85a43a0 Reviewed-on: https://skia-review.googlesource.com/135870 Reviewed-by: Chinmay Garde <chinmaygarde@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* Expand ExclusiveStrikePtr with StrikeCacheGravatar Herb Derby2018-06-21
| | | | | | | | | | | | Add an SkStrikeCache to ExclusiveStrikePtr to allow it to return a glyph cache to one of multiple strike caches. BUG=skia:8091 Change-Id: I5440a6451838e08f21677eb5d5b4ade6c6b75ca0 Reviewed-on: https://skia-review.googlesource.com/136617 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* use double to compute root to avoid overflowGravatar Mike Reed2018-06-21
| | | | | | | | Bug: 850350 Change-Id: Iac04fc62e69f51b68c5fc7f55ac1be930133cc74 Reviewed-on: https://skia-review.googlesource.com/136597 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* abort really big path fuzzingGravatar Cary Clark2018-06-21
| | | | | | | | | | | | | | | | | | | | | | This adds a couple of special cases to stop the fuzzer from timing out. The first occurs when the fuzzer generates a very large path with very large quads. Count the subdivisions and stop after a while. The second occurs with a normal path and 1D path effect with a very small advance. Count the points and stop after a while. R=reed@google.com,bsalomon@google.com,kjlubick@google.com Bug: oss-fuzz:8349,oss-fuzz:8805 Change-Id: I86130e3f512f48e5a39335412435eabc245ed193 Reviewed-on: https://skia-review.googlesource.com/135709 Reviewed-by: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com> Auto-Submit: Cary Clark <caryclark@skia.org>
* Allow access to global glyph cacheGravatar Herb Derby2018-06-21
| | | | | | | | | | | | | The global glyph cache pointer is closed over in SkStrikeCache.cpp. Allow access to it for future code to move away from the global glyph cache. BUG=skia:8091 Change-Id: I6e1fb712c082452e6a3b54f5fb5e6167caf9e757 Reviewed-on: https://skia-review.googlesource.com/136613 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "Make SkRemoteGlyphCache tests use private glyph cache"Gravatar Herb Derby2018-06-21
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3e36ce6e660ad585c58c5cc5591f23a46fcab767. Reason for revert: Too much verification Original change's description: > Make SkRemoteGlyphCache tests use private glyph cache > > Change-Id: If6aa189f3badc7558ab8ecf71ee3d704b275b20f > Reviewed-on: https://skia-review.googlesource.com/136225 > Commit-Queue: Herb Derby <herb@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,herb@google.com Change-Id: Ia0c096abd0ab651bc7c907f0595af4f07c88fb5e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/136478 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Make SkRemoteGlyphCache tests use private glyph cacheGravatar Herb Derby2018-06-20
| | | | | | | Change-Id: If6aa189f3badc7558ab8ecf71ee3d704b275b20f Reviewed-on: https://skia-review.googlesource.com/136225 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* update software DM/nanobench configs for color testingGravatar Mike Klein2018-06-19
| | | | | | | | | | | | | | - Rename 'srgbnl' to just 'srgb'. - Add 'narrow' and 'enarrow' for testing a gamut narrower than sRGB. Tested by running xfermodes2 in DM... all look different, what a mess. I also ran a few nanobenches and they seemed somewhat sane. Change-Id: Iacdc391dc0eef4153a76f5b4f78d72c57a4371ee Reviewed-on: https://skia-review.googlesource.com/135871 Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* move imagefilters into separate dir and flag for build.gnGravatar Mike Reed2018-06-19
| | | | | | | | | | Requires https://chromium-review.googlesource.com/c/chromium/src/+/1105062 Bug: skia: Change-Id: I948056234efa57c0f727a61d5fb3258034de5199 Reviewed-on: https://skia-review.googlesource.com/135566 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
* SkUtils: safe SkUTF16_NextUnicharGravatar Hal Canary2018-06-19
| | | | | | | | Change-Id: Ief70f3055d9612c8934ede967c1048dd7fcb102a Reviewed-on: https://skia-review.googlesource.com/135705 Commit-Queue: Hal Canary <halcanary@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Use SkGlyphRun instead of builderGravatar Herb Derby2018-06-19
| | | | | | | | | | | | | Move from passing builder down the stack to passing the object we really want to be the interface down the stack. Move code that shunts from glyph run style to drawTextPos to the SkGlyphRun from the builder. Change-Id: Iefaca69104737ce46c06fbb26dc99996784b2bdb Reviewed-on: https://skia-review.googlesource.com/135620 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Clamp ambient blur radiusGravatar Jim Van Verth2018-06-19
| | | | | | | | Bug: skia:8078 Change-Id: I8a45ce49b236ae0ad4c2176be71011c372c316ce Reviewed-on: https://skia-review.googlesource.com/135861 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Stop using SkTSwap.Gravatar Ben Wagner2018-06-19
| | | | | | | | | | | | | Use std::swap instead. It does not appear that any external user specializes SkTSwap, but some may still use it. This removes all use in Skia so that SkTSwap can later be removed in a smaller CL. After that the <utility> include can be removed from SkTypes.h. Change-Id: If03d4ee07dbecda961aa9f0dc34d171ef5168753 Reviewed-on: https://skia-review.googlesource.com/135578 Reviewed-by: Hal Canary <halcanary@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Remove unused drawText codeGravatar Herb Derby2018-06-19
| | | | | | | Change-Id: I3fc236be67b6a3d822d5508de1daa411d00fd5a4 Reviewed-on: https://skia-review.googlesource.com/135574 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Reland "Remove old references to SampleApp"Gravatar Brian Osman2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3ff2b200573354c83bbb52ff2f5f760eb481596e. Reason for revert: Infra fires are out. Original change's description: > Revert "Remove old references to SampleApp" > > This reverts commit 1c477fc263cf37c27cd92740d9328445420a926d. > > Reason for revert: Botpocalypse. > Original change's description: > > Remove old references to SampleApp > > > > Docs-Preview: https://skia.org/?cl=135570 > > Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540 > > Reviewed-on: https://skia-review.googlesource.com/135570 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Brian Osman <brianosman@google.com> > > TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com > > Change-Id: I514e2c7bca8a1ebd311593573a94e8a078695785 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/135600 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com Change-Id: I660482ef32acecf5b1bf24d2dec919bc68fde97e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/135660 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Remove old references to SampleApp"Gravatar Brian Osman2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1c477fc263cf37c27cd92740d9328445420a926d. Reason for revert: Botpocalypse. Original change's description: > Remove old references to SampleApp > > Docs-Preview: https://skia.org/?cl=135570 > Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540 > Reviewed-on: https://skia-review.googlesource.com/135570 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com Change-Id: I514e2c7bca8a1ebd311593573a94e8a078695785 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/135600 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove old references to SampleAppGravatar Brian Osman2018-06-18
| | | | | | | | Docs-Preview: https://skia.org/?cl=135570 Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540 Reviewed-on: https://skia-review.googlesource.com/135570 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* remove SkTCastGravatar Mike Klein2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SkTCast is functionally equivalent to reinterpret_cast. The comment about SkTCast helping to avoid strict alising issues is not true. Dereferencing a pointer cast to a pointer of an unrelated type is always undefined, even if smuggled through a union like in SkTCast. To really avoid aliasing issues, you need to make a union[1] of the two value types, or better, memcpy between values. I've had to fix MatrixText.cpp where switching to reinterpret_cast actually let Clang notice and warn that we're exploiting undefined behavior, and GrSwizzle.h and SkCamera.cpp caught by GCC. I've switched SkTLList over to use SkAlignedSTStorage, which seems to help convince some GCC versions that fObj is used in a sound way. [1] The union punning trick is non-standard in C++, but GCC and MSVC both explicitly support it. I believe Clang does not officially explicitly support it, but probably does quietly for GCC compatibility. Change-Id: I71822e82c962f9aaac8be24d3c0f39f4f8b05026 Reviewed-on: https://skia-review.googlesource.com/134947 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Work around signed-unsigned comparison warning.Gravatar Ben Wagner2018-06-15
| | | | | | | Change-Id: I35d2c3430dbf071dcbbb73e408115d9204e5908b Reviewed-on: https://skia-review.googlesource.com/135327 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Work around signed-unsigned comparison warning.Gravatar Ben Wagner2018-06-15
| | | | | | | Change-Id: I42f21544f6b626d3b75b65bcccde0b5066dc520f Reviewed-on: https://skia-review.googlesource.com/135320 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Reland "Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines."Gravatar Ben Wagner2018-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ab17347df32807cabd9f2a518d22c3bd420e482f. Reason for revert: Chromium should now be ok. Original change's description: > Revert "Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines." > > This reverts commit e1bc7de7c07686b28b00b850e44e0722189f3592. > > Reason for revert: chrome used it > > Original change's description: > > Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines. > > > > sed 's/SK_MaxSizeT/SIZE_MAX/g' > > sed 's/SK_MaxU32/UINT32_MAX/g' > > sed 's/SK_MaxU16/UINT16_MAX/g' > > > > SK_MinU32 and SK_MinU16 were unused > > > > Change-Id: I6b6c824df47b05bde7e73b13a58e851a5f63fe0e > > Reviewed-on: https://skia-review.googlesource.com/134607 > > Commit-Queue: Hal Canary <halcanary@google.com> > > Reviewed-by: Ben Wagner <bungeman@google.com> > > TBR=halcanary@google.com,bungeman@google.com,reed@google.com > > Change-Id: I1e2c440dcf9f59bf87c1fea113248cd5136f7519 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/134921 > Reviewed-by: Hal Canary <halcanary@google.com> > Commit-Queue: Hal Canary <halcanary@google.com> CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-ozone-rel TBR=halcanary@google.com,bungeman@google.com,reed@google.com Change-Id: I7709f9715bea0463b85b5b0a89712ac1020fcddb Reviewed-on: https://skia-review.googlesource.com/135180 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* SkImageInfo: make use of SkISizeGravatar Hal Canary2018-06-14
| | | | | | | Change-Id: Id3c427cae2988dcc2dfcf4dc713921142469e3f6 Reviewed-on: https://skia-review.googlesource.com/134840 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove GrPixelConfig argument to GrColorSpaceXform[Effect]::MakeGravatar Brian Osman2018-06-14
| | | | | | | | | | | This was for sRGB configs, which are no longer treated special. Pulling this out of https://skia-review.googlesource.com/c/skia/+/132090 to land separately. Change-Id: Id04c4e82ad4ffe375cfd384490839b0488e54d44 Reviewed-on: https://skia-review.googlesource.com/134843 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines."Gravatar Hal Canary2018-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e1bc7de7c07686b28b00b850e44e0722189f3592. Reason for revert: chrome used it Original change's description: > Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines. > > sed 's/SK_MaxSizeT/SIZE_MAX/g' > sed 's/SK_MaxU32/UINT32_MAX/g' > sed 's/SK_MaxU16/UINT16_MAX/g' > > SK_MinU32 and SK_MinU16 were unused > > Change-Id: I6b6c824df47b05bde7e73b13a58e851a5f63fe0e > Reviewed-on: https://skia-review.googlesource.com/134607 > Commit-Queue: Hal Canary <halcanary@google.com> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=halcanary@google.com,bungeman@google.com,reed@google.com Change-Id: I1e2c440dcf9f59bf87c1fea113248cd5136f7519 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/134921 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Revert "Revert "SkTypes: extract SkTo""Gravatar Hal Canary2018-06-14
| | | | | | | | | | | | | | | | This reverts commit fdcfb8b7c23fbf18f872d2c31d27978235033876. > Original change's description: > > SkTypes: extract SkTo > > > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > > Reviewed-on: https://skia-review.googlesource.com/133620 > > Reviewed-by: Mike Klein <mtklein@google.com> Change-Id: Ida74fbc5c21248a724a5edbf9fae18a33bcb23aa Reviewed-on: https://skia-review.googlesource.com/134506 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines.Gravatar Hal Canary2018-06-14
| | | | | | | | | | | | | sed 's/SK_MaxSizeT/SIZE_MAX/g' sed 's/SK_MaxU32/UINT32_MAX/g' sed 's/SK_MaxU16/UINT16_MAX/g' SK_MinU32 and SK_MinU16 were unused Change-Id: I6b6c824df47b05bde7e73b13a58e851a5f63fe0e Reviewed-on: https://skia-review.googlesource.com/134607 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* SkColorSpaceXformSteps improvements and testsGravatar Brian Osman2018-06-14
| | | | | | | | | | | | Added some helper functions and put the booleans in a nested struct (this is motivated by upcoming changes). Added a unit test of steps against skcms, with round-tripping in both combinations. Change-Id: Iea3d60cd52edb5259b5576b1422ed6f856cde815 Reviewed-on: https://skia-review.googlesource.com/134660 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* minor fixes to SkRRectGravatar Cary Clark2018-06-13
| | | | | | | | | | | | | Move methods that are not publicly callable to SkRRectPriv.h. Name params, add a trailing comma to the enum list. R=reed@google.com,bsalomon@google.com Bug: skia:6898 Change-Id: If93f712656dde563567a647624e58ce9a9d74494 Reviewed-on: https://skia-review.googlesource.com/134423 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* fonts: Ignore re-initialization of fallback glyphs from the server.Gravatar Khushal2018-06-13
| | | | | | | | | | | | | | If the client finds that the server re-initializes a cached path/image, we consider this an error and invalid data. But since we might initialize a glyph using a fallback on the client, and receive the correct version from the server later, this is not longer true. Bug: 829622 Change-Id: I34ab17b54139d89a15179265d4aed4a1fe36fd47 Reviewed-on: https://skia-review.googlesource.com/133566 Commit-Queue: Khusal Sagar <khushalsagar@chromium.org> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Does everyone support __has_include() now?Gravatar Mike Klein2018-06-13
| | | | | | | | | | Let's find out. Change-Id: I8ff2103c389d6627f3963a2f067baa0a211647c9 Reviewed-on: https://skia-review.googlesource.com/134510 Commit-Queue: Ben Wagner <bungeman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Ben Wagner <bungeman@google.com>
* Fix IsFunctionallyExactGravatar Robert Phillips2018-06-13
| | | | | | | | Bug: 849034 Change-Id: Icfef534433495e5ad5ab1f3abad05957a0e70a31 Reviewed-on: https://skia-review.googlesource.com/134333 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "SkTypes: extract SkTo"Gravatar Hal Canary2018-06-13
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2a2f67592602b18527bc3fd449132d420cd5b62e. Reason for revert: this appears to be what is holding up the Chrome roll. Original change's description: > SkTypes: extract SkTo > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > Reviewed-on: https://skia-review.googlesource.com/133620 > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,halcanary@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Iafd738aedfb679a23c061a51afe4b98a8d4cdfae Reviewed-on: https://skia-review.googlesource.com/134504 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SkBool8.Gravatar Ben Wagner2018-06-12
| | | | | | | | | | | | This typedef was created at a time when compilers often used sizeof(int) storage for a bool. This is no longer the case and in all compilers currently supported 'sizeof(bool) == 1'. Removing this also revealed one field which was actually not a bool but a tri-state enum. Change-Id: I9240ba457335ee3eff094d6d3f2520c1adf16960 Reviewed-on: https://skia-review.googlesource.com/134420 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* fonts: Fix memory allocation for fallback glyphs.Gravatar Khushal2018-06-12
| | | | | | | | | | | | | | | | When allocating the mask for a fallback glyph, we allocate it on the arena on the SkScalerContext while the image belongs to a glyph on a different cache. This can lead to use-after-free bugs if accessing the image after the context owning that memory is destroyed. Fix this by allocating on the arena from the owning cache. R=herb@google.com, mtklein@google.com Bug: 829622 Change-Id: Ife53e24f5bc868f36c43f2adcd7a2629ab5577fe Reviewed-on: https://skia-review.googlesource.com/134182 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* SkTypes: more into SkMacrosGravatar Hal Canary2018-06-12
| | | | | | | | Change-Id: I4c9a2d81a1bc4ccebc78eea56c0de116b98d415e Reviewed-on: https://skia-review.googlesource.com/134330 Commit-Queue: Hal Canary <halcanary@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* SkMacros split from SkTypes.hGravatar Hal Canary2018-06-12
| | | | | | | Change-Id: I383719ee181c6925ebf62ffc70e1c0f12ee7cf84 Reviewed-on: https://skia-review.googlesource.com/134326 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* SkTypes: extract SkToGravatar Hal Canary2018-06-12
| | | | | | Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 Reviewed-on: https://skia-review.googlesource.com/133620 Reviewed-by: Mike Klein <mtklein@google.com>
* clean up SkPicture includeGravatar Cary Clark2018-06-12
| | | | | | | | | | | | | | | | | Get SkPicture.h ready for documenting. - remove private methods - move private forward declarations - name parameters R=reed@google.com, bsalomon@google.com Bug: skia:6898 Change-Id: I28829111203d8ae2a4661cf02c99023403aa0df0 Reviewed-on: https://skia-review.googlesource.com/134120 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@google.com>
* Clean up a few IWYU issuesGravatar Mike Klein2018-06-11
| | | | | | | | | Spun off from the SkTFitsIn CL. Change-Id: I686d680df6a36ebc02db3847ad5e2cedcbcd67ef Reviewed-on: https://skia-review.googlesource.com/134083 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* trim #include <new> from SkPostConfig.hGravatar Mike Klein2018-06-11
| | | | | | | Change-Id: I693ddcd4ade101ba4eb4102e03adce183aa1d672 Reviewed-on: https://skia-review.googlesource.com/133829 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Glyph search of desperationGravatar Herb Derby2018-06-08
| | | | | | | Change-Id: I0ae768c5517c3ee3f6822fea0926b3f27214a0e4 Reviewed-on: https://skia-review.googlesource.com/132260 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* rebaseGravatar Cary Clark2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 32a4910e57b1fdd3c8671de1ee85e05ca21d079f. Reason for revert: SkMatrix::toString use has been removed from flutter and has been picked up in fuchsia Additionally some bookmaker changes take into account recent additions of typedef comments and the generated header comment. Original change's description: > Revert "remove toString" > > This reverts commit 5191880cbf3ee4d122b0d11b4945fbab0784fda7. > > Reason for revert: broke flutter > > Original change's description: > > remove toString > > > > toString may have been used by obsolete debugger only > > find out if that is so > > > > R=​brianosman@google.com,bsalomon@google.com > > > > Docs-Preview: https://skia.org/?cl=119894 > > Bug:830651 > > Change-Id: I737f19b7d3fbc869bea2f443fa3b5ed7c1393ffd > > Reviewed-on: https://skia-review.googlesource.com/119894 > > Commit-Queue: Cary Clark <caryclark@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,brianosman@google.com,caryclark@google.com,caryclark@skia.org > > Change-Id: I9f81de6c3615ee0608bcea9081b77239b4b8816c TBR=bsalomon@google.com,brianosman@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Reviewed-on: https://skia-review.googlesource.com/129623 Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@google.com> Docs-Preview: https://skia.org/?cl=133583 Bug: 830651 Change-Id: If8499e796be63580ad419e150e94d43e8b89de1b Reviewed-on: https://skia-review.googlesource.com/133583 Commit-Queue: Cary Clark <caryclark@skia.org> Auto-Submit: Cary Clark <caryclark@skia.org>
* fonts: Perform blob analysis at SkBaseDevice layer instead of canvas.Gravatar Khushal2018-06-08
| | | | | | | | | | | | | | | | | Currently we use the onDrawTextBlob hook to analyze the text blob, which requires replicating the logic for applying the SkDrawLooper and misses the optimization for skipping ops outside the current clip. Avoid this by using SkBaseDevice::drawTextBlob instead to ensure we re-use all the SkCanvas code until the device level. R=herb@google.com Bug: 829622 Change-Id: I2721c02541d337e2fb3744132e85758f7c804841 Reviewed-on: https://skia-review.googlesource.com/133101 Commit-Queue: Khusal Sagar <khushalsagar@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Make the SkPathRef GenIDChangeListener ref countedGravatar Chris Dalton2018-06-08
| | | | | | | | Bug: skia: Change-Id: I2780e3fc76153373b4efca6059ded82f4f749325 Reviewed-on: https://skia-review.googlesource.com/133502 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* New more efficient run builderGravatar Herb Derby2018-06-08
| | | | | | | | | | | | | | | A system for building glyph runs. In the future the builder will only live in canvas, but it's internal structures facilitate interacting with the cache a single glyph at a time. When all the bulk code is in place, only runs will be passed around. Passing the builder down the text draw stack is temporary. Change-Id: I6e3ed184b3f3a58b919377f2d31936e971bd8efa Reviewed-on: https://skia-review.googlesource.com/132928 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Fix A2B JPEG images on GPU backed xform or color-managed canvasGravatar Brian Osman2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | A2B images can't be transformed on the GPU, so ensure that they're "converted" before being uploaded. (This may just create a new lazy image with an updated color space). Then, when we're converting JPEG images (YUV) to textures, don't allow GPU decode if the result needs to go through A2B conversion (again, we can't do this). In that case, we just ask the generator (codec) for RGB data, which will trigger correct CPU conversion before the upload. Eventually this will be rewritten further, because we won't allow A2B data in SkColorSpace, but for now this fixes a problem that's not actually affecting any clients, but is blocking a GrColorSpaceXform refactor. Change-Id: I1ebef4a90773d21ec4011ed1ac16aed486ba5539 Reviewed-on: https://skia-review.googlesource.com/133447 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Fix SkImageInfo::computeByteSize underflowGravatar Adrienne Walker2018-06-08
| | | | | | | | | Bug: chromium: 819616 Change-Id: I9d4c079ad93518e45739fbb7d1abc32dedbb9c26 Reviewed-on: https://skia-review.googlesource.com/132281 Auto-Submit: Adrienne Walker <enne@chromium.org> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* remove final SkTypes dependencies in SkArenaAllocGravatar Mike Klein2018-06-08
| | | | | | | | Change-Id: I09ab433fecdba01f8e652816be08817da68eea56 Reviewed-on: https://skia-review.googlesource.com/132926 Commit-Queue: Hal Canary <halcanary@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com>
* remove unused stat tracking from SkArenaAllocGravatar Mike Klein2018-06-07
| | | | | | | | | | | | I'm really only trying to remove the dependency on SkDebugf(). If we want to keep this, I could switch it to take an optional stats callback called in the destructor? Change-Id: I5aa2a58ccc7c8e17e61f29b482b2851be056fa07 Reviewed-on: https://skia-review.googlesource.com/132922 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com>