Commit Graph

46978 Commits

Author SHA1 Message Date
Nathaniel Nifong
19304d88c8 Move all canvaskit example resources to CDN
Change-Id: I92c83051017648d5703b06daac77e99ff40aeb2e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273000
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-02-24 21:54:47 +00:00
Herb Derby
a64f5b2439 Remove SkExclusiveStrikePtr. Replace it with sk_sp<SkStrike>
* Rename all the Exclusive things.

Change-Id: If6b5fec5130bf58c396e0a472730efd2ae38c0d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273057
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-24 21:41:05 +00:00
Weston Tracey
bfe5a68c1e Move Pixel2XL Android_DDL1_Vulkan and Android_DDL3_Vulkan jobs to NVIDIA_Shield.
We lost 2 Pixel2XLs last week, so the remaining ones can't keep up.

Change-Id: I60e1e3070c5fc7ea2896ec34434c9c5b296b897e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272999
Auto-Submit: Weston Tracey <westont@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-02-24 20:26:25 +00:00
Shachar Langbeheim
c43a6c54b1 Remove docs for macros that don't exist in the code.
Change-Id: Ibabe3f1f9663ec36b5128bdb6f1cfeb7b8e09e8a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272896
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-24 19:44:45 +00:00
Chris Dalton
4c20318e48 Remove SWAP_PER_DRAW from GrGLGpu
This debug option was added back in 2011, and the code inside the
#define has not been compilable for many years.

Change-Id: I4366025da6e616f17f75dee14bced2809a90628f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273038
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-24 19:40:25 +00:00
Herb Derby
659cc1c907 Make the strike cache hash table own the strike
Make the ownership explicit by using the hash
table.

Change-Id: I3e1520091e755010c71a9b497af62a64636dc5bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272722
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-24 19:00:46 +00:00
Robert Phillips
251ee1da5b Remove SkDDLTmpRedirect.h
With the Chrome-side CL:

https://chromium-review.googlesource.com/c/chromium/src/+/2067805 (Switch SkDDLTmpRedirect.h reference to SkDeferredDisplayList.h)

having landed, Skia no longer needs this temporary header.

TBR=bsalomon@google.com
Change-Id: I01da4ece2be239407e223105781d4d0d75deabdb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273018
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-24 18:26:35 +00:00
Dominic Mazzoni
2a016bad67 Allow passing multiple node IDs per PDF structure node.
At the time Chromium is painting, we're passing node IDs
along with painting commands to enable tagging. However,
this assumes that all nodes will end up in the structure
tree, which we might not want.

Instead, allow the client to prune the structure tree
later before telling Skia to generate the PDF, but
keep all of the node IDs to be matched up with.

As an example, suppose the doc looks like this:

root id=1
  paragraph id=2
    div id=3
      text1 id=4
    link id=5
      text2 id=6

The pruned tree passed to Skia would look like this:

root id=1
  paragraph id=2 extra_ids=3,4
    link id=5 extra_ids=6

We need to pass the extra node IDs into Skia so
that when content is tagged with id=4, we know to
map that to the paragraph node with id=2 instead.

Note that the resulting PDF document will *not*
have any of these extra IDs, they're all remapped
and consolidated.

While it's not strictly necessary that this is done
in Skia, it's easiest to implement it here. Doing the
same upstream would require replaying an SkPicture
and rewriting all of the node IDs.

Bug: chromium:607777
Change-Id: I0ecb62651e60b84cc5b9d053d7f7d3b9efda1470
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272462
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
2020-02-24 18:21:16 +00:00
Brian Salomon
3fcf83a504 Fix GrTextureEffect with kRepeat/kRepeat/kBilerp.
Use absolute error value when doing shader-based interp between all
four subset corner texels.

Add 2x2 image to rectangle_texture GM and draw with all combos of
tile modes.

Change-Id: Ia5856d592b1c9ab8b588301e7b659b05a7439396
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272920
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-24 18:02:45 +00:00
Jim Van Verth
03b8ab225f Reland "Create D3D device and queue"
This is a reland of 29dc430f43

Original change's description:
> Create D3D device and queue
> 
> Bug: skia:9935
> Change-Id: Ib6548f413ca3a8befb553d2d47354b400c9162b9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272520
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

Bug: skia:9935
Change-Id: I1c8797e09cdeb3694ea7f47b2236ab7d91d9519f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272996
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-02-24 17:41:55 +00:00
Joe Gregorio
6dd3b73f1b [assets] Add CockroackDB as an asset for testing.
Change-Id: I3202bdedebb0f33968a739dd25f6dbcd7d5b4429
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272997
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2020-02-24 17:28:15 +00:00
Greg Daniel
02497d4016 Update nanobench and skpbench to use flush API for gpu syncing.
This also allows us to remove all the one off Fence code that we
implemented in all the backend TestContexts

Change-Id: I9ff7ba4690cf3f19a180f51fc510991a112bb62c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272456
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-24 17:21:35 +00:00
Kevin Lubick
9279798022 [canvaskit] Expose releaseResourcesAndAbandonContext on GrContext
Bug: skia:9910
Change-Id: If0a6aa106d42c680f1f0f3092c4a4dbd0f04c937
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270936
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2020-02-24 17:11:28 +00:00
Weston Tracey
cc08d9fabf Update tasks.json based on Go Deps Cl.
Merge commit 'refs/changes/95/272895/2' of https://skia.googlesource.com/skia


Update Go Deps

Change-Id: I8d56caafce1d21bd6bead373c96f57ed0c7d96a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273016
Auto-Submit: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2020-02-24 16:54:15 +00:00
Brian Salomon
4282d2992c Prevent unbounded invalidator growth on SkPathRef from GrSWPathRenderer
Bug: b/149684076
Change-Id: I8edb871c26296da9cc76ab57f9fd9c09d5ebcae5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272654
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-24 16:52:25 +00:00
skia-autoroll
8da5c3d450 Roll skia/third_party/skcms 605b00d7728f..cbf3b9df1ae1 (1 commits)
https://skia.googlesource.com/skcms.git/+log/605b00d7728f..cbf3b9df1ae1

git log 605b00d7728f..cbf3b9df1ae1 --date=short --first-parent --format='%ad %ae %s'
2020-02-24 benjaminwagner@google.com Update Xcode

Created with:
  gclient setdep -r skia/third_party/skcms@cbf3b9df1ae1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC jlavrova@google.com,mtklein@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

TBR=jlavrova@google.com, mtklein@google.com

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Bug: None
Change-Id: I2368ab4ab1a61ed94e19d96aff2398992320fb12
Tbr: jlavrova@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272982
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-24 16:46:45 +00:00
Chris Dalton
2e7ed26cc7 Lift calls for setting dynamic state to Ganesh level
Previously, all backends were responsible to check for dynamic state
and update it during their internal draw calls. This CL adds
setScissor() and bindTextures() methods to GrOpsRenderTask, and places
this responsibility to update dynamic state on Ganesh instead. It also
replaces the backend-specific "onDrawMeshes" call, with a singular
"onDrawMesh" call that gets called for each mesh.

For now we keep drawMeshes() on GrOpsRenderPass for convenience, but
it will soon be removed and each call site will be responsible to set
its own dynamic state.

Change-Id: If141feae857b22cbf04416557d0c89986eda2a62
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/271976
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-02-24 16:41:45 +00:00
Chris Dalton
7d25230226 Remove "setData" operations from GrMtlPipelineState::setTextures
Change-Id: Iaba354865599097d562b29c2ba5e7da8112b22a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272724
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-24 16:03:35 +00:00
Ben Wagner
108a494984 Omit crashing bench on iOS Metal
Bug: skia:9799
Change-Id: I341a83b575a4e4595756c3ee055fcbc1418bc962
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272636
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-02-24 15:40:35 +00:00
Robert Phillips
1cec4d5e3d Add a program iterator to SkDeferredDisplayList
Bug: skia:9455
Change-Id: I201218174b5d6efb72f7c06766a49f6711325bd5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272530
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-24 14:03:06 +00:00
Florin Malita
9642b31a71 [skottie] Add support for text animator blur
In adition to transforms/opacity/etc, text animators can target
per-glyph opacity.

Change-Id: I6ab63a6e49a64beaf63fc955f0b672a5b8ba84ba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272886
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-02-24 14:01:16 +00:00
Nathaniel Nifong
cc5415a8ce Modify 3D example with light and bump shader.
Depends on what I assume the final version of https://skia-review.googlesource.com/c/skia/+/272646 will be
Change-Id: I53485c5f47e0fef120c8a1bd6d0620fddfb3cde9
Bug: skia:9866
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272529
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-02-24 12:46:35 +00:00
skia-autoroll
57bc977e12 Roll third_party/externals/angle2 94ec1e5f8df5..b5576b67bcf5 (18 commits)
94ec1e5f8d..b5576b67bc

git log 94ec1e5f8df5..b5576b67bcf5 --date=short --first-parent --format='%ad %ae %s'
2020-02-22 spang@chromium.org Vulkan: Fix pipeline stage when waiting on a semaphore
2020-02-21 jmadill@chromium.org Vulkan: Rename CommandGraphResource to Resource.
2020-02-21 spang@chromium.org Reformat GN files
2020-02-21 ynovikov@chromium.org Suppress SwANGLE dEQP GLES3 failure.
2020-02-21 spang@google.com Roll chromium_revision a9ad696264..86e00b5dd2 (742676:743688)
2020-02-21 khushalsagar@chromium.org Add uniform location checks for ignored/invalid location
2020-02-21 ynovikov@chromium.org Suppress SwANGLE dEQP failures
2020-02-21 jmadill@chromium.org Refactor DrawCallPerf test parameters.
2020-02-21 spang@chromium.org Implement glImportMemoryZirconHandle & glImportSemaphoreZirconHandle
2020-02-21 geofflang@chromium.org Add geofflang@google.com to OWNERS.
2020-02-21 jmadill@chromium.org Trace/Replay: Add uniform location type.
2020-02-21 jmadill@chromium.org Vulkan: Remove command graph size overlay widget.
2020-02-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-loader/src c357af84c7cb..136207a63495 (3 commits)
2020-02-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 74d3f371f201..f50cc82b3bed (6 commits)
2020-02-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 6112b121e104..a09ab94aa920 (5 commits)
2020-02-21 jmadill@chromium.org Vulkan: Remove CommandGraph code.
2020-02-21 jmadill@chromium.org Run debug callback in perf render tests.
2020-02-21 lexa.knyazev@gmail.com Reland "Move sampleAlphaToCoverage out of blendState"

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

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 jlavrova@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: jlavrova@google.com
Change-Id: Ic36a4e01896cc052ffa44036406af414477054da
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272890
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-24 05:07:45 +00:00
skia-autoroll
3a5e853d8c Roll ../src f5ddd865c430..f0bb4f52c523 (1392 commits)
f5ddd865c4..f0bb4f52c5


Created with:
  gclient setdep -r ../src@f0bb4f52c5

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 jlavrova@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: jlavrova@google.com
Change-Id: I8b3c6951ed3ed04391955bf8d9b7ebec0bbd37a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272889
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-24 05:05:35 +00:00
skia-autoroll
f084b8b6b6 Roll third_party/externals/swiftshader f50cc82b3bed..214ec337a0b2 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f50cc82b3bed..214ec337a0b2

git log f50cc82b3bed..214ec337a0b2 --date=short --first-parent --format='%ad %ae %s'
2020-02-23 thakis@chromium.org Fix Wrange-loop-analysis warnings in swiftshader.
2020-02-21 amaiorano@google.com Replace target_cpu with current_cpu in Build.gn files
2020-02-21 sugoi@google.com Revert "Subzero: add support for large stacks on Windows"

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

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 jlavrova@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: jlavrova@google.com
Change-Id: I5033f69fedc14c0cc62fdc610f5c24c43883c269
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272891
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-24 04:34:36 +00:00
Ben Wagner
998066127e Update XCode
Chromium now requires the 10.15 SDK
(https://bugs.chromium.org/p/chromium/issues/detail?id=1023913), which
breaks the CommandBuffer bot because it's trying to compile with XCode
10.3, which provides the 10.14 SDK.

What's worse, due to reasons I don't fully understand, after failing to
compile CommandBuffer due to the dependence on the 10.15 SDK, the ninja
out dir is poisoned for future compiles that don't depend on the 10.15
SDK.

Also includes a code snippet from
https://skia-review.googlesource.com/c/skia/+/264429 to find the xSAN
dylibs.

Change-Id: I3cd7661a5ea984ea6899e7a5e8cf878581538d9e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272736
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-02-23 23:15:26 +00:00
Ben Wagner
d1c90e10f0 Whitespace change to re-trigger Mac/iOS tests
Change-Id: I82104e6a3f9218db48551ec934734c3768e71543
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272916
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-02-23 20:55:01 +00:00
Mike Reed
9e8f605344 SkM44.h is now in include/public
Change-Id: I679d3328a65123d4cbb15045d98fe4ac498ee531
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272837
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-22 16:43:56 +00:00
Kevin Lubick
ecd8762e1f [canvaskit] Support children shaders into runtime shaders
Change-Id: I88106babe35f6e5b3ee764e7fbaf82c7f43d136d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272646
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2020-02-22 12:38:52 +00:00
recipe-roller
1a85d581c9 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/1773f37de61efb55634bc3966510141df5ecf143 (ehmaldonado@google.com)
    gclient_utils: Add temporary_file method.

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: I52528b08df4755c13e005fb34316da8473622674
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272776
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-22 01:15:13 +00:00
Nathaniel Nifong
77798b4585 Expose 4x4 matrices on canvas in a way similar to SimpleMatrix, add example.
Bug: skia:9866
Change-Id: I718455743e482e4f60a462027b629dc19b1dbad3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270201
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-02-22 00:12:13 +00:00
Mike Reed
0e6832de5a remove bench -- we don't exercise this class anymore
Change-Id: I86b4cee170028278f2ce5ea0398c0b387b1b7724
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272725
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-21 23:13:13 +00:00
Leandro Lovisolo
16656fc96c Revert "Create D3D device and queue"
This reverts commit 29dc430f43.

Reason for revert: This is breaking the Google3 autoroller due to header file d3d12.h not being available on google3.

Original change's description:
> Create D3D device and queue
> 
> Bug: skia:9935
> Change-Id: Ib6548f413ca3a8befb553d2d47354b400c9162b9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272520
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com

Change-Id: I3857444cae52cc2338258c46b974ae5496bbaedc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272726
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
2020-02-21 22:49:12 +00:00
Herb Derby
6cc2d9fefc Use a hash table to quickly locate the strike
The hash table maps descriptors to strikes. So, instead
of searching through the linked list, find the strike
directly.

Change-Id: I53c6fc72c009c35e3476fabd02cee9ee93145c64
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272465
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-02-21 22:37:03 +00:00
recipe-roller
7f83eec790 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/1dc66e16b362430d8a549b6626f86f5fac7f4e74 (ehmaldonado@google.com)
    presubmit: Add should_continue and more_cc to presubmit json output.
  https://crrev.com/8410164ab1222df526dbf81f728512a082318c5a (ehmaldonado@google.com)
    git-cl: Fix invocation of git new-branch

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: Iee1f7ec61db7a768c813c6c1daef9667dccd507e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272718
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-21 22:11:43 +00:00
recipe-roller
2127594533 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/4dc5b7792fe10298a379e3d46e4693a7bdb03f1d (ehmaldonado@chromium.org)
    git-cl: Fix split branch name
  https://crrev.com/7c34a225375d758beb8225e2171fcd3c031f0e8c (ehmaldonado@chromium.org)
    git-cl: Fix Change object construction for git-cl split

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: I0e1b70629ea0ccaac69d7a8501987c9c01d4daac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272697
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-21 21:40:33 +00:00
Robert Phillips
4d5594dff1 Move SkDeferredDisplayList.h into include\core (take 2)
Clients will need official access to this class for the compilation iterator.

This CL also hides some of the cruft we don't want exposed.

Bug: skia:9455
Change-Id: I696c058f1c409fb459229552fbbdd935ec112358
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272643
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-21 21:26:02 +00:00
Florin Malita
178b860769 [skottie] Initial support for per-character 3D
When per-character 3D is enabled, text properties can be animated in
3 dimensions.

 - position and scale become 3-value vectors
 - in addition to existing "r" (really rz), rotation gains "rx" and "ry"
 - instead of specializing for 3D, expand the existing structures to
   handle both 3D and 2D modes
 - also ensure that sksg::Transform does not flatten to SkMatrix

Change-Id: I426a7ee1ff38c1702deb85e9f1db80f6069f36d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272648
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-02-21 21:14:02 +00:00
Mike Reed
82260fc756 remove unneeded include
Change-Id: Ie3c08d79ae36f28ff48f825699a2542154ca3096
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272652
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-21 21:01:32 +00:00
Herb Derby
bcd65f1970 Reland "Multi-threaded strike cache"
This is a reland of a6cd7c0b1f

Original change's description:
> Multi-threaded strike cache
>
> Allow multiple threads to share the same strike. The old
> system of removing the cache from the linked list is no longer.
> The strikes stay in the list and can be found by other threads.
>
> * Removed strike size verification. There was no way to get the
> locks to work out. The whole point of the change was to have multiple
> threads muting the structure at the same time.
>
> * Strikes are now refed instead of being checked out. Therefore,
> ExclusiveStrikePtr is now just wraps an sk_sp, and should be renamed
> in a future CL.
>
> Change-Id: I832642332a3106e30745f9cdd3156ae72d41fd0b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272057
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

Change-Id: Id02381de93ff82bca58f09e07a457883d57d5565
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272436
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-02-21 21:01:12 +00:00
Greg Daniel
822f7b2543 Make sure to call gl finishCallbacks if we are disconnected or deleting the GrGLGpu.
Our contract is that we will call the finishedCallbacks at some point. So if we
are either abandoning or just deleting the GrGLGpu make sure we call any outstanding
callbacks.

Change-Id: I1425e951185d350a1faa567f0342822c41aafb65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272650
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-21 20:46:12 +00:00
Brian Osman
6fa47769cb In SkRuntimeEffect, use a single shared Compiler instance
I've been increasingly concerned about the CPU and memory costs of
creating and holding on to many Compiler instances. Given that they're
use infrequently, having a shared (guarded) instance seems fine.

We can still look at reducing the startup cost of a single instance, but
this removes a large blocker to wider usage of SkRuntimeEffect.

Change-Id: Ia6dc721c73fdf8c9c4c7a8c1af5f350d2c028b22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272466
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-02-21 20:25:04 +00:00
Sean Gilhuly
8ff6f354a7 SkiaDawn: Add onBindPipeline()
Fix a compilation error in SkiaDawn by adding an onBindPipeline()
implementation and renaming onDraw() to onDrawMeshes(). onBindPipeline()
does nothing because onDraw() previously did not use the drawBounds
parameter.

Change-Id: Icf3d49296359bfdee8936cc63d6b5d33b597fb4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272511
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2020-02-21 20:11:32 +00:00
Jim Van Verth
29dc430f43 Create D3D device and queue
Bug: skia:9935
Change-Id: Ib6548f413ca3a8befb553d2d47354b400c9162b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272520
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-02-21 19:49:52 +00:00
Brian Osman
a95f10c162 Fail gracefully when encountering 'in fragmentProcessor' in raster backend
SkSLSlide was triggering this assert - now it prints an error every
frame, but doesn't crash.

Bug skia:9941
Change-Id: I4c02a89c8d824acc71ab595af99e1df2f5fc980d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272639
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Tyler Denniston <tdenniston@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
2020-02-21 19:05:02 +00:00
Mike Reed
fab619867b share code around animating the rotating cube
Change-Id: I90e0918b1ce6df7f54fae67916754289eb9a263b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272638
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-21 18:50:02 +00:00
Julia Lavrova
7dcb4d263d Bugs
Change-Id: Id26530bbd54626a74bfb4fccd4c066fa39346411
Bugs: skia:9892

getGlyphPositionAtCoordinate should return correct code point index

Change-Id: Id26530bbd54626a74bfb4fccd4c066fa39346411
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272347
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-02-21 18:46:42 +00:00
Robert Phillips
305033b6e8 Revert "Move SkDeferredDisplayList.h into include\core"
This reverts commit ad3b2c9886.

Reason for revert: clang

Original change's description:
> Move SkDeferredDisplayList.h into include\core
> 
> Clients will need official access to this class for the compilation iterator.
> 
> This CL also hides some of the cruft we don't want exposed.
> 
> Bug: skia:9455
> Change-Id: I408c19f9ecd6880a5a7853def591407b0ca43e4e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272343
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: Ica80434e7423fb202355eb77a614ece1c4d54726
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9455
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272641
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-21 18:38:31 +00:00
Robert Phillips
ad3b2c9886 Move SkDeferredDisplayList.h into include\core
Clients will need official access to this class for the compilation iterator.

This CL also hides some of the cruft we don't want exposed.

Bug: skia:9455
Change-Id: I408c19f9ecd6880a5a7853def591407b0ca43e4e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272343
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-21 18:23:11 +00:00
recipe-roller
a973365512 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/7e4c38a48b04677803505d759ba4b0623141f661 (sque@google.com)
    Roll out new goma client binary VERSION=191
  https://crrev.com/1eb16f67982b134323bd89c9f639ba1908700b88 (brucedawson@chromium.org)
    Fix build summary to classify *.mojom*.obj as .obj

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: I7d66192a4f9c73972393a2399653fd27e6f8be0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/272616
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-21 17:32:01 +00:00