aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Cast for fuzzer complaintGravatar robertphillips2016-08-17
| | | | | | | | | Given the cast in the following else block, this isn't the first time we've encountered this. BUG=637187 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2258463002 Review-Url: https://codereview.chromium.org/2258463002
* Add alternative ambient shadow method to Android shadow sampleGravatar jvanverth2016-08-17
| | | | | | | | TBR=bsalomon@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249973003 Review-Url: https://codereview.chromium.org/2249973003
* SkPDF: pull out SkPDFMakeCIDGlyphWidthsArray.cppGravatar halcanary2016-08-17
| | | | | | | Extract from inside SkPDFFont.cpp GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2251803002 Review-Url: https://codereview.chromium.org/2251803002
* move private test for sect_with_horizontal into unittestsGravatar reed2016-08-17
| | | | | | | BUG=638575 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250353004 Review-Url: https://codereview.chromium.org/2250353004
* Add mssa configs for vulkan, and simple bug fixGravatar egdaniel2016-08-17
| | | | | | | BUG=skia:5127 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2251473002 Review-Url: https://codereview.chromium.org/2251473002
* fix fuzzGravatar caryclark2016-08-17
| | | | | | | | TBR=reed@google.com BUG=638496 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250413002 Review-Url: https://codereview.chromium.org/2250413002
* SkLiteDL: thread the original canvas matrix through for SetMatrix::Draw().Gravatar mtklein2016-08-16
| | | | | | | | | | | | | | | The SkLiteDL is recorded in some identity space (imagine, SkMatrix::I()), but played back in a different one (here named SkMatrix original). Any calls to setMatrix() need to be made relative to this new space. All other ops already operate in relative coordinates. This should let us not fiddle with setMatrix(). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2247353003 Review-Url: https://codereview.chromium.org/2247353003
* Revert of Start using vertex attributes for nine-patch blurred rrect draws ↵Gravatar robertphillips2016-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #8 id:140001 of https://codereview.chromium.org/2245653002/ ) Reason for revert: ?? Original issue's description: > Start using vertex attributes for nine-patch blurred rrect draws > > Calved off: > https://codereview.chromium.org/2243133002/ (Pull handling of blurred circles out of GrRRectBlurEffect::Make) > https://codereview.chromium.org/2249463002/ (Update blurred rrect mask filter creation method to also handle caching) > https://codereview.chromium.org/2248533002/ (Update ComputeBlurredRRectParams to compute all the parameters needed for occluded blurred rrect ninepatch draws) > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2245653002 > > Committed: https://skia.googlesource.com/skia/+/087905a730241939da320092543c19dc06d5a7b4 TBR=bsalomon@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2250543004
* Add test for platform encoders, turn off platform encoders by defaultGravatar msarett2016-08-16
| | | | | | | | | | | | | Clients that like WIC and CG can still use them. And we can be confident about that, since we now test WIC and CG. Let Skia always use our own encoders by default, so we can do cool, custom things on all platforms. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250683003 Review-Url: https://codereview.chromium.org/2250683003
* Fix bug in cubic derivative coefficient with missing parensGravatar hstern2016-08-16
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2242603002 Review-Url: https://codereview.chromium.org/2242603002
* Start using vertex attributes for nine-patch blurred rrect drawsGravatar robertphillips2016-08-16
| | | | | | | | | | | Calved off: https://codereview.chromium.org/2243133002/ (Pull handling of blurred circles out of GrRRectBlurEffect::Make) https://codereview.chromium.org/2249463002/ (Update blurred rrect mask filter creation method to also handle caching) https://codereview.chromium.org/2248533002/ (Update ComputeBlurredRRectParams to compute all the parameters needed for occluded blurred rrect ninepatch draws) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2245653002 Review-Url: https://codereview.chromium.org/2245653002
* Remove SkPreprocessorSeq.h and SkTypedEnum.h.Gravatar bungeman2016-08-16
| | | | | | | | These were added to allow the use of typed enums before typed enums were available on all platforms. Now that typed enums are available, just use them directly. Review-Url: https://codereview.chromium.org/2254513002
* SkPDF: Font names need escapingGravatar halcanary2016-08-16
| | | | | | NOTRY=true Review-Url: https://codereview.chromium.org/2250763002
* SkPDF: eliminate SkPDFCIDfont classGravatar halcanary2016-08-16
| | | | | | | | | get_glyph_widths() and set_glyph_widths() combined. set_glyph_widths() now takes a SkPDFGlyphSet*. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2244173005 Review-Url: https://codereview.chromium.org/2244173005
* fix fuzz bugGravatar caryclark2016-08-16
| | | | | | | | TBR=reed@google.com BUG=637968, 638002 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2250573003 Review-Url: https://codereview.chromium.org/2250573003
* SkPDF: SkPDFFont class changesGravatar halcanary2016-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkPDFFont: * inline some one-line methdods. - SkPDFFont::typeface() - SkPDFFont::fontInfo() - SkPDFFont::firstGlyphID() - SkPDFFont::lastGlyphID() - SkPDFFont::getFontDescriptor() * de-virtualize some methods: - SkPDFFont::getType() - SkPDFFont::multiByteGlyphs() * Constructor takes more arguments: fontType, multiByteGlyphs * re-order fields (pointers before shorts) * use sk_sp<T> more, T* less SkAdvancedTypefaceMetrics: * SkAdvancedTypefaceMetrics::fFont now a uint8_t * other enumes are sized. * SkAdvancedTypefaceMetrics::fStyle now big enough. * remove use of SkTBitOr, replaced with fancy templates No public API changes. TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246903002 Review-Url: https://codereview.chromium.org/2246903002
* SkLiteDL: remove freelisting, add reset() and SKLITEDL_PAGE knob.Gravatar mtklein2016-08-16
| | | | | | | | | | | | We think Android can cache these better than a global freelist allows. This removes the freelisting but adds reset() to allow reuse. I took the opportunity to abstract 4096 as a define SKLITEDL_PAGE. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2248693004 Review-Url: https://codereview.chromium.org/2248693004
* Add onDrawBitmapLattice(), avoid unnecessary bitmap->image copyGravatar msarett2016-08-16
| | | | | | | | | | | | | out/Release/nanobench --match Lattice --config gpu --ms 3000 3.42ms -> 17.2us For reference, a loop over drawBitmapRects (which is what Android currently does) is about 13us. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2205273003 Review-Url: https://codereview.chromium.org/2205273003
* Update ComputeBlurredRRectParams to compute all the parameters needed for ↵Gravatar robertphillips2016-08-16
| | | | | | | | | | occluded blurred rrect ninepatch draws This is split out of: https://codereview.chromium.org/2245653002/ (Start using vertex attributes for nine-patch blurred rrect draws) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2248533002 Review-Url: https://codereview.chromium.org/2248533002
* 32-bit fast hash, tidy up murmur3 a bitGravatar mtklein2016-08-16
| | | | | | | | | | | | | | Nothing too surprising in the new 32-bit x86 hash. It's about half speed of the 64-bit variant, just as you'd expect. Using unaligned_load like the others makes the may_alias parts of murmur3 moot. I've updated some of the terms in the murmur hash to read consistently with the others. The existing hashes are the same speed and produce the same hashes. In case this is not obvious, all three hash functions produce different hashes. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2251773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/2251773002
* Improvements for circluar blurs in GPU backend.Gravatar bsalomon2016-08-16
| | | | | | | | | | | Use half plane approximation for small blur of a large circle. This reduces the number of textures used and also avoids numerical issues with large circle radii. Make GrCircleGradientEffect use fixed sized textures. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2242973002 Review-Url: https://codereview.chromium.org/2242973002
* Reducing number of calls to GLSL mix() from two to one reduces frame render ↵Gravatar fmenozzi2016-08-16
| | | | | | | | | time by 21% BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2247113003 Review-Url: https://codereview.chromium.org/2247113003
* Remove isOpaque from SkSpecialImage, just use alpha typeGravatar brianosman2016-08-16
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246193002 Review-Url: https://codereview.chromium.org/2246193002
* simplify GrTextureAdjuster given there is only one subclassGravatar reed2016-08-16
| | | | | | | | | Intended as a pre-cl for https://codereview.chromium.org/2241353002# BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2242373002 Review-Url: https://codereview.chromium.org/2242373002
* Fix WIC encoder to support kJPEG_TypeGravatar msarett2016-08-15
| | | | | | | | | | | | | | | | | | (1) Add support for kJPEG to WIC (2) Add encoding test. (3) Turn on WIC jpeg encoder on Windows and CG jpeg encoder on Mac. A follow-up may make Skia's encoders the default on all platforms. But, in order to do that, I think we need to write better encoding unit tests for CG and WIC. BUG=skia:3969 BUG=skia:5632 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2245453002 Committed: https://skia.googlesource.com/skia/+/b3a7ef1fc0adc24859d2498aee54d3ec2cbcac3a Review-Url: https://codereview.chromium.org/2245453002
* SkPDF: unify drawText and drawPosTextGravatar halcanary2016-08-15
| | | | | | | | | | | | | Motivation: a later CL will add drawTextBlob() (after https://crrev.com/2084533004 lands). This CL is designed with that change in mind. Also fewer redundant lines of code. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241683005 Committed: https://skia.googlesource.com/skia/+/6059dc32fe36358175cb81541c91e74a2a7e771a Review-Url: https://codereview.chromium.org/2241683005
* Revert of SkPDF: unify drawText and drawPosText (patchset #2 id:40001 of ↵Gravatar robertphillips2016-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2241683005/ ) Reason for revert: I believe this is breaking the Google3 roll Original issue's description: > SkPDF: unify drawText and drawPosText > > Motivation: a later CL will add drawTextBlob() (after > https://crrev.com/2084533004 lands). This CL is designed > with that change in mind. Also fewer redundant lines of > code. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241683005 > > Committed: https://skia.googlesource.com/skia/+/6059dc32fe36358175cb81541c91e74a2a7e771a TBR=bungeman@google.com,halcanary@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2248923002
* Attempt to throw away rrect clips of rrects.Gravatar bsalomon2016-08-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241273003 Review-Url: https://codereview.chromium.org/2241273003
* Fix compile warning on MSVC-vulkan (VkDeviceSize -> size_t)Gravatar brianosman2016-08-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246183002 Review-Url: https://codereview.chromium.org/2246183002
* Revert of Fix WIC encoder to support kJPEG_Type (patchset #3 id:140001 of ↵Gravatar msarett2016-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2245453002/ ) Reason for revert: Broken Windows bot. Original issue's description: > Fix WIC encoder to support kJPEG_Type > > (1) Add support for kJPEG to WIC > (2) Add encoding test. > (3) Turn on WIC jpeg encoder on Windows and CG jpeg > encoder on Mac. > > A follow-up may make Skia's encoders the default on all > platforms. But, in order to do that, I think we need > to write better encoding unit tests for CG and WIC. > > BUG=skia:3969 > BUG=skia:5632 > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2245453002 > > Committed: https://skia.googlesource.com/skia/+/b3a7ef1fc0adc24859d2498aee54d3ec2cbcac3a TBR=mtklein@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:3969 Review-Url: https://codereview.chromium.org/2246203002
* Print error from driver when shader compiler failsGravatar bsalomon2016-08-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2248853002 Review-Url: https://codereview.chromium.org/2248853002
* Fix WIC encoder to support kJPEG_TypeGravatar msarett2016-08-15
| | | | | | | | | | | | | | | | | (1) Add support for kJPEG to WIC (2) Add encoding test. (3) Turn on WIC jpeg encoder on Windows and CG jpeg encoder on Mac. A follow-up may make Skia's encoders the default on all platforms. But, in order to do that, I think we need to write better encoding unit tests for CG and WIC. BUG=skia:3969 BUG=skia:5632 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2245453002 Review-Url: https://codereview.chromium.org/2245453002
* Revert of add parallel public API for recording SkLiteDL. (patchset #1 id:1 ↵Gravatar mtklein2016-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/2246893002/ ) Reason for revert: looking like we won't need this Original issue's description: > add parallel public API for recording SkLiteDL. > > The API is restricted to pretty much just what Derek calls, > but it's enough that we can switch testing over to use it. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246893002 > > Committed: https://skia.googlesource.com/skia/+/ced26a3d6b77d3a6744a8ccb8eff23eda45fc867 TBR=djsollen@google.com,reed@google.com,mtklein@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2243393002
* Update blurred rrect mask filter creation method to also handle cachingGravatar robertphillips2016-08-15
| | | | | | | | | | | The caching of the mask will also be required for the vertex attribute path so I moved that into the helper. The parameters computed by ComputeBlurredRRectParams will be needed to construct the coverage geometry by the vertex attribute path so I moved that out of the helper. This is split out of https://codereview.chromium.org/2245653002/ (Start using vertex attributes for nine-patch blurred rrect draws) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249463002 Review-Url: https://codereview.chromium.org/2249463002
* add gm that exercises compose shader allocationsGravatar caryclark2016-08-15
| | | | | | | | | | | | This gm triggers the assert in SkSmallAllocator.h commented out by this CL. PDFium constructs shaders that resemble the GM. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249703002 Review-Url: https://codereview.chromium.org/2249703002
* SkPDF: unify drawText and drawPosTextGravatar halcanary2016-08-15
| | | | | | | | | | | | Motivation: a later CL will add drawTextBlob() (after https://crrev.com/2084533004 lands). This CL is designed with that change in mind. Also fewer redundant lines of code. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241683005 Review-Url: https://codereview.chromium.org/2241683005
* just add SkLiteDL::empty()Gravatar mtklein2016-08-15
| | | | | | | | | TBR=djsollen@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249713002 Review-Url: https://codereview.chromium.org/2249713002
* LightingFP now supports multiple directional lightsGravatar dvonbeck2016-08-15
| | | | | | | BUG=skia:5518 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2239933004 Review-Url: https://codereview.chromium.org/2239933004
* Convert GrAppliedClip interface to builder styleGravatar csmartdalton2016-08-15
| | | | | | | | | | | | | GrAppliedClip was about at its limit for how many "make" functions it could have. Window rectangles would push it over the edge. This change makes it so GrDrawTarget supplies the original draw bounds to the constructor, and then GrClip adds the various required clipping techniques. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246113002 Review-Url: https://codereview.chromium.org/2246113002
* Fix 4444 on Vulkan devices who don't support RGBA_4444Gravatar egdaniel2016-08-15
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2238563002 Committed: https://skia.googlesource.com/skia/+/637b3bf2b9c10398d823bd015a722842d4f2f971 Review-Url: https://codereview.chromium.org/2238563002
* Pull handling of blurred circles out of GrRRectBlurEffect::MakeGravatar robertphillips2016-08-15
| | | | | | | | | | GrRRectBlurEffect is going away so this process can't live there anymore. Split out of: https://codereview.chromium.org/2245653002/ (Start using vertex attributes for nine-patch blurred rrect draws) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2243133002 Review-Url: https://codereview.chromium.org/2243133002
* Revert of increase small allocator limit to encompass compose shader ↵Gravatar caryclark2016-08-15
| | | | | | | | | | | | | | | | | | | | | | | (patchset #1 id:1 of https://codereview.chromium.org/2234423005/ ) Reason for revert: Increase in stack broke Google3 Original issue's description: > increase small allocator limit to encompass compose shader > > R=reed@google.com > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2234423005 > > Committed: https://skia.googlesource.com/skia/+/8c200694f8eec5f623b3934b85c31dbb382be12c TBR=reed@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2244293002
* Optimize color xforms when src and dst are matchingGravatar msarett2016-08-15
| | | | | | | | | | | | | | | Useful when: (1) Client does not realize src and dst match (calls color xform anyway). (2) Client wants half floats, src and dst have matching gamuts (3) Client wants premul (done correctly in linear space), src and dst have matching gamuts. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2206403003 Review-Url: https://codereview.chromium.org/2206403003
* Fix copying of data in vulkan testing textureGravatar egdaniel2016-08-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2248703002 Review-Url: https://codereview.chromium.org/2248703002
* add parallel public API for recording SkLiteDL.Gravatar mtklein2016-08-15
| | | | | | | | | | The API is restricted to pretty much just what Derek calls, but it's enough that we can switch testing over to use it. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246893002 Review-Url: https://codereview.chromium.org/2246893002
* Add specialized code for hard stop gradients on GPUGravatar fmenozzi2016-08-15
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2223203003 Committed: https://skia.googlesource.com/skia/+/0c63006b88a16e3418d92852a62771615799839d Committed: https://skia.googlesource.com/skia/+/99818d69372d29a139935cfe5c379e491432931b Committed: https://skia.googlesource.com/skia/+/2a4959181fc98d5d7ee862e7cd1c7993b3343be6 Review-Url: https://codereview.chromium.org/2223203003
* increase small allocator limit to encompass compose shaderGravatar caryclark2016-08-14
| | | | | | | R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2234423005 Review-Url: https://codereview.chromium.org/2234423005
* Webp has_alpha is a hint onlyGravatar msarett2016-08-14
| | | | | | | | | | | | The has_alpha bit on webps is a hint only. We are correct to always assume that the image may have alpha. https://groups.google.com/a/webmproject.org/forum/#!msg/webp-discuss/2rFPKOzxuSM/uabYhmSNJAAJ TBR=scroggo@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2243153002 Review-Url: https://codereview.chromium.org/2243153002
* Assert fDeviceClipBounds is always empty when clip is emptyGravatar msarett2016-08-14
| | | | | | | | | | | | | | | | I've fixed a few issues where this assert triggers. The nastiest case is when the client sets the clip to a strange version of an empty rect (Ex: L,T,R,B=0,0,0,10). I think I've made sufficient fixes so that fDeviceClipBounds is always empty when clip is empty. Let's test it though. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246503003 Review-Url: https://codereview.chromium.org/2246503003
* Prevent overflows when using gamma_alloc_sizeGravatar gogil2016-08-14
| | | | | | | BUG=636268 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2230163002 Review-Url: https://codereview.chromium.org/2230163002