aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* 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
* Fix broken Android framework build.Gravatar djsollen2016-07-15
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2153953002 Review-Url: https://codereview.chromium.org/2153953002
* Add copy (when needed) to SkGpuDevice::asSpecialGravatar robertphillips2016-07-15
| | | | | | | | split out of https://codereview.chromium.org/2145343005/ (Recast draw_filter_into_device as drawDevice) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2157513002 Review-Url: https://codereview.chromium.org/2157513002
* Exclude XML and dependencies from Bazel build.Gravatar benjaminwagner2016-07-15
| | | | | | | | | Depends on https://codereview.chromium.org/2150353002 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2147303004 Review-Url: https://codereview.chromium.org/2147303004
* SkColorSpace::NewICC() warn instead of fail on bad inputGravatar msarett2016-07-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2093193002 Review-Url: https://codereview.chromium.org/2093193002
* Make XML compilation conditional.Gravatar fmalita2016-07-15
| | | | | | | | | Only enabled for gyp-based builds at this time. R=dogben@google.com,mtklein@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150353002 Review-Url: https://codereview.chromium.org/2150353002
* remove unused CreateInfo flagGravatar reed2016-07-15
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2153173002 NOTRY=True Review-Url: https://codereview.chromium.org/2153173002
* Convert Win toolchain to CIPD packageGravatar borenet2016-07-15
| | | | | | | BUG=skia:5427 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2111713003 Review-Url: https://codereview.chromium.org/2111713003
* Add SkGpuDevice::asSpecial entry pointGravatar robertphillips2016-07-15
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2151033003 Review-Url: https://codereview.chromium.org/2151033003
* Add a bench to measure the best way to pack from int to uint16_t with SSE.Gravatar mtklein2016-07-15
| | | | | | | | | | | | | | | | | | | | | | | I measured relative runtimes on my laptop: pack_int_uint16_t_ss… 1036 …e41 1x …se3 1.01x …e2_b 3.01x …e2_a 3.02x I've run into Clang problems with the actual _mm_packus_epi32 instruction, I think, so I'm going to exercise a little cowardice and leave that option disabled for now. The ssse3 version probably looks a little faster than it will be in practice. We'll usually need to load its mask, which here is hoisted out of the bench loop. The two sse2 variants are close enough in speed that I'm tie breaking them on other concerns: the <<16, >>16 version doesn't need any scratch registers or to load any constants, so it wins. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150343002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot Review-Url: https://codereview.chromium.org/2150343002
* Expand _01 half<->float limitation to _finite. Simplify.Gravatar mtklein2016-07-15
| | | | | | | | | | | | | | | | | | | | | | | It's become clear we need to sometimes deal with values <0 or >1. I'm not yet convinced we care about NaN or +-inf. We had some fairly clever tricks and optimizations here for NEON and SSE. I've thrown them out in favor of a single implementation. If we find the specializations mattered, we can certainly figure out how to extend them to this new range/domain. This happens to add a vectorized float -> half for ARMv7, which was missing from the _01 version. (The SSE strategy was not portable to platforms that flush denorm floats to zero.) I've tested the full float range for FloatToHalf on my desktop and a 5x. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2145663003 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,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot Committed: https://skia.googlesource.com/skia/+/3296bee70d074bb8094b3229dbe12fa016657e90 Review-Url: https://codereview.chromium.org/2145663003
* Add getColorSpace to GrTextureProducerGravatar brianosman2016-07-15
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150113002 Review-Url: https://codereview.chromium.org/2150113002
* Probably no need for GM self-tests now that GM doesn't exist.Gravatar mtklein2016-07-14
| | | | | | | | | This is... belated. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154603002 Review-Url: https://codereview.chromium.org/2154603002
* Dust-off SkXMLParserGravatar fmalita2016-07-14
| | | | | | | | | | | | Hook up SkXMLParser to Expat, such that it can actually parse, err, XML. Add a trivial unit test. R=robertphillips@google.com,reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2142893006 Review-Url: https://codereview.chromium.org/2142893006
* remove unused TableMaskFilterGravatar reed2016-07-14
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2156463002 TBR= Review-Url: https://codereview.chromium.org/2156463002
* Fix a bug in the Clamp in X direction tiling.Gravatar herb2016-07-14
| | | | | | | | | | The code mixed up which end of the span was cut and preserved in the sequence of span breaks. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2145193002 Review-Url: https://codereview.chromium.org/2145193002
* Remove GrWrapTextureInBitmap call in SkGpuDevice::drawSpriteWithFilterGravatar robertphillips2016-07-14
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146223003 Review-Url: https://codereview.chromium.org/2146223003
* Build Expat on all platformsGravatar fmalita2016-07-14
| | | | | | | | | | | | | | | | | * bump version to @android-6.0.1_r55 (2.1.1) * add as a dependency to the 'xml' target (for upcoming http://crrev.com/2142893006) * tweak build for Mac, Win: - define HAVE_EXPAT_CONFIG_H (same as in Android.mk) - use -Wno-missing-field-initializers (same as in Android.mk) - suppress MSVS warning 4244 (same as ..cmake/Utilities/cmexpat/expatConfig.h.in) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150603004 R=mtklein@google.com Review-Url: https://codereview.chromium.org/2150603004