Commit Graph

45888 Commits

Author SHA1 Message Date
Brian Salomon
d7436a37ff Revert "Rename GrSimpleTextureEffect->GrTextureEffect"
This reverts commit 90673ec665.

Reason for revert: Causes metal bot failures

Original change's description:
> Rename GrSimpleTextureEffect->GrTextureEffect
>
> It will become less simple.
>
> Change-Id: I409d0faba386597ae05738273d5ff773501eb358
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262383
> Auto-Submit: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,brianosman@google.com

Change-Id: Id25c9cde3c2048149409745f163e42c588de70c1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262514
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-07 15:07:09 +00:00
Mike Klein
91e0d75269 rm gm/skvm.cpp
It's not that useful now that we're drawing real stuff,
and kind of annoying to keep updating its Fade shader.

Change-Id: Ie8252b9a189bd38b150647e4a93b66b765c7ef97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262536
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-07 13:34:49 +00:00
Mike Klein
3ab7128dfa thread an SkArenaAlloc into shaders
We'll need something like this to extend the lifetime of our
SkBitmapController::State (and the bitmap and mipmaps it holds)
to match the lifetime of the blitter.  This is particularly
important particularly for kMedium where we're not sampling off
the original image.

Not sure which other effects will need this sort of thing, if any.
I think gradients would just write the colors directly into uniforms.

Change-Id: Idefe620f88113ed436e04a101195b27aec1230db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262522
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 13:28:10 +00:00
skia-autoroll
c21316a73b Roll third_party/externals/angle2 1031d2c65b5e..51e653f03f26 (10 commits)
1031d2c65b..51e653f03f

git log 1031d2c65b5e..51e653f03f26 --date=short --first-parent --format='%ad %ae %s'
2020-01-07 shrekshao@google.com Suppress flaky failure with MacOS/NVIDIA/OPENGL
2020-01-07 j.vigil@samsung.com EGL: Implement EGL_ANDROID_framebuffer_target
2020-01-06 courtneygo@google.com Vulkan: Update dEQP source for test fixes
2020-01-06 syoussefi@chromium.org Vulkan: No line raster emulation code if extension
2020-01-06 syoussefi@chromium.org GL: Enable EXT_gpu_shader5
2020-01-06 flibitijibibo@gmail.com Fix UWP build
2020-01-06 ericbinet@google.com Add missing steps in DevSetup
2020-01-06 flibitijibibo@gmail.com Fix GGP build
2020-01-06 lehoangq@gmail.com Metal: fix vertex attribute's conversion lost after changing buffer binding.
2020-01-06 j.vigil@samsung.com update date comments to 2020

Created with:
  gclient setdep -r third_party/externals/angle2@51e653f03f26

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC jvanverth@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: jvanverth@google.com
Change-Id: Ia2fc172bacb133d1be1e0152d89ed7a660ea762c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262547
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:44:09 +00:00
skia-autoroll
4e78c8c8a0 Roll third_party/externals/swiftshader 10a900e5ffaf..068dd89cab31 (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/10a900e5ffaf..068dd89cab31

git log 10a900e5ffaf..068dd89cab31 --date=short --first-parent --format='%ad %ae %s'
2020-01-06 bclayton@google.com SPIRV-Tools: Update Android.bp to fix build.
2020-01-06 capn@google.com Limit Vulkan memory allocation size to 1 GiB
2020-01-06 bclayton@google.com IDs: Move inline impls below class.
2020-01-06 bclayton@google.com Pipeline: Store builtins on SpirvRoutine...
2020-01-06 bclayton@google.com Style: clang-format the tests source too
2020-01-06 bclayton@google.com Merge changes Id1120acb,Ifc6afcda,I8b5da04a,I9389ad9e,I35d60f68
2020-01-06 sugoi@google.com Improve 1010102 blend precision

Created with:
  gclient setdep -r third_party/externals/swiftshader@068dd89cab31

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC jvanverth@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: jvanverth@google.com
Change-Id: I41f5ab437b07b361f2801c346eb3e53b0bcf7316
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262546
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:39:49 +00:00
skia-autoroll
da1faeb004 Roll ../src 3beaf136b459..55a27186b7de (337 commits)
3beaf136b4..55a27186b7


Created with:
  gclient setdep -r ../src@55a27186b7

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC jvanverth@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: jvanverth@google.com
Change-Id: If5691876c2deed214593b9537da9758069e40e22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262545
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:35:19 +00:00
recipe-roller
c1e1fbbe13 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/1961043388e63c48946322de077bebbb333fde6a Revert "Move httplib2 import above third_party." (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic45454ce1e53fc3c8234b2f76d54b64cc0b3877f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262511
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-07 04:10:49 +00:00
recipe-roller
807bdcef66 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/fa40bfa39bf0399570558e24bd3f8680a8130ac2 Update "git cl format --python" to default to PEP-8 (agrieve@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I323c66981e556d17a739253c8b496fd27f3fd76c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262509
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-07 03:01:47 +00:00
recipe-roller
4e2becf84d Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/cd1331ea69ccdfcecc6ab07eee8ffaf21824a7c6 Move httplib2 import above third_party. (morchard@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib6de529a7cbae8430c38322032271b71b649063d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262506
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-07 02:27:07 +00:00
Mike Klein
4bc86d590e handle unpremul in skvm blitter
- Centralize unpremul() and premul().
- Handle unpremul surfaces.
- Handle unpremul images.

Change-Id: I99967c66f73fefe5940bb17d1ecc3e6d85559cf8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262504
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 01:56:07 +00:00
recipe-roller
d9ecf8bb93 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/d0de3a7be93f5bba16bc9bcca9823668e0d91d35 Revert "depot_tools: Remove third_party/httplib2." (dnfield@google.com)
recipe_engine:
  https://crrev.com/bf4885534ce2e5214c7ef1a015296d79bfab6b7b [resultdb] Log output (nodir@chromium.org)
  https://crrev.com/f46d187695175b7a4cd0a76ef58b364890499f2d Minor clean-up of docs (garymm@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I2652cc4af9d37bd164590988e375455cd246bdf2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262502
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-07 01:41:37 +00:00
Ben Wagner
8969a1641b Add missing Metal jobs
Change-Id: If571718c1f159762bf87ab41066a691505c30504
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261186
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-01-06 23:19:07 +00:00
Mike Klein
d67a5c3090 support kDecal in skvm image shader
This turns out to be way easier than the SkRP version.
Kinda just does what you'd hope.

Change-Id: I71e404b989f8420a20b0e6c7f11fd29bb7f49f5b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262456
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-06 22:43:38 +00:00
Mike Klein
25480bf350 expand skvm image shader
- Specialize on typical matrix types.
- Expand image formats to match what SkVMBlitter can draw to.
- Add floor() and abs(), and use them for repeat and mirror.

Change-Id: Ieab539681f5f9fddf1617bb72405ed54fa42de4d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262439
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-06 22:19:17 +00:00
Herb Derby
14d9c31a2c Make fBrokenRun local to doRegen.
If doRegen is called and fCurrGlyph > 0, this implies that the previous call
to doRegen exited early on a code == GrDrawOpAtlas::ErrorCode::kTryAgain.
We can calculate brokenRun directly from the fact doRegen is called with
fCurrGlyph > 0.

Change-Id: I1ee7b88e59708ae329c2204c1d7779a295cd9d33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262378
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-01-06 22:02:47 +00:00
Brian Salomon
90673ec665 Rename GrSimpleTextureEffect->GrTextureEffect
It will become less simple.

Change-Id: I409d0faba386597ae05738273d5ff773501eb358
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262383
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-01-06 21:49:44 +00:00
Ben Wagner
6ea680581f Remove Win2016 jobs.
Change-Id: Ibba3e8f42928d19eb12ee15ca9937a043984977f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262224
Commit-Queue: Ravi Mistry <rmistry@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2020-01-06 21:03:44 +00:00
Brian Salomon
44207f34ea Remove SkIRect::EmptyIRect
Replace with SkIRect::MakeEmpty.

Docs-Preview: https://skia.org/?cl=262382
Change-Id: I001cc76f4af223490be3734bb461ab4fca36d710
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262382
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-01-06 20:57:56 +00:00
Herb Derby
83b907ef4f Move the exit code to a common switch
Clean up the control flow, to try to see the invariants more clearly.

Change-Id: Ie07090950650166e99dff334e85189fe581a5efe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262235
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-01-06 20:56:54 +00:00
Brian Osman
8783b78b38 Add a few more SkRuntimeEffect unit tests
Validating that only certain types are allowed as in or uniform.

Change-Id: I941da448bffec06158e67fbf653833846d9fe3db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262222
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-06 20:32:54 +00:00
Brian Salomon
7165ca9fc5 Revert "Revert "Clean up GrSimpleTextureEffect.""
Adds workaround for swiftshader bug.

This reverts commit 460b6c1dd8.

Change-Id: I703789c9754fed3ecbf65a08b509cb1fc0013415
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262377
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-01-06 20:04:15 +00:00
Mike Klein
6dbd7ff34a first foray into SkVM image shaders
Basic support for clamp/clamp/nearest/RGBA-8888/premul images.

A couple little changes to make this work:
   - add pixel-center offset to shader (x,y)

   - change the signature of gather??() calls to work
     more naturally with how we let effects build uniforms.
     Instead of gathering directly from one of the program
     arguments, load the gather base pointer off another
     uniforms pointer, just like any other uniform.

   - remove the default argument to uniform??() so that
     they parallel the new gather??() calls more closely.
     There was only one place that was using the default
     and I think it's clearer as an explicit 0 offset.

   - centralize some more helpers onto skvm::Builder so
     we can use the in both SkVMBlitter and SkImageShader.

Some diffs:
   - very, very small color diffs probably due to slightly
     different math converting between byte and float or blending;
   - small sampling coordinate diffs where skvm + SkRP agree,
     and the legacy shaders disagree.  That's fine by me.

Change-Id: I72634e7fed4f13e6cb41b8067104760f392ea3bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262368
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-06 19:45:53 +00:00
recipe-roller
4f72f750d3 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/a81450253f8880c27e2859f271fa6fe00c6c7104 depot_tools: Use mock from vpython (or unittest.mock) instead of third_party/mock (ehmaldonado@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib28607c0206a632641312b0b9ffc896527681b9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262376
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-06 19:28:13 +00:00
Brian Salomon
d19cd76e54 Remove unused varying type param from GrGLSLShaderBuilder texture methods.
Change-Id: Icbe887266d201bc6d64555f0e793765bf641e4b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262230
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
2020-01-06 19:09:53 +00:00
Brian Osman
fffb993f06 Remove SkRuntimeShaderFactory
Client code has been migrated to SkRuntimeEffect.

Change-Id: Ied7d7bdf2a4e2bc1b9547fa5284a0b0a938c034f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262143
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-06 19:05:19 +00:00
Robert Phillips
41acc0ecb8 Add GrCompressedDimensions helper function
Bug: skia:9745
Change-Id: I75b5ba5767d354346694886adbfc55aaac8b0107
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262231
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-01-06 19:03:23 +00:00
Chris Dalton
e7ee06926f Move "set_path_pt" from SampleAAGeometry into ToolUtils
Copies the function wholesale so it can be reused by other tooling
code.

Change-Id: I8b8f8ceb7dabb12e9e67b8339735f618dc2ccf2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262348
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-01-06 19:00:13 +00:00
Kevin Lubick
08bf8f79f1 [canvaskit] Remove support for T1 fonts and reduce code size
We were previously building FreeType2 with the psnames module,
which included large tables of glyphnames [1]. These were only
used in code related to PDF (and only when outputting Type 1
fonts, which is very rare).

Even though the PDF backend isn't in CanvasKit, the compiler
couldn't throw away these massive tables (about 80k in all)
of strings. Since these tables were only used for T1 fonts,
it made sense to tell FreeType not to include the rest of the
T1 related code, which saved about 55k more.

If, one day, we add in support for the PDF backend to CanvasKit,
SK_PDF_DO_NOT_SUPPORT_TYPE_1_FONTS is likely something we'll
want to define.

The roll-freetype.sh is inspired by a script of the same name
in the Chromium repo and aids in the updating of freetype
and our forked config files.

[1] 0a3d2bb99b/src/psnames/pstables.h (629)

Bug: skia:9733
Change-Id: I359bab4184587cbe91400661fb012eac1a601a83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262232
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-01-06 18:49:41 +00:00
Kevin Lubick
dbc53a8af3 Make tracing data a compile-time option
This saves about 32kb uncompressed, 21kb gzipped from CanvasKit.

This would also save about 11kb from a Flutter build.

Bug: skia:9733
Change-Id: I0a21b7279a73c692ea39aa28ac00d70d24b70373
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262218
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2020-01-06 18:37:13 +00:00
recipe-roller
ce09fb4396 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/91a6f338481e8ba03eaa2623b910675819b6c41f Fix the --no-python flag for git cl format. (gbeaty@chromium.org)
  https://crrev.com/ed0cc5f6fd8ee57e9219f840d492de3109ba6d83 Add flag to "git cl format" to avoid invoking clang-format. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8f817c9c9daa3b8e723256da631a284dded308d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262362
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-06 18:17:23 +00:00
Florin Malita
a3936c8d29 [skottie] cleanup: move transform & camera adapters to own CUs
Shuffling code around, no functional changes.

TBR=
Change-Id: I9a045fa643fbcf52c58e1378d4d4c1566c0d35d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262225
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-01-06 18:16:14 +00:00
Julia Lavrova
567f25a918 Fix a bug with unresolved text
Change-Id: I2226f2a72d91bb83145c7165d98a4ee132f06184
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262223
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-01-06 17:44:53 +00:00
Chris Dalton
c887733740 Add a commandline flag to force offscreen rendering in viewer
Change-Id: I0d6dd3625a8571c09af7557b1727812bba2a9ee4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262355
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-01-06 17:28:23 +00:00
recipe-roller
94ffb32427 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/f392703d63117ea1b135b94c9d327002def60caf Exclude ES imports from long lines check (dbeam@chromium.org)
  https://crrev.com/7fd6347be3a19304f38b663de63dc81b5708e282 depot_tools: Remove third_party/httplib2. (ehmaldonado@google.com)
  https://crrev.com/ecc27074d22f73fd807c18245c629b61fddabd0b presubmit_support: Add timeout to presubmit tests. (ehmaldonado@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3bfeb0b7ba0228d594b843cf41a29291016ba261
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262352
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-06 17:22:51 +00:00
Brian Salomon
43cbd7229f Handle insane number of glyphs in GrAtlasTextOp.
Cap size of draws by vertex buffer size.

Remove size limit in combining since we now enforce a limit
when preparing draws. (This limit wasn't effective in bug
repro scenario as the large number of glyphs are in a single
run).

Fix another bug discovered along the way: We increase the
number of proxies in a FixedDynamicState after having recorded
draws. However, the draws take refs on the proxies in FDS and
unref them when destroyed. By adding the proxies late we cause
the ref count to underflow. (This needs a more systematic fix
outside the scope of this change).

Bug: chromium:1018511
Change-Id: I79fe446d97c573196653a18792462bd46b9ac4c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262001
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-01-06 17:22:41 +00:00
Mike Klein
c0724ec00a minor SkVMBlitter TODOs
Most interesting thing is that we can use SkColorFilterShader with a
no-op color filter to apply alpha after the shader.  We added that
feature to allow us to fold color filters into the shader, but it works
equally well to fold in alpha too.

The rest is basically deleting TODOs as unimportant.

Change-Id: Ib572d2f37b74ef1093c1e99ddee3642d4cfa5a76
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262344
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-06 17:17:41 +00:00
Mike Klein
bddaf4b27a in gm/skvm.cpp, Fade doesn't need to wrap a shader
Not sure why I had it wrapping a shader,
which was constant yellow so always completely overwritten.

Change-Id: Id8db93b767a2897c9032523cfb3a1146db63a644
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262346
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-06 16:25:21 +00:00
Joe Gregorio
4679cb8557 Don't use CIPD_PKG_CPYTHON for P30.
Bug: skia:9602
Change-Id: Ia57b3f23502cff829879c3035c4ae37a4145a65b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262220
Auto-Submit: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-01-06 16:00:11 +00:00
recipe-roller
6be45ec41f Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/d459837f12b4d8d7e032c9b474d9a23f6935ff35 [swarming] Add bot_id property to TaskResult (athom@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ide04b4f7becb6ec01f366e8760f533e451b591cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262338
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-06 15:30:11 +00:00
Kevin Lubick
31f2df0420 [canvaskit] Update test to use correct metrics
Followup from https://skia-review.googlesource.com/c/skia/+/260778

Change-Id: I3faf8aa527d8cc356a0d298aac815ac11203a2aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262219
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2020-01-06 15:28:36 +00:00
Julia Lavrova
53c1447848 Small bug fixes: leading spaces affect all width measurements,
longest line and so on.

Change-Id: I497022269ad38e3cf6a1920f67b1d9217aa6d805
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260778
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-01-06 14:57:41 +00:00
Kevin Lubick
f3d6c36de3 [canvaskit] Add npm release target to ship smaller binaries
Moves RTShader to be built behind a flag (and not shipped
to npm [yet])

Bug: skia:9733
Change-Id: Ibdf965bbf3c0191ab7d9689168b1a099488c2ca3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262142
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-01-06 13:13:06 +00:00
Kevin Lubick
933ea8c301 [canvaskit] Add build flag for pathops
This fixes up some other build flag options:
 - font-specific js code is correctly omitted when no_font is set
 - SKP serialization is only compiled in debug (or with flag).


Bug: skia:9733
Change-Id: Ifdbd2ddac278cfcefa842f6d4826d5429b6ed64b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262137
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-01-06 13:10:43 +00:00
skia-autoroll
f1db2661f1 Roll third_party/externals/angle2 1fdf6ca5141d..1031d2c65b5e (5 commits)
1fdf6ca514..1031d2c65b

git log 1fdf6ca5141d..1031d2c65b5e --date=short --first-parent --format='%ad %ae %s'
2020-01-04 kbr@chromium.org Upstream Mac logging changes from WebKit.
2020-01-03 shrekshao@google.com Workaround EXT_texture_norm16 for OpenGL ES drivers
2020-01-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src e4a2b7f22782..2be3fe0f8471 (7 commits)
2020-01-03 syoussefi@chromium.org Vulkan: Support vertex-only line emulation draw with xfb
2020-01-03 syoussefi@chromium.org Vulkan: Correct error message for VK_ERROR_INVALID_SHADER_NV

Created with:
  gclient setdep -r third_party/externals/angle2@1031d2c65b5e

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC jvanverth@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: jvanverth@google.com
Change-Id: I5f6119491d073ad0349e4645715bdf5d4cfcbd69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262261
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-06 04:42:21 +00:00
skia-autoroll
03f3f75e48 Roll ../src a12a9d87841e..3beaf136b459 (315 commits)
a12a9d8784..3beaf136b4


Created with:
  gclient setdep -r ../src@3beaf136b4

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC jvanverth@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: jvanverth@google.com
Change-Id: Iddd9c360f22f414e19f10447bb65c401222c40dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262260
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-06 04:30:51 +00:00
skia-recreate-skps
d445e2b6fc Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I0a585bc7babf5e2e79a87464e4dde16fae4cd2ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262237
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-01-05 06:10:07 +00:00
John Rosasco
6791ee2f80 Add logger service.
Change-Id: Ic4d35e054b0fb35d9238a214933cf8004855002c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262204
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-04 02:27:14 +00:00
Herb Derby
f1b42a219f Use fCurrGlyph as the looping variable.
This clarifies the code instead of keeping fCurrGlyph and
glyphIdx in sync.

Change-Id: I2746eac3c681d14a1cb0eb73b91de920b5e6fbbc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262151
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-01-03 22:51:52 +00:00
recipe-roller
bdeff3d7d9 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/f44ad10ae5127aa3120f4d105db62e080b4af9ec [swarming] Expose swarming task duration (olivernewman@google.com)
  https://crrev.com/5591fe66be52b94aab70120f5401343521aaa4cc Enable use of 'cipd ensure -max-threads'. (mohrr@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icd36281a6d2303cc8b9eb2db5604cb842f1de4af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262184
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2020-01-03 22:16:22 +00:00
Nathaniel Nifong
a14d809391 Support using an externally manage list of images in UrlDataManager for wasm debugger.
Bug: skia:9746
Change-Id: I07b5fe1f8f4250e29153b71ce2be106461f09928
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261998
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-01-03 21:25:12 +00:00