Commit Graph

45147 Commits

Author SHA1 Message Date
Florin Malita
684929ceb1 [skottie] Fix single-node camera orientation relative to z=0 plane
One-node cameras start off by pointing forward, where "forward" is
decreasing z (as opposed to always facing z==0, as they currently do).

Change-Id: I2ccd5a7cf7d8f0aeeebde1537d44e188aabccd04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255117
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-11-18 23:25:47 +00:00
Jason Simmons
1fbdfcd853 Use the default font family if no match is found for any of the families in the text style
Change-Id: Ie2b54b8dbb187e11d86996f3752c9bde72528cca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254817
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2019-11-18 22:35:50 +00:00
Robert Phillips
ff2f380fd3 Only access the scissorState's rect when it is valid
It is odd asan/valgrind hasn't been complaining about this

Change-Id: I8e7952e6fc554450ff8c5c5940500f09be48d6b0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255144
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-18 22:13:20 +00:00
Brian Osman
b1b14522dc Remove some SK_API from src/
There are still some present (being used by Chromium or Android),
but I think all of these are internal-only.

Change-Id: I80177a65e0ea737e88ab7bb1ef36d03edebd4fa4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255138
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-11-18 21:51:20 +00:00
Hal Canary
fdb014771b DEPS: add third_party/externals/libgifcodec
A later CL will remove:
    third_party/gif/*
    src/codec/SkGifCodec.*
and update the BUILD.gn file.

But first, a CL will make the Android roller pick up this DEP.

Bug: skia:9654
Change-Id: I12a63dd83f6b2fd11c299537686c5219581fcc13
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255083
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-11-18 21:08:40 +00:00
Hal Canary
11c45d64dc GN tool: copy_git_directory.py script
Motivation: to be used by android roller (android_skia_checkout.go)
to keep third_party/libgif updated to where DEPS points
third_party/external/libgif at.

No-Try: true
Bug: skia:9654
Change-Id: I18273dfc7da215b6081ffd454edfa1651791b6df
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254896
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2019-11-18 21:05:10 +00:00
Michael Ludwig
22a04cde64 Make TessellationHelper resettable
Change-Id: I94d22edf13b8392e1d7b84367fd65701f99a0e54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255137
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-11-18 21:02:20 +00:00
Nigel Tao
39da10b556 Optimize SkWuffsCodec pixbuf zero-initialization
Pushing the zero-initialization into the sk_malloc_etc call can be more
efficient than a two-step malloc-and-then-memset, e.g. if the memory
allocator gives us something from an already-known-zeroed region.

Some microbenchmark numbers (milliseconds per decode) from running
Chromium's image_decode_bench program on a few GIF files:

Before  After   Ratio   Filename        Width x Height = Pixels
 0.109   0.107  1.02    hat.gif           90  x  112   =   10080
 7.062   6.879  1.03    harvesters.gif  1165  x  859   = 1000735
33.342  30.544  1.09    droids.gif      2560  x 1920   = 4915200

Ratio > 1.00 means a performance improvement.

image_decode_bench comes from:
https://cs.chromium.org/chromium/src/third_party/blink/renderer/platform/testing/image_decode_bench.cc

hat.gif and harvesters.gif come from:
https://github.com/google/wuffs/tree/master/test/data

droids.gif comes from:
https://cs.chromium.org/chromium/src/third_party/blink/perf_tests/image_decoder/resources/

These are x86_64 Broadwell numbers. I don't have ARM numbers readily
available, but nothing about this commit should be arch-specific.

Bug: skia:8235
Change-Id: Icf45b7ac5b7194eaab455628e44d4aedf30ddbfe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254836
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2019-11-18 20:44:20 +00:00
Greg Daniel
301015ce1e Make GrSemaphore no longer derive from GrGPUResource.
Instead most things are now passed around as unique_ptrs

Bug: skia:9603
Change-Id: I2b2f5c68ba1964953dd1457b65433e6098597605
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255086
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-11-18 19:42:09 +00:00
Leon Scroggins III
a8ea23db00 Run nanobench on droids.gif
Bug: chromium:1023191
Bug: skia:8235

Chromium is showing a performance regression on this image when
switching to Wuffs. (It is checked into Chromium as
src/third_party/blink/perf_tests/image_decoder/resources/droids.gif.)
Test it on our bots to help us verify we've fixed it.

Change-Id: I9a02e6fe9bdcfa1704aefbc1ea2cd3f0e6ac4409
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255081
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2019-11-18 18:47:19 +00:00
Jim Van Verth
7c4ea9083f Metal: Fix buffer alignment issues on Mac
Bug: skia:8243
Change-Id: I9d588c732e9aba2348a294cd88f17d261ba05f03
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255088
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-11-18 18:44:09 +00:00
Mike Reed
63edc57c97 restructure EdgeClipper to accommodate other callers (e.g. half-plane)
This allows us to clip a path against a half-plane (an arbitrary
diagonal line), in an effort to handle perspective correctly with
the near-plane.

Change-Id: I2082a750acf858340e4500ad46cf581472cefc6b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253996
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-11-18 18:22:19 +00:00
Ben Wagner
9c17be5301 [infra] Update docs with respect to Go modules.
Docs-Preview: https://skia.org/?cl=255085
Change-Id: I8911862ca9814b89b8598ad743b1faa9c524399f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255085
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-11-18 18:04:19 +00:00
Robert Phillips
fbfc35590d Add SampleLocationsTestOp::onPrePrepare
Bug: skia:9455
Change-Id: I2fb9bbba7c2315e300f363b34168f59eafdda8ce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255084
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-18 17:50:19 +00:00
Jim Van Verth
9042d46ff4 Add Metal support for dynamic texture state
Bug: skia:9604
Change-Id: I16f487137c79e37493cd24b63ee29ac2e22d6cec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254981
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-11-18 17:31:48 +00:00
Robert Phillips
5d07c5279b Add FwidthSquircleTestOp::onPrePrepare
This CL also introduces creating the geometryProcessor in the arena (which bypasses the GrProcessor memory pool).

Bug: skia:9455
Change-Id: Ia9d5c0d886ea918d9e4209078a1f7e8595234d0e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254963
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-18 16:47:49 +00:00
Robert Phillips
c919f97768 Reformat gn files
Change-Id: I60ccd1ef19d6a6dc033e20e7ac55c3182d76ea0e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255082
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-18 16:39:28 +00:00
Robert Phillips
d4fb7c7b14 Rename opPODAllocator to recordTimeAllocator
Hopefully this is a better name. "POD" is no longer accurate since we are storing GrPipeline's in this arena.

Bug: skia:9455
Change-Id: I610267633088b0af4f0cbb36f479bf5eb6c6d0cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254992
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-18 16:12:38 +00:00
skia-recreate-skps
cc1d4e6ae0 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I1454920bff343474913e884d701664158c260f97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255043
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-11-18 12:54:23 +00:00
skia-autoroll
7787460510 Roll ../src 6961018759e7..c30db006f1d6 (480 commits)
6961018759..c30db006f1


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

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 robertphillips@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.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
TBR=robertphillips@google.com
Change-Id: Idfd254212e7c772639592cdfcc4b30dcf89fcad1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255058
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-18 12:53:42 +00:00
skia-autoroll
7a58003044 Roll third_party/externals/angle2 5f4db6a76640..51b5a3222b60 (9 commits)
5f4db6a766..51b5a3222b

git log 5f4db6a76640..51b5a3222b60 --date=short --no-merges --format='%ad %ae %s'
2019-11-15 tobine@google.com Update dEQP 3.1 expectations
2019-11-15 jonahr@google.com Expose EGL_CHROMIUM_sync_control via GLX_OML_sync_control
2019-11-15 timvp@google.com Vulkan: Update Expectations with GLES 3.1 Conformance Failures
2019-11-15 lehoangq@gmail.com Enable Metal backend.
2019-11-15 timvp@google.com Update GLES31 Expectations
2019-11-15 jonahr@google.com Add a test to capture bug with LUMA blit workaround
2019-11-15 jiawei.shao@intel.com Add android_ndk and catapult to .gitignore
2019-11-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 3da910d55f20..c3f22f7cba60 (2 commits)
2019-11-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader b2407dd746de..102fd19c65f4 (4 commits)

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

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 robertphillips@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.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=robertphillips@google.com
Change-Id: I51249a8fe5b3a28cba2f63d0efcf68c858a2fd42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255056
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-18 12:49:17 +00:00
skia-autoroll
402d168ab4 Roll third_party/externals/swiftshader 102fd19c65f4..aba1020d3914 (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/102fd19c65f4..aba1020d3914

git log 102fd19c65f4..aba1020d3914 --date=short --no-merges --format='%ad %ae %s'
2019-11-15 bclayton@google.com Remove the now unused sw::Event.
2019-11-15 bclayton@google.com VkQueryPool: Migrate from sw sync to marl
2019-11-15 bclayton@google.com VkDevice: Migrate to using marl::Event::any()
2019-11-15 bclayton@google.com VkFence: Migrate to marl::Event
2019-11-15 bclayton@google.com Merge changes Ifb21caa2,Iaca5897d
2019-11-15 swiftshader.regress@gmail.com Regres: Update test lists @ cc221e83
2019-11-15 chrisforbes@google.com Update deqp to b64acc6c3371607583b3aa6d12c7290b4aaae747

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

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 robertphillips@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.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
TBR=robertphillips@google.com
Change-Id: I23f1fcdb018dce3a124d9f9e7476bdb8aee09993
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255057
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-18 12:48:37 +00:00
John Rosasco
24cbdab97e SKQP Build for Fuchsia SDK
Change-Id: I2619784eca0f7a4dd66f2db0104cb746d9266b4e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244369
Commit-Queue: John Rosasco <rosasco@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-11-18 12:34:28 +00:00
recipe-roller
83f76acdea 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/bf26b167a802a4000bed691342dec7e849401447 depot_tools: Ensure Python is bootstrapped before reading python3_bin_reldir.txt (ehmaldonado@chromium.org)
  https://crrev.com/7cf9438ca92756be0f1c78ab9be6e72dd7c09242 presubmit: Print executed command along with test name. (ehmaldonado@chromium.org)
  https://crrev.com/1f392b83a83a069eac0b71679b19fedf7958ec4d gclient: Support setting local directories as dependency URLs. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I62f4f8af0d1b53d29c614c892b5ad8d5fa15e46f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254998
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>
2019-11-18 12:29:37 +00:00
Kevin Lubick
c9d263c121 [canvaskit] Roll to 0.9.0
Lots of bugfixes and trying out including a debug build (for Flutter).

Change-Id: Ie6b93386aa8dcce46ff62aaafe09c02384c50b6f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255076
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-11-18 12:23:34 +00:00
Chris Dalton
78fa08b279 Revert "Enable msaa ccpr on vulkan"
This reverts commit cb73b6250e.

Reason for revert: Win10 crash is back

Original change's description:
> Enable msaa ccpr on vulkan
> 
> TBR=egdaniel@google.com
> 
> Bug: skia:9643
> Change-Id: Ie06891734b700c940b996a63c7b1264ce0f2597c
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254808
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Auto-Submit: Chris Dalton <csmartdalton@google.com>

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

Change-Id: I5261d6143f6dce6f50cf712a6ecc28d6d999b210
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9643
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255007
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-16 02:54:06 +00:00
Chris Dalton
cb73b6250e Enable msaa ccpr on vulkan
TBR=egdaniel@google.com

Bug: skia:9643
Change-Id: Ie06891734b700c940b996a63c7b1264ce0f2597c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254808
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Auto-Submit: Chris Dalton <csmartdalton@google.com>
2019-11-16 00:32:24 +00:00
Herb Derby
0d59368721 Add subspan() to SkZip
Change-Id: I54916c7e14646b8a66dd8341a1cb4b46ba8dba2c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254737
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Auto-Submit: Herb Derby <herb@google.com>
2019-11-15 23:11:24 +00:00
recipe-roller
660ab6c2a8 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/46689b09c559194413644b71c4a84e7a0a50605f Fix CMDUploadTestCase in presubmit (apolito@google.com)
  https://crrev.com/bb45734988bb4860ba2bfd1adc1123968ff3cdca Changed "gclient sync -D" logic to compare against the expected DEPS version (apolito@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ied084e4095395a02acc6c28ccd504077955e2056
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254994
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>
2019-11-15 23:03:40 +00:00
Herb Derby
c9dcd09f24 Add last() to SkZip
Change-Id: Ia1a1e58df38bd4865d4d3d389a6a75835b5e87df
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254809
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-11-15 22:15:34 +00:00
Michael Ludwig
170de0193f Revert "Replace GrTextureDomainEffect with GrDomainEffect."
This reverts commit f29caf1433.

Reason for revert: Breaks canvas-pattern-no-repeat-with-transformations.html layout test for legit reasons: https://test-results.appspot.com/data/layout_results/linux-blink-rel/22907/webkit_layout_tests%20%28with%20patch%29/layout-test-results/results.html
Original change's description:
> Replace GrTextureDomainEffect with GrDomainEffect.
> 
> The new effect takes a child processor rather than a texture proxy.
> 
> In future changes it can implement domains on top of other effects
> rather than incorporating the domain into each effect.
> 
> The longer term plan is to remove GrTextureDomain as a helper and just
> have GrDomainEffect. That requires rewriting all the effects to take a
> child effect.
> 
> Change-Id: Ieaab3a838b7eb4fbf7d8250b8816980645b7cea0
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252097
> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I59a594218e1a87e59f20935d5c55726bcb43b1de
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254986
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-11-15 21:55:26 +00:00
Michael Ludwig
aee681de8e Revert "fix issue introduced in f29caf1433e3185df01b4a286d0fc9715ad32ae2"
This reverts commit 55a0a03c60.

Reason for revert: Parent CL breaks chrome roll, not fixed by this CL

Original change's description:
> fix issue introduced in f29caf1433
> where kClamp domain mode is always used.
> 
> Change-Id: I1b5cb2ae262f0a89c1b119150d9f39ed43f5d2f6
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254933
> Auto-Submit: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I2a99e7b0e413edfaba2db36d4b05b211be4a2862
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254838
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-11-15 21:53:26 +00:00
Mike Reed
a2b3b9efb8 Expose the owning surface to a canvas?
Handy if you want to flush, or otherwise understand the underlying buffer(s).

Change-Id: I3d6610695c8603232192b26c687c6c74512165dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254803
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-11-15 21:48:32 +00:00
Robert Phillips
67a625e51e Make GrProgramInfo take pointers to the GrPipeline and the GrPrimitiveProcessor
Hopefully this makes it clearer that the GrProgramInfo isn't copying these
objects.

Bug: skia:9455
Change-Id: Id43b7978d63b6d53d531601f3446745f33afcf2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254970
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-15 21:48:21 +00:00
Kevin Lubick
541f310b34 [canvaskit] Fix primitive_shaper build
The problem was we didn't have a way to not build with
SkParagraph, which we can't use when we are using the
primitive shaper.

Change-Id: Iafe070d6f5c01aaa7a42225793d5ad873f144798
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254968
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-11-15 21:10:22 +00:00
Mike Reed
a657b0c590 trim out unneeded references to SkString
Change-Id: I01259b685859e2d95e4b87c0f611ccc074bd5229
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254807
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-11-15 21:01:01 +00:00
Mike Reed
0de310ff2c Ummm, why are we including SkUTF.h?
Change-Id: I95cf63a609d754a163428fd9c188800f44bd8e09
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254806
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-11-15 20:44:01 +00:00
Robert Phillips
df70f1594a Add ClockwiseTestOp::onPrePrepare
This is a trial balloon for the pulling forward of GrProgramInfo to DDL-record time

Bug: skia:9455
Change-Id: Icabf27fcf7169f12b0655ee23f98dafa7c770add
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253099
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-15 20:27:41 +00:00
Kevin Lubick
0491267160 [canvaskit] Expose more SkParagraph methods
Bug: skia:9469

Change-Id: I922a877fc20d29b95e68f93842505df5dead6934
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254960
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2019-11-15 20:08:41 +00:00
Kevin Lubick
d267719e32 [canvaskit] Add MatrixTransform ImageFilter
Change-Id: Ifcb73c331846abb3ffa9ac2f41236de8da4fdccc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254804
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-15 19:50:14 +00:00
Eric Boren
1c8b26762b [infra] Fix bin/try
Chromium trybots are no longer listed in update_meta_config.py (they
were out of date anyway) so we can't import them here.

Also, fix the Buildbucket namespace warning.

Change-Id: I56fdc0f0629c43a9d180af11a88352bdc29e8314
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254802
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2019-11-15 19:44:04 +00:00
Brian Salomon
55a0a03c60 fix issue introduced in f29caf1433
where kClamp domain mode is always used.

Change-Id: I1b5cb2ae262f0a89c1b119150d9f39ed43f5d2f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254933
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-15 19:42:34 +00:00
Chris Dalton
2284aab832 Reland "Reland "Reland "Reland "Implement sample mask and sample locations support in Vulkan""""
This is a reland of 091c02f89b

Original change's description:
> Reland "Reland "Reland "Implement sample mask and sample locations support in Vulkan"""
> 
> This is a reland of 8a0f50944b
> 
> Original change's description:
> > Reland "Reland "Implement sample mask and sample locations support in Vulkan""
> >
> > This is a reland of 97e917a25f, this
> > time with MSAA CCPR disabled.
> >
> > Original change's description:
> > > Reland "Implement sample mask and sample locations support in Vulkan"
> > >
> > > This is a reland of 8b915a0c27
> > >
> > > Original change's description:
> > > > Implement sample mask and sample locations support in Vulkan
> > > >
> > > > Change-Id: I372695ec5360def42a8a997675993264740b0da4
> > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252038
> > > > Commit-Queue: Chris Dalton <csmartdalton@google.com>
> > > > Reviewed-by: Chris Dalton <csmartdalton@google.com>
> > >
> > > TBR=ethannicholas@google.com
> > >
> > > Change-Id: I20de36719db52ad4dfc5290101d48a8fd9601c11
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252936
> > > Reviewed-by: Chris Dalton <csmartdalton@google.com>
> > > Commit-Queue: Chris Dalton <csmartdalton@google.com>
> >
> > TBR=ethannicholas@google.com
> >
> > Change-Id: Ie0861dc20df1fa622cb26ed78369d29976e3be10
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254608
> > Reviewed-by: Chris Dalton <csmartdalton@google.com>
> > Commit-Queue: Chris Dalton <csmartdalton@google.com>
> 
> TBR=robertphillips@google.com
> 
> Change-Id: Ia831db32abf0037face708d742bda0600db0ec37
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254625
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

Change-Id: Ib6cd68b9b8ac7b70cb12736cfceb14b4c8632977
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254923
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-15 19:38:24 +00:00
Robert Phillips
8bc157e216 Reduce max # of AA Quads that can be merged or chained into a single GrTextureOp (take 2)
It is, arguably, not a good metric but the max number of AA Quads that are merged or chained together across all Skia's GMs and SKPs is 276.

This should also reduce the memory consumed from 245,760 bytes to 30,720 bytes.

Bug: b/143572065 skia:9601
Change-Id: I86f3ae2830d8a64ebcc6f5b7da8c0a4dac8761d5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254916
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-15 18:51:16 +00:00
Mike Reed
2319b803c2 remove unused (by clients) SkMultiPictureDraw
More cleaning to do if we like this idea...

Change-Id: I608143db085911565dd5f5426f7ee6436ec58cdf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254680
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-11-15 18:18:36 +00:00
Brian Salomon
f29caf1433 Replace GrTextureDomainEffect with GrDomainEffect.
The new effect takes a child processor rather than a texture proxy.

In future changes it can implement domains on top of other effects
rather than incorporating the domain into each effect.

The longer term plan is to remove GrTextureDomain as a helper and just
have GrDomainEffect. That requires rewriting all the effects to take a
child effect.

Change-Id: Ieaab3a838b7eb4fbf7d8250b8816980645b7cea0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252097
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-15 17:58:06 +00:00
Kevin Lubick
1496758da4 [canvaskit] Request an 8 bit stencil buffer from the WebGL 1/2 context
We hadn't been requesting one, but told Skia we had one, which caused
issues.

Bug: skia:9564
Change-Id: I9a2e78a528778a386225cdcbbb2d2b3d8f705f05
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254801
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-11-15 17:21:48 +00:00
Robert Phillips
e837e61b5a Respect the max indexBuffer limits in the bulk texture draw API (take 2)
This is required before we can lower the max AA quad count (again).

Bug: b/143572065 skia:9601
Change-Id: Ibd029a59f6589e1ae6c66d072e5039f0e9de06dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254581
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-15 16:57:33 +00:00
Kevin Lubick
ea03373a6d [canvaskit] Swap font resolution order for emoji test
Change-Id: I522435f37b7c8cf363fb36668e35a8c5bd114810
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254898
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2019-11-15 16:30:00 +00:00
Herb Derby
660c2fff46 Remove indexes from Geometry in the text op
Using indexes to name subruns seems overly complex. Just use pointers.

Change-Id: Ia02aed6a07e6bf91b70e42c45a0c5f6f903fa815
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254796
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-11-15 14:56:30 +00:00