Commit Graph

46639 Commits

Author SHA1 Message Date
recipe-roller
8b0dfd83cb Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/ca9a5ebcc400ae48c12a1323294689e313426882 (ehmaldonado@chromium.org)
    Revert "gerrit-util: Fix GCE check from behind proxy."

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icd4e90ec4da9fa4ba74bad4bb92bd1d40b5b269b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270762
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-02-13 20:27:33 +00:00
Robert Phillips
45f37c3795 Revert "Carve some helper functions off of GPUSink"
This reverts commit 7b2fcfbc5a.

Reason for revert: Need to loosen up error handling

Original change's description:
> Carve some helper functions off of GPUSink
> 
> I'm adding a new DDL Sink and would like to reuse this functionality.
> 
> Change-Id: I9f4535ca5e0f36925bf896cb0076eab73fe60fd1
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270639
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com

Change-Id: I97968834b5719c2061d53caff0dcf08a80917beb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270798
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-13 20:27:23 +00:00
Greg Daniel
242536fe8b Store render target dirty msaa rect in real dst space.
The stored rect will already be adjusted for origin and actual backing
surface height.

This is needed since proxy doesn't store origin anymore, it doesn't
make sense for it to hold onto a rect which itself is dependent on
origin.

Bug: skia:9556
Change-Id: I41a2755970b9d5d1518dfa16a61a78af7c8ae2c0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270448
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-13 20:19:32 +00:00
Kevin Lubick
c499ec8227 Remove chromecast jobs
If we need to support the Ultras, I vote we use taskdrivers instead of
these old recipes.

Bug: skia:9899
Change-Id: I9a3adedde5e7b28d90d3f836ccab0c7fe40abd38
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270440
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2020-02-13 19:51:12 +00:00
Robert Phillips
7b2fcfbc5a Carve some helper functions off of GPUSink
I'm adding a new DDL Sink and would like to reuse this functionality.

Change-Id: I9f4535ca5e0f36925bf896cb0076eab73fe60fd1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270639
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-02-13 19:40:33 +00:00
recipe-roller
f23fd48ac1 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/0c4a5eb705f5dd01c7b60534fab2cd524d67880a (sque@google.com)
    roll out new goma client binary (VERSION=190)
  https://crrev.com/e9ed65aa190482e1d259b1c49d3b02bf139a6039 (sque@google.com)
    Add tikuta, <user>@chromium.org to GOMA_OWNERS
  https://crrev.com/9ee86e5a4697d34a90d096e7f40fb25feca76568 (ehmaldonado@google.com)
    gerrit-util: Fix GCE check from behind proxy.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9f598b6455b48582ee63ae5f0ac13aa6f3e57661
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270696
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-02-13 19:29:32 +00:00
Robert Phillips
b3c061aa4f Add createBackendFormat and createFBO0 helper methods to SkSurfaceCharacterization
These make it easier for clients to create new surface characterizations that differ only a little from an existing surface characterization.

Change-Id: Iebd0b32ae941d3f91427927108d092cb5864b09f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270444
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-13 18:55:22 +00:00
Florin Malita
b24f3b150c [skottie] Refactor keyframe encoding
For each Lottie keyframe, we currently store interpolation
*segments*:

 {
   t0, v0
   t1, v1
   cubic_mapper
 }

This is quite redundant:

 - kf(n).t1 == kf(n+1).t0 for all keyframes
 - kf(n).v1 == kf(n+1).v0 for all non-constant keyframes

Refactor to store single keyframe records:

  {
    t, v
    mapping
  }

To identify constant keyframes, since we no longer store
explicit hard stops, we now tag each record with a "mapping"
selector:

    0 -> constant keyframe
    1 -> linear keyframe
  > 1 -> cubic keyframe (adjusted cubic mapper index)


This reduces the storage size by 2/5, and yields overall cleaner
logic (as we're no longer back-filling info as we parse).

Also add a handful of unit tests to lock down limit semantics
(keyframe segments are left-inclusive/right-exclusive).

Change-Id: I3ab0e5568b83ab8536a7d326dbc07c4c455e978d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270450
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-13 18:54:32 +00:00
Brian Salomon
16033c9cc1 Update texel_subset_* GMs.
Draw placeholder gray rectangles rather than omitting cols/rows.

Swap x and y mode iteration so they correspond with GM layout.

Change-Id: I3c2d95bcd5d684f5a5a99cb677c326864e13f252
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270641
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-02-13 18:50:05 +00:00
Robert Phillips
edf3f38b56 Add makeNotCurrent to TestContext
I find this useful for managing which context is active on threads.

Change-Id: I655955a2351f273751681f080190ca684d29db4e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270642
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-13 18:40:52 +00:00
Mike Reed
146722ed8b threshold rtshader
Change-Id: Ia1a0e35f2cb7cf2f7fd1a58b88dc81ec59eced0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268943
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-13 18:00:22 +00:00
Mike Klein
921236bfe4 more sophisticated opacity in SkImageShader
The tricky bit here is tracking when we care if the image is opaque,
and when we care if the shader output is opaque. These are usually
the same, except for decal tiling modes.

We can exploit both of these properties:
   - if the shader output is opaque, set alpha to 1.0f after all
     sampling and interpolation to retroactively skip any the unpacking
     and interpolation we did to calculate alpha.
   - if the input is opaque, set alpha to 1.0f after each sample to skip
     unpacking it.  This mostly just helps decal modes, as this will
     itself all be skipped when the output is opaque.

Change-Id: Ie2954e59f0f9da8be7ad5d11f30fdfd4635c4b70
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270656
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-13 17:54:32 +00:00
Mike Klein
94708c2777 relax asserts to what we'd clamp to
At head we're asserting that our post-blend color is premul and alpha is in range
[0,1], which I think is still something we could assert if we were
dealing with real numbers.  But we've got floats, with rounding,
precision loss, etc, and these asserts keep triggering oh so very
slightly, usually by 1 ulp.

We're using these asserts to check that we can skip a clamp to [0,1]
across all channels (notably, not r,g,b to alpha) for sane conversion to
packed fixed point.  So first thing to try is relaxing the asserts to
exactly what they're enforcing, from asserting the color is premul and
in-gamut to just every channel is in [0,1].

I've never seen one of these small errors show up by the time we've
convert to fixed point to store the pixel, so perhaps we can move these
checks there instead somehow?

Change-Id: I2062dad8f9477d7e1a72063dc55fe185c7233384
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270612
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-13 17:33:42 +00:00
Mike Klein
46874efa12 extend opacity tests in SkVM blits
- Have SkVMBlitter also check the color type for opacity,
  and commit to this opacity as a guarantee rather than optional
  optimization.
- Have SkImageShader do the same when sampling.

This will make it easier to work with opaque formats like 888x, 101010x,
and should mean sampling from opaque images is a bit cheaper, skipping
any work to unpack and convert alpha.

Change-Id: I0d20418f8335bd07c8b1a80b042636424854df18
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270607
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-13 17:32:42 +00:00
Brian Osman
ee16e57351 Harden runtime shader/colorfilter CreateProc against bad child counts
Change-Id: I7d2f32a8cd4d373afddb2f1bfdb736e2979ec000
Bug: oss-fuzz:19883
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270637
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-02-13 16:25:22 +00:00
Ben Wagner
d38f00a12a Skip degenerate contours in glyphs.
Stroking in Skia follows the SVG rules of adding end caps to degenerate
contours. Skip all degenerate contours and degenerate curves on contours
to avoid this.

Bug: skia:9820
Change-Id: I320beeeb3728f39c764729454dcb128a05524d35
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268166
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-02-13 16:22:42 +00:00
Mike Klein
2979f95e11 more MSAN dbg->rel cycling
Remove old Debug jobs that I added Release mirrors to
earlier today.  The release jobs look fine and faster,
taking between 50-80% the time of the debug jobs.

Add SwiftShader release MSAN jobs to try the same there.

Change-Id: I2a40e079bc95edc318d4da02299273fb0dd736af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270537
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-13 16:20:19 +00:00
Greg Daniel
55f040bcb9 Revert "Pass origins through the flushSurfaces calls."
This reverts commit ec3408169b.

Reason for revert: This change actually isn't needed since a follow on change removes the use of origin from flushSurface anyways

Original change's description:
> Pass origins through the flushSurfaces calls.
> 
> Bug: skia:9556
> Change-Id: Ie4a0b33dd35e50b93c30cb0010f60c2893140661
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270439
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com

Change-Id: I4ea086d13d0bbef16c59e0abe2c42eb1eb6bf747
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9556
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270640
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-13 15:38:52 +00:00
Greg Daniel
ec3408169b Pass origins through the flushSurfaces calls.
Bug: skia:9556
Change-Id: Ie4a0b33dd35e50b93c30cb0010f60c2893140661
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270439
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-13 15:34:22 +00:00
Mike Reed
7c81245a18 check for non-finite values in point3 case
Bug: oss-fuzz:20581
Bug: 1050296
Change-Id: I3059bc95fc9f54d1cb2f228101065b03167762a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270636
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-13 15:11:52 +00:00
Brian Osman
3bf3b92dfa Guard runtime shader/colorfilter against SkSL that doesn't compile
Bug: oss-fuzz:20555
Bug: chromium:1051911
Change-Id: If40137e6cf3c0d398a86023c2399ddb7df10e209
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270442
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
2020-02-13 13:59:23 +00:00
skia-autoroll
1d1333fced Roll third_party/externals/angle2 e1ccac7ff9f0..74ab0bffb526 (10 commits)
e1ccac7ff9..74ab0bffb5

git log e1ccac7ff9f0..74ab0bffb526 --date=short --first-parent --format='%ad %ae %s'
2020-02-12 jmadill@chromium.org Vulkan: Disable command graph by default.
2020-02-12 jmadill@chromium.org Fix vpython caching in trigger.py script.
2020-02-12 jmadill@chromium.org Test Runner: Increase default timeouts.
2020-02-12 lexa.knyazev@gmail.com Move dither from blend state to rasterizer state
2020-02-12 courtneygo@google.com Roll deqp to get some test fixes
2020-02-12 amaiorano@google.com Update comment to reflect changes in ea0dcd4bda188
2020-02-12 lexa.knyazev@gmail.com Fix compressed formats validation with TEXTURE_3D
2020-02-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src fe10239f92f4..6c218ec60b5f (3 commits)
2020-02-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src b60b35843e66..d439b17da022 (38 commits)
2020-02-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader b3b2a4fc756f..6cbb02e0dc93 (11 commits)

Created with:
  gclient setdep -r third_party/externals/angle2@74ab0bffb526

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 stani@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: stani@google.com
Change-Id: I91b377af2a9edf858bc5d8fe70042c25492f83d9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270406
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-13 05:36:58 +00:00
skia-recreate-skps
ea8ba19cfc Update Go Deps
Change-Id: Id37a3ba3adbe1fe45ef12209a791f124e0d710f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270412
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-02-13 05:27:28 +00:00
skia-autoroll
c8bd3650f7 Roll third_party/externals/swiftshader 6cbb02e0dc93..ac4e1d236088 (2 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/6cbb02e0dc93..ac4e1d236088

git log 6cbb02e0dc93..ac4e1d236088 --date=short --first-parent --format='%ad %ae %s'
2020-02-12 gmouse@google.com Add missed symbol __aeabi_idivmod for Android.
2020-02-12 swiftshader.regress@gmail.com Regres: Update test lists @ 6cbb02e0

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

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 stani@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: stani@google.com
Change-Id: I4e857356eea2cd8ecd3baaa48f40d546b65a5548
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270407
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-13 04:37:08 +00:00
skia-autoroll
1a733b5b76 Roll ../src b4a3bf71d776..07e508f15134 (402 commits)
b4a3bf71d7..07e508f151


Created with:
  gclient setdep -r ../src@07e508f151

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 stani@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: stani@google.com
Change-Id: I3980965b5101e1ba769543a14ee7c41d48617b0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270408
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-13 04:33:28 +00:00
recipe-roller
6029cbd560 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/da4b6c6e041ecde317f38943b977830f829d2af7 (ehmaldonado@google.com)
    git-cl: Use mock.patch instead of custom mock.
  https://crrev.com/15a9b8cc5ddc0262ef293b2c419d609875c32b22 (ehmaldonado@google.com)
    git-cl: Use scm.GIT.FetchUpstreamTuple.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibe0647e96ee6fdddccd6f11dd8182030682024a9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270500
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-02-13 01:44:26 +00:00
recipe-roller
092930f7ae Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/da8eec5db306642b0f959b419fd10e0051763a75 (vapier@chromium.org)
    repo: update to 2.3 launcher

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id7c3138888d3a2414cb4929da79d18299d0b49d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270497
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-02-13 00:49:56 +00:00
Herb Derby
9102c86a81 Refcount SkStrikeCache Nodes
Change-Id: I3566345b8518b15603d6089626a7c3b493f8af17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270438
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-12 23:19:16 +00:00
Jason Simmons
886e8500a9 Apply fake bold and italic settings to the SkFont if the typeface needs them
The rules for setting fake bold and italic are based on the implementation
used in Minikin.

Change-Id: I9bbecdbd0198363db0296fa9c68046b4724fbded
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269429
Commit-Queue: Jason Simmons <jsimmons@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2020-02-12 22:17:26 +00:00
Herb Derby
251eff6f1f Multithread SkStrike test
Change-Id: Id034c7fb35e1c0d6ae70a19d612b955d25c570af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269900
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-12 21:36:57 +00:00
recipe-roller
82ea0eafab Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/3d37f4f72c61dcbc0cb2ac4d9c883803a6364e5f (jbudorick@chromium.org)
    Revert "cros: switch CrOS programs to python3"

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifa6ada0e67c3a25d90b8270ff4d0b7c3ebd9c3d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270476
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-02-12 21:30:06 +00:00
Greg Daniel
67da665c27 Pass origin into GrCoordTransform.
This allows us to not need to read the origin from the stored proxy

Bug: skia:9556
Change-Id: I1c09805201518db2aac2279d02e20b20fc2c0084
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270374
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-12 20:25:26 +00:00
recipe-roller
2b67bf3ff8 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/35b70cac56392e080407200c62a0818b2aa1b3ce (vapier@chromium.org)
    cros: switch CrOS programs to python3

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I2ee31360eb11178f649de6eaa7a438f35c62b42a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270429
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-02-12 20:19:35 +00:00
Brian Salomon
66356c20b8 Don't go out of our way to do vector calc in GrTextureEffect
We aren't concerned with testing on Chorizo anymore.

Change-Id: Ia82bca260088495971cbe2ac0e65b0c8928c24d9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270196
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-12 19:13:55 +00:00
Greg Daniel
87506ab405 Remove (mostly) getting swizzle from GrSurfaceProxy.
Bug: skia:9556
Change-Id: I1905e4e47005ecacf3dede5d32e17bddaf270b04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270200
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-12 19:08:56 +00:00
Ben Wagner
ea25fcf027 Replace DM:Error with DM::Result.
Initially, Error was written with the intent that an empty string meant
Ok and anything else meant Fatal. This made things simple with implicit
constructors from strings. With the introduction of Nonfatal the state
was now tied up with an additional boolean. Now the empty string meant
Ok and causes the new boolean to be ignored, or at least that is the way
it was used since Error didn't actually enforce that itself. This leads
to GMs which return kSkip but don't set the message to not be skipped.
This could be fixed in several ways.

The first would be for the GMSrc to notice that a GM had returned kSkip
with an empty message and create the Error::Nonfatal with a non-empty
message. This has the downside of being some extra unexpected complexity
and doesn't prevent similar issues from arising in the future.

The second would be to change how DM interprets the Error, and if the
non-fatal bit is set treat that as a sign to skip, even if the message
is empty. This fixes the stated issue, but doesn't fix the issue where a
GM can return kFail but also leave the message empty. This could again
be fixed by either modifying GMSrc::draw or GM::drawContent, but this
also seems a bit brittle in not preventing this from happening again in
the future.

So this replaces Error with Result, which makes the status orthogonal to
the message. It does lose the automatic conversion from string, but by
being able to wrap the many uses of SkStringPrintf the explicit nature
doesn't add much additional noise to the more complex failure reports.

Change-Id: Ibf48b67faa09a91a4a9d792d204bd9810b441c6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270362
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-02-12 19:05:46 +00:00
Ethan Nicholas
7ef777efe1 tranform -> transform
Change-Id: I571d5c8f3c45d30097f50ae64ef4eb046024379c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270369
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-12 18:50:15 +00:00
Chris Dalton
79f336d074 Remove GrPrimitiveType from GrMesh
Change-Id: I9b5bdaa08f3a383ce24d33aca5448352d954d9c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270001
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-12 17:28:25 +00:00
Robert Phillips
9b57f0fefe Remove legacy debugging print outs
These date back to when this was just a testing utility. In general Ganesh is not usually this chatty.

Bug: skia:9888
Change-Id: Ia13d09f3df216f84505dce02b263795c471ccd22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270360
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-12 17:02:55 +00:00
Greg Daniel
026a60ca4d Have GrProcessorTestData hold views instead of proxies.
Bug: skia:9556
Change-Id: I2e51331eaca74a6c355872cd19b725f7b3ab551e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270199
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-12 16:47:25 +00:00
Mike Klein
3c3b543c7c try release MSAN jobs
Wonder if these run faster?

Change-Id: I410a77e757398172bdcb01fcaea375aa2a900883
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270390
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-02-12 16:47:05 +00:00
Mike Klein
508fd32091 make SkBBH a public interface
I don't necessarily like this long term, but in the short term Flutter
would like to record pictures using their own type separate from
SkRTree.  This makes SkBBoxHierarchy public, and converts it to use
other public types (SkTDArray -> vector).

Change-Id: I29c5ef9da7d641d8f4ba18522b168ddf7cefe84f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270387
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-12 16:31:05 +00:00
Mike Klein
e1bad065be calculate root bounds directly
This is a long-standing TODO.  No reason to ask
the BBH subclasses to calculate the root bounds
when we can simply union them up ourselves.

Change-Id: I9dbd883c43247400e4e9d56c74d4203d34f698e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270276
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-12 16:28:56 +00:00
Jim Van Verth
55b137ca7d More tweaks to iOS build instructions.
The <>s in the version number were being treated as an HTML tag, and I
figured I'd make things a little clearer in other places.

Change-Id: I625f44320724ac72fe464c76a3eff736432a9d36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268796
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
2020-02-12 15:46:03 +00:00
Greg Daniel
43956128ba Update generated effects to use views.
Bug: skia:9556
Change-Id: Iad4f7f2db2624e699184691d8aae2aaded81eb28
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270198
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-12 15:33:24 +00:00
herb
0234170cc6 Simplify SkStrike ctor
Allow a SkStrike to be created with a descriptor and a context.
Metrics can be passed in to support the diff canvas.

Change-Id: I981f929ccb6d6391b1d205cba8aaa96f8df4932c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270197
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-12 15:09:14 +00:00
Shachar Langbeheim
be28d2e75e This change allows users of PropertyObserver to compose a full keypath for each of the modified properties.
Also this contains a demonstration of how to implement this in CustomPropertyManager.

Change-Id: If4770e47b87ed76c98a85de3c235ab27c913dbc0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269696
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-02-12 14:13:13 +00:00
Mike Reed
125d3820d6 Revert "Ensure arcTo (SVG) ends at the targeted point"
This reverts commit 31143100ee.

Reason for revert: need to guard this, to stage changes to test images

Original change's description:
> Ensure arcTo (SVG) ends at the targeted point
> 
> Floating-point errors in the calculations in arcTo can cause the final
> point to differ significantly enough from the supplied target point that
> a subsequent 'close' operation inserts a lineTo to close the curve. This
> can result in bad miters on curves with thick outlines.
> 
> The fix is to ensure that the final point used is *exactly* the point
> that was supplied.
> 
> Bug: chromium:1001768
> Change-Id: I75c740ab25fb05153bc852a204be957977674cd2
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270000
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=reed@google.com,iapres@microsoft.com

Change-Id: If331924a4db83294769b28501bba875238a521bd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1001768
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270356
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-12 14:08:03 +00:00
recipe-roller
d282df432c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/ee858e5e410b4d30b666b29ebd759866300a5504 (tikuta@chromium.org)
    swarming: update swarming binary

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id5948507ec1cf59938fcc5d752e2dfd241ac2966
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270316
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-02-12 07:39:53 +00:00
skia-recreate-skps
29b6debdc9 Update Go Deps
Change-Id: I518cf50e565918a6c4b835490b47b0615605f9bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270305
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-02-12 05:30:23 +00:00