aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Improve naive SkColorXform to half floatsGravatar msarett2016-07-19
| | | | | | | | | | | | | | | | | | | | | | | | This should give us a good baseline to explore using SkRasterPipeline. A particular colorxform to half float drops from 425us to 282us on my desktop. Color Xform to Half Float (HP z620) Original 425us Trans16 (not 32) 355us Vector Trans16 378us Trans16 + Keep Halfs in Vector 335us Vector Trans16 + Keep Halfs in Vector 282us Final 282us Color Xform to Half Float (Nexus 5X) Original 556us Final 472us BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2159993003 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/2159993003
* Create DCs instead of textures in SRGBMipMaps testGravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2162973002 Review-Url: https://codereview.chromium.org/2162973002
* Create DCs rather than textures in GrConfigConversionEffectGravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2162953002 Review-Url: https://codereview.chromium.org/2162953002
* Simplify random_draw_context used by GLProgramsTestGravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165683002 Review-Url: https://codereview.chromium.org/2165683002
* remove unused MakeFromPixmapGravatar reed2016-07-19
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2158913004 TBR=robertphilips@google.com Review-Url: https://codereview.chromium.org/2158913004
* GN: refactor third_party/gniGravatar mtklein2016-07-19
| | | | | | | | | | | | | | | | | | This fixes the build on Linux (dep on third_party:zlib -> third_party/zlib). I've moved declare_args() {} back to each .gn file... seems like args want to be as local as possible in GN land. Additionally, refactor all the common third_party config and warning flag changes into a template, third_party. This lets it all live together in a .gni: at head unwanted_configs can be in a .gni (it's just a variable) but config("no_warnings") (and thus third_party_configs) cannot, as configs cannot be part of .gni files. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163653002 Review-Url: https://codereview.chromium.org/2163653002
* Start from DC rather than texture in GrTexutreParamsAdjuster copy code.Gravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2158383002 Review-Url: https://codereview.chromium.org/2158383002
* Fix debugging code for tracing texture creationGravatar brianosman2016-07-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164623002 Review-Url: https://codereview.chromium.org/2164623002
* Make SkFont a bit more useableGravatar robertphillips2016-07-19
| | | | | | | | Split out of https://codereview.chromium.org/2163483002/ (Use SkFont in GrStencilAndCoverTextContext) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163633002 Review-Url: https://codereview.chromium.org/2163633002
* Convert readSurfacePixels to use a draw context instead of a textureGravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165523003 Review-Url: https://codereview.chromium.org/2165523003
* Fix GrGLInterface::validate() to check for GL_OES_sample_shading on ES contextsGravatar bsalomon2016-07-19
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2156343004 Review-Url: https://codereview.chromium.org/2156343004
* Delete the legacy SVG parserGravatar fmalita2016-07-19
| | | | | | | | | | Unused. R=reed@google.com,robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154193003 CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review-Url: https://codereview.chromium.org/2154193003
* GN: polyfill is_fuchsiaGravatar mtklein2016-07-19
| | | | | | | | | | | | I'll tell you what, I need to practice typing fuchsia out a few hundred times... I managed to spell it three different ways in this CL. Plus, gn format BUILD.gn BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164453003 Review-Url: https://codereview.chromium.org/2164453003
* Delete SkXMLPullParserGravatar fmalita2016-07-19
| | | | | | | | | Unused & not being built. R=reed@google.com,robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2163463002 Review-Url: https://codereview.chromium.org/2163463002
* Rename variables in SkCanvas::internalSaveLayerGravatar robertphillips2016-07-19
| | | | | | | | | This is split out of https://codereview.chromium.org/2145343005/ (Recast draw_filter_into_device as drawDevice) to, hopefully, make it easier to integrate that CL TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2162883002 Review-Url: https://codereview.chromium.org/2162883002
* Fix the assert and clamping in SkMatrix::get*Scale[s]().Gravatar kolczyk2016-07-19
| | | | | | | | | Follow-up after https://codereview.chromium.org/2143133005/. BUG=skia:4718 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154123003 Review-Url: https://codereview.chromium.org/2154123003
* Fix rewinding bug in SkJpegCodecGravatar msarett2016-07-18
| | | | | | | | | | | | | Performing a sampled and/or subset decode will create some state in SkJpegCodec. If we fail to clean up this state properly, subsequent decodes may try to reuse (and potentailly overflow) the leftover memory. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161593003 Committed: https://skia.googlesource.com/skia/+/4ecb8ab556214c9337f56bc36d50e4d7c655ac7a Review-Url: https://codereview.chromium.org/2161593003
* Rotate bitmap strikes with FreeType.Gravatar bungeman2016-07-18
| | | | | | | | BUG=skia:3490 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2139703002 Committed: https://skia.googlesource.com/skia/+/31e0c1379e6d0ce48196183e295b929af51fa74e Review-Url: https://codereview.chromium.org/2139703002
* Revert of Fix rewinding bug in SkJpegCodec (patchset #1 id:1 of ↵Gravatar msarett2016-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2161593003/ ) Reason for revert: Breaking Google3 build. Will reland corrected version. Original issue's description: > Fix rewinding bug in SkJpegCodec > > Performing a sampled and/or subset decode will create some state > in SkJpegCodec. If we fail to clean up this state properly, > subsequent decodes may try to reuse (and potentailly overflow) > the leftover memory. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161593003 > > Committed: https://skia.googlesource.com/skia/+/4ecb8ab556214c9337f56bc36d50e4d7c655ac7a TBR=djsollen@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/2155163004
* Remove guards in GrGLInterface::validate() for functions that Chromium used ↵Gravatar bsalomon2016-07-18
| | | | | | | | | to not provide. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2158983002 Review-Url: https://codereview.chromium.org/2158983002
* Push GrPipelineBuilder down to the drawBatch calls in the TextContextGravatar robertphillips2016-07-18
| | | | | | | | This is split out of https://codereview.chromium.org/2092893003/ (Retract PipelineBuilder some more) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155983003 Review-Url: https://codereview.chromium.org/2155983003
* [SkXMLParser] Initial text node supportGravatar fmalita2016-07-18
| | | | | | | | | Also disable entity processing. R=bungeman@google.com,robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154853002 Review-Url: https://codereview.chromium.org/2154853002
* Add bounds infoGravatar fmenozzi2016-07-18
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2159853003 Review-Url: https://codereview.chromium.org/2159853003
* check for culled-out paths inside SkDrawGravatar reed2016-07-18
| | | | | | | BUG=629026 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155213002 Review-Url: https://codereview.chromium.org/2155213002
* disable test that fails to compute bounds on nexus 5Gravatar caryclark2016-07-18
| | | | | | | TBR=jcgregario@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2160713003 Review-Url: https://codereview.chromium.org/2160713003
* disable new test since it fails on skia_fastGravatar caryclark2016-07-18
| | | | | | | TBR=jcgregario@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155243002 Review-Url: https://codereview.chromium.org/2155243002
* Tweak a couple things I found confusing in ColorSpaceXform unit tests.Gravatar mtklein2016-07-18
| | | | | | | | | No coverage changes... just refactoring. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2158033002 Review-Url: https://codereview.chromium.org/2158033002
* Remove SkDOM::build(const char doc[], size_t len)Gravatar fmalita2016-07-18
| | | | | | | | | This flavor is unused, and we have the more general SkStream API. R=stephana@google.com,reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154733003 Review-Url: https://codereview.chromium.org/2154733003
* Introduce GrColorSpaceXform, for gamut conversion on texturesGravatar brianosman2016-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | GrTextureAccess optionally includes an instance, computed from the src and dst color spaces. In all common cases (no color space for either src or dst, or same color space for both), no object is allocated. This change is orthogonal to my attempts to get color space attached to render targets - regardless of how we choose to do that, this will give us the source color space at all points where we are connecting src to dst. There are many dangling injection points where I've been inserting nullptr, but I have a record of all of them. Additionally, there are now three places (the most common simple paths for bitmap/image rendering) where things are plumbed enough that I expect to have access to the dst color space (all marked with XFORMTODO). In addition to getting the dst color space, I need to inject shader code and uniform uploading for appendTextureLookup and friends. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154753003 Review-Url: https://codereview.chromium.org/2154753003
* Convert SK Images to new assets formatGravatar borenet2016-07-18
| | | | | | | | | Depends on https://codereview.chromium.org/2162563002/ BUG=skia:5427 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155163002 Review-Url: https://codereview.chromium.org/2155163002
* Fix rewinding bug in SkJpegCodecGravatar msarett2016-07-18
| | | | | | | | | | | | Performing a sampled and/or subset decode will create some state in SkJpegCodec. If we fail to clean up this state properly, subsequent decodes may try to reuse (and potentailly overflow) the leftover memory. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161593003 Review-Url: https://codereview.chromium.org/2161593003
* Initialize fGammaCorrect in DF Path Renderer unit testGravatar bsalomon2016-07-18
| | | | | | | TBR=jvanverth@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2157933003 Review-Url: https://codereview.chromium.org/2157933003
* pathops coincidence and security rewriteGravatar caryclark2016-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most changes stem from working on an examples bracketed by #if DEBUG_UNDER_DEVELOPMENT // tiger These exposed many problems with coincident curves, as well as errors throughout the code. Fixing these errors also fixed a number of fuzzer-inspired bug reports. * Line/Curve Intersections Check to see if the end of the line nearly intersects the curve. This was a FIXME in the old code. * Performance Use a central chunk allocator. Plumb the allocator into the global variable state so that it can be shared. (Note that 'SkGlobalState' is allocated on the stack and is visible to children functions but not other threads.) * Refactor Let SkOpAngle grow up from a structure to a class. Let SkCoincidentSpans grow up from a structure to a class. Rename enum Alias to AliasMatch. * Coincidence Rewrite Add more debugging to coincidence detection. Parallel debugging routines have read-only logic to report the current coincidence state so that steps through the logic can expose whether things got better or worse. More functions can error-out and cause the pathops engine to non-destructively exit. * Accuracy Remove code that adjusted point locations. Instead, offset the curve part so that sorted curves all use the same origin. Reduce the size (and influence) of magic numbers. * Testing The debug suite with verify and the full release suite ./out/Debug/pathops_unittest -v -V ./out/Release/pathops_unittest -v -V -x expose one error. That error is captured as cubics_d3. This error exists in the checked in code as well. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2128633003 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2128633003 Review-Url: https://codereview.chromium.org/2128633003
* Add makeSpecial calls to SkGpuDeviceGravatar robertphillips2016-07-18
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2161533003 Review-Url: https://codereview.chromium.org/2161533003
* Add filename to gradient scrapeGravatar fmenozzi2016-07-18
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2160583002 Review-Url: https://codereview.chromium.org/2160583002
* Revert of remove unused TableMaskFilter (patchset #1 id:1 of ↵Gravatar jcgregorio2016-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2156463002/ ) Reason for revert: Needed for Android: frameworks/base/core/jni/android/graphics/MaskFilter.cpp:5:10: fatal error: 'SkTableMaskFilter.h' file not found Original issue's description: > remove unused TableMaskFilter > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2156463002 > > TBR= > > Committed: https://skia.googlesource.com/skia/+/59779ae8ce316bf8b8082ec2df1683ccd38161f1 TBR=reed@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=skia: Review-Url: https://codereview.chromium.org/2156183002
* In GrShape detect that stroked axis-aligned lines are rrects.Gravatar bsalomon2016-07-18
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2151313002 Review-Url: https://codereview.chromium.org/2151313002
* Test auto mergerGravatar msarett2016-07-18
| | | | | | | | | TBR=djsollen@google.com NOTRY=true BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2158793004 Review-Url: https://codereview.chromium.org/2158793004
* Update SKP versionGravatar update-skps2016-07-17
| | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR= NO_MERGE_BUILDS GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2157823002 Review-Url: https://codereview.chromium.org/2157823002
* Guard SkMatrix::get*Scale[s]() against negative nearly-zero values.Gravatar kolczyk2016-07-16
| | | | | | | BUG=skia:4718 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2143133005 Review-Url: https://codereview.chromium.org/2143133005
* Revert of Rotate emoji with FreeType. (patchset #5 id:80001 of ↵Gravatar bungeman2016-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2139703002/ ) Reason for revert: Causing roll to fail on telemetry_perf_unittests (bencharks.system_health_smoke_test.SystemHealthBenchmarkSmokeTest.system_health.memory_desktop.load:search:taobao (and baidu)) and browser_tests (FindInPageControllerTest.FindInPageSpecialURLS). This is due to triggering the assert in copyFTBitmap SkASSERT(dstMask.fBounds.width() == static_cast<int>(srcFTBitmap.width)); when called from inside the block guarded by if (bitmapTransform.isIdentity()) Original issue's description: > Rotate bitmap strikes with FreeType. > > BUG=skia:3490 > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2139703002 > > Committed: https://skia.googlesource.com/skia/+/31e0c1379e6d0ce48196183e295b929af51fa74e TBR=mtklein@google.com,reed@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:3490 Review-Url: https://codereview.chromium.org/2149253005
* Add support for FuchsiaGravatar abarth2016-07-15
| | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2152273002 [mtklein edit from here down] No public API changes. TBR=reed@google.com Review-Url: https://codereview.chromium.org/2152273002
* Rotate bitmap strikes with FreeType.Gravatar bungeman2016-07-15
| | | | | | | BUG=skia:3490 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2139703002 Review-Url: https://codereview.chromium.org/2139703002
* move responsibility for creating raster-device into pdfGravatar reed2016-07-15
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146333004 NOTRY=True win failure seems unrelated Review-Url: https://codereview.chromium.org/2146333004
* Speculatively fix Android automergerGravatar msarett2016-07-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155713004 Review-Url: https://codereview.chromium.org/2155713004
* Add capability for SkColorXform to output half floatsGravatar msarett2016-07-15
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147763002 CQ_INCLUDE_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot;master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/2147763002
* Dont allocate a new image which already has mip levels, when regenerating ↵Gravatar egdaniel2016-07-15
| | | | | | | | | vulkan mipmaps BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146063008 Review-Url: https://codereview.chromium.org/2146063008
* SkPdf: smaller color serializationGravatar halcanary2016-07-15
| | | | | | | | | | | | | | SkPDFUtils now has a special function (SkPDFUtils::AppendColorComponent) just for writing out (color/255) as a decimal with three digits of precision. SkPDFUnion now has a type to represent a color component. It holds a utint_8, but calls into AppendColorComponent to serialize. Added a unit test that tests all possible input values. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2151863003 Review-Url: https://codereview.chromium.org/2151863003
* SkPDF: Join Positioned TextGravatar halcanary2016-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When N sequential positioned glyphs differ in positions by exactly the advances of the first (N-1) glyphs, join the glyphs into a string rather than changing the text matrix between each glyph draw. Decreases PDF output size by about ~1.4%. Potentially more on text-heavy pages. A single-typeface PDF of an 27kB ASCII document shaped with harfbuzz: before: 187743 Bytes after: 65513 Bytes difference: -65.1% Before: BT /F0 13 Tf 1 0 0 -1 143.5 61 Tm <0029> Tj 1 0 0 -1 150.634765 61 Tm <004C> Tj 1 0 0 -1 154.602050 61 Tm <0055> Tj 1 0 0 -1 160.245117 61 Tm <0048> Tj 1 0 0 -1 167.925781 61 Tm <004B> Tj 1 0 0 -1 176.469726 61 Tm <0052> Tj 1 0 0 -1 184.518554 61 Tm <0056> Tj 1 0 0 -1 190.980468 61 Tm <0048> Tj ET After: BT /F0 13 Tf 1 0 0 -1 0 0 Tm 143.5 -61 Td <0029004C0055> Tj 16.7451171 0 Td <0048004B005200560048> Tj ET Also: update the Text matrix with the `Td` operator, instead of overwriting it with the the `Tm` operator. In the worst case, when every glyph is positioned differently than it's advance, this still makes the command stream smaller: Before: ... 1 0 0 -1 58.328125 660 Tm <0055> Tj 1 0 0 -1 61.609375 660 Tm <004C> Tj 1 0 0 -1 63.828125 660 Tm <0056> Tj ... After: ... 3.140625 0 Td <0055> Tj 3.28125 0 Td <004C> Tj 2.21875 0 Td <0056> Tj ... GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150393002 Review-Url: https://codereview.chromium.org/2150393002
* SkPDF: Always give a default advance for glyphs.Gravatar halcanary2016-07-15
| | | | | | | | | | Prior to this we assumed the default default was 0. It is actually 1000, according to the spec. fixes BUG=skia:5321 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146403005 Review-Url: https://codereview.chromium.org/2146403005