Commit Graph

32159 Commits

Author SHA1 Message Date
Florin Malita
1586d85198 [skotty] Refactor paint opacity
Promote to a PaintNode attribute, drop color composite.

TBR=
Change-Id: Ia79d5f7e193a472d53ac4ff8beb7234d4dc26cef
Reviewed-on: https://skia-review.googlesource.com/94280
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-01-12 19:48:03 +00:00
Greg Daniel
966db9e4ee Force BackendTextureImageGenerator to work on only 1 consumer context
Bug: skia:
Change-Id: I83d3e4af6f20c877c541964fdd489434f6a62b25
Reviewed-on: https://skia-review.googlesource.com/93200
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-01-12 19:41:13 +00:00
Leon Scroggins III
7a10b332a3 Add an SkDrawable for animated images (e.g. GIF)
Bug: b/63909536

SkAnimatedImage is a simple drawable for animating a GIF. Thread-safety
is left up to the client. At most two bitmaps are stored in the
drawable; one for the current frame and one for a frame that may need to
be restored. The backup frame prevents some cases where we would
otherwise have to re-decode from the beginning of the image.

The API lets the client set the time value, and decodes to match that
time.

TODO:
- Callback for when the animation is complete
- Ability to use SkAndroidCodec
- Modify the loop count (or leave that up to client?)
- Better and/or client-specific caching

Other changes:
- Add a sample which animates a GIF
- Reenable SK_CODEC_PRINTF for debug builds and Android

Change-Id: I945ffbccdb6008f2a05ed4d9b2af869a261fb300
Reviewed-on: https://skia-review.googlesource.com/93420
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-01-12 19:36:11 +00:00
Greg Daniel
65fa8ca85e Updating lazy proxys to support the case where we know a lot more info about the texture.
This is needed for future DDL texture work.

Bug: skia:
Change-Id: I07e0b9c67509e63b9cac00adc355254d03784df8
Reviewed-on: https://skia-review.googlesource.com/91500
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2018-01-12 19:36:08 +00:00
Mike Reed
e2330261a7 relax path bounds check so we can draw larger paths
Bug:800804
Change-Id: Ief0679de95887d8e11aa5853228c2bdef27d07a2
Reviewed-on: https://skia-review.googlesource.com/94100
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-12 19:31:04 +00:00
Brian Salomon
7cdabedc8b Use GrOvalOpFactory ops to draw non-AA rrects, ovals, and arcs.
This improves performance.

Bug: skia:
Change-Id: Ie01170ec084be66ea166b2baffcdb415583aa523
Reviewed-on: https://skia-review.googlesource.com/93321
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-12 19:31:03 +00:00
Brian Osman
1001f843a4 Added SkSL workaround for devices which cannot safely access gl_FragCoord
This is the root cause of https://github.com/flutter/flutter/issues/13216
I've got a GM that demonstrates the bug, but only in Viewer.

Bug: skia:7410
Change-Id: Iaa1f27b10166aa09e4dc5949e5a6ca1bd14c99ac
Reviewed-on: https://skia-review.googlesource.com/93920
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-01-12 19:26:00 +00:00
Jim Van Verth
f4c13166de Begin support for large color emoji glyphs
Bug: skia:
Change-Id: I10184a0c2ffae9baf3adb3c670d5e61ceeaf90ff
Reviewed-on: https://skia-review.googlesource.com/93360
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-01-12 19:25:59 +00:00
Florin Malita
6aaee59c04 [skotty,sksg] Initial gradient support
TBR=
Change-Id: I61e4d46ac14660f4c9ea757be2278e4098131a6b
Reviewed-on: https://skia-review.googlesource.com/94121
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-01-12 19:20:55 +00:00
Stephen White
4f34fca3eb GrTessellator: eliminate some redundant computation.
No need to recompute the bisector when mitering.

Change-Id: If7b99244d530d4b2241b7b45611f9401b2f02d69
Reviewed-on: https://skia-review.googlesource.com/93673
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2018-01-12 19:20:53 +00:00
Hal Canary
cff9ab7d98 Bitmap: clearing pixelref keeps rowbytes
Change-Id: Ibf8b69adcb4e9df597079a8d9ada75b4a31194e6
Reviewed-on: https://skia-review.googlesource.com/94040
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-01-12 19:15:49 +00:00
Eric Boren
620c0b6378 [recipes] Define variables in __init__
This may fix weird races in tests.

Bug: skia:
Change-Id: I41c36424c7b559301e915a0892590c74931ae463
Reviewed-on: https://skia-review.googlesource.com/93942
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-01-12 19:15:49 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
24be3166c4 Roll skia/third_party/externals/angle2/ e1aa92193..1ea85a131 (1 commit)
e1aa921931..1ea85a1316

$ git log e1aa92193..1ea85a131 --date=short --no-merges --format='%ad %ae %s'
2018-01-11 fjhenigman Add #! line to scripts/bootstrap.py.

Created with:
  roll-dep skia/third_party/externals/angle2


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: I01c930dac176088759a32de780e70645673732e6
Reviewed-on: https://skia-review.googlesource.com/93786
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-12 19:10:45 +00:00
Chris Dalton
4ff1a6b0e0 Blacklist SkImage_makeNonTextureImage on Skylake vk
Bug: skia:
Change-Id: I7394d2f392d7179777b65e77194436271efea80d
Reviewed-on: https://skia-review.googlesource.com/93760
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-12 19:10:44 +00:00
Mike Reed
ec48afdc2a Simplify call when finished with bitmaps.
Bug: skia:
Change-Id: I841052bdaf68f6ec4c98a045712941f313a7b27b
Reviewed-on: https://skia-review.googlesource.com/94000
Reviewed-by: Hal Canary <halcanary@google.com>
2018-01-12 16:41:45 +00:00
Mike Klein
98e38e2ac5 Revert "Revert "fix legacy makeRasterImage()""
This reverts commit ef29e42ef3.

Reason for revert: probably not either roll.

Original change's description:
> Revert "fix legacy makeRasterImage()"
> 
> This reverts commit 7c4ca04336.
> 
> Reason for revert: layout, cereal tests?
> 
> Original change's description:
> > fix legacy makeRasterImage()
> > 
> > Passing the color space down into SkImage_Lazy ends up triggering a
> > SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
> > ignore (tf(r)*a) to have any hope of working with the legacy backend.
> > 
> > This fix in turn needs another little extension of another old hack in
> > SkImage_Gpu for makeNonTextureImage() to keep working there.
> > 
> > Bug: skia:7479
> > 
> > Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
> > Reviewed-on: https://skia-review.googlesource.com/93380
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> > Reviewed-by: Brian Osman <brianosman@google.com>
> 
> TBR=mtklein@chromium.org,brianosman@google.com
> 
> Change-Id: I65092e01d767ef1fd35563f0b79ceded3c12b267
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:7479
> Reviewed-on: https://skia-review.googlesource.com/93820
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@chromium.org,mtklein@google.com,brianosman@google.com

Change-Id: Ic9b48d311cca152ab2e620363dd4528ed382eb88
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7479
Reviewed-on: https://skia-review.googlesource.com/93960
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-01-12 16:00:00 +00:00
Ethan Nicholas
ea560af463 Revert "Revert "Revert "Snap alpha for small rects"""
This reverts commit 15150a60eb.

Reason for revert: we suspect this is behind the roll failures

Original change's description:
> Revert "Revert "Snap alpha for small rects""
> 
> This reverts commit 131c8ea4b7.
> 
> Reason for revert: the CL does not seem to have caused any failures
> 
> Original change's description:
> > Revert "Snap alpha for small rects"
> > 
> > This reverts commit 52f8e71a45.
> > 
> > Reason for revert: possibly causing Google3 roll failure?
> > 
> > Original change's description:
> > > Snap alpha for small rects
> > > 
> > > This is more similar to our alpha snapping in AAA.  More critically, we
> > > may have a tiny alpha difference after some 90 degree rotations and that
> > > breaks the Chromium svg layout tests (where the expected reference is a
> > > rotated svg...)
> > > 
> > > TBR: fmalita@google.com
> > > Bug: skia:
> > > Change-Id: I59b750153488083f65b731643e0baca823cb78e4
> > > Reviewed-on: https://skia-review.googlesource.com/92940
> > > Reviewed-by: Yuqian Li <liyuqian@google.com>
> > > Commit-Queue: Yuqian Li <liyuqian@google.com>
> > 
> > TBR=mtklein@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com
> > 
> > Change-Id: I2ca0b9375caa473dc2f407655b17603b68337c1f
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: skia:
> > Reviewed-on: https://skia-review.googlesource.com/93323
> > Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> 
> TBR=mtklein@google.com,ethannicholas@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com
> 
> Change-Id: I0cb343fa5448ecf0e6a2073bb4e3603275d6984c
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/93680
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>

TBR=mtklein@google.com,ethannicholas@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com

Change-Id: If00c7c8cb6b44c489615444b9aca5a2f25b2d5fe
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/93860
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-01-12 14:32:14 +00:00
Mike Klein
ef29e42ef3 Revert "fix legacy makeRasterImage()"
This reverts commit 7c4ca04336.

Reason for revert: layout, cereal tests?

Original change's description:
> fix legacy makeRasterImage()
> 
> Passing the color space down into SkImage_Lazy ends up triggering a
> SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
> ignore (tf(r)*a) to have any hope of working with the legacy backend.
> 
> This fix in turn needs another little extension of another old hack in
> SkImage_Gpu for makeNonTextureImage() to keep working there.
> 
> Bug: skia:7479
> 
> Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
> Reviewed-on: https://skia-review.googlesource.com/93380
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=mtklein@chromium.org,brianosman@google.com

Change-Id: I65092e01d767ef1fd35563f0b79ceded3c12b267
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7479
Reviewed-on: https://skia-review.googlesource.com/93820
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-01-12 12:52:48 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
ec940ae3a6 Roll skia/third_party/externals/angle2/ ea22b7a58..e1aa92193 (1 commit)
ea22b7a58b..e1aa921931

$ git log ea22b7a58..e1aa92193 --date=short --no-merges --format='%ad %ae %s'
2018-01-08 geofflang Create a new DeviceImpl each time one is requested from a DisplayImpl.

Created with:
  roll-dep skia/third_party/externals/angle2BUG=742034


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: Ibb70a692449ebc04580b2dc0cffd4340cebb804f
Reviewed-on: https://skia-review.googlesource.com/93784
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-11 23:42:09 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
6ee23a391c Roll skia/third_party/externals/angle2/ ed1390f80..ea22b7a58 (1 commit)
ed1390f808..ea22b7a58b

$ git log ed1390f80..ea22b7a58 --date=short --no-merges --format='%ad %ae %s'
2018-01-04 oetuaho Constant fold array indexing and comparison

Created with:
  roll-dep skia/third_party/externals/angle2


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: I40707309b62099c563c42a817d53b2cfe0901944
Reviewed-on: https://skia-review.googlesource.com/93781
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-11 23:02:08 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
b0ff770e55 Roll skia/third_party/externals/angle2/ 540a1dfe1..ed1390f80 (1 commit)
540a1dfe13..ed1390f808

$ git log 540a1dfe1..ed1390f80 --date=short --no-merges --format='%ad %ae %s'
2018-01-05 fjhenigman Doc fix and improvement.

Created with:
  roll-dep skia/third_party/externals/angle2


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: Ic25dba51a36787cf7ffdb0ff679deb00837e85dd
Reviewed-on: https://skia-review.googlesource.com/93677
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-11 22:17:48 +00:00
Ben Wagner
4c39c0dc03 Revert cert dim now that all Mac builders have new cert.
Bug: chromium:799625, skia:7408
Change-Id: Ibacb40c8383559d29bfe31dcc68d40b28844853e
Reviewed-on: https://skia-review.googlesource.com/92687
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-01-11 20:52:18 +00:00
Kevin Lubick
54f20e0df6 Fix invalid switch in FuzzCanvas
Also tweak when we report OOM - AFL-fuzz is fine, but libfuzzer should
abort, not exit.

Bug: skia:
Change-Id: Ic19277bbceec5e7c0ac966d6d9ac677bcfebcfae
Reviewed-on: https://skia-review.googlesource.com/93201
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2018-01-11 20:19:48 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
1f096ac6ab Roll skia/third_party/externals/angle2/ 0e1224c82..540a1dfe1 (8 commits)
0e1224c82c..540a1dfe13

$ git log 0e1224c82..540a1dfe1 --date=short --no-merges --format='%ad %ae %s'
2018-01-08 geofflang Refactor DeviceImpl creation.
2018-01-08 geofflang Remove the externallyForced method of DeviceImpl.
2017-12-05 jiajia.qin ES31: Update block members static use
2018-01-10 jmadill Vulkan: Add PipelineDesc.
2018-01-10 ynovikov Flatten "#pragma STDGL invariant(all)" also for ESSL to ESSL translation
2018-01-09 jmadill common: Add aligned memory allocator.
2017-12-25 jiajia.qin Use dirty bit for draw indirect buffer
2018-01-09 oetuaho Prune unreferenced variables with a constructor initializer

Created with:
  roll-dep skia/third_party/externals/angle2BUG=742034,742034


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: If7f378c29be6101960b37e3fa7b64171ba60b283
Reviewed-on: https://skia-review.googlesource.com/93663
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-11 20:15:18 +00:00
Kevin Lubick
3299d04993 Avoid nullptr deference when deserializing SkPicture
Avoid resetting SkAutoSTArray values to negatives.

Additionally, clean up some misc logs that aren't helpful.

Bug: skia:7405
Change-Id: Ied353a4e415e2efd5ab8180e7f6c681248dd9134
Reviewed-on: https://skia-review.googlesource.com/93240
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-01-11 19:53:03 +00:00
Yuqian Li
15150a60eb Revert "Revert "Snap alpha for small rects""
This reverts commit 131c8ea4b7.

Reason for revert: the CL does not seem to have caused any failures

Original change's description:
> Revert "Snap alpha for small rects"
> 
> This reverts commit 52f8e71a45.
> 
> Reason for revert: possibly causing Google3 roll failure?
> 
> Original change's description:
> > Snap alpha for small rects
> > 
> > This is more similar to our alpha snapping in AAA.  More critically, we
> > may have a tiny alpha difference after some 90 degree rotations and that
> > breaks the Chromium svg layout tests (where the expected reference is a
> > rotated svg...)
> > 
> > TBR: fmalita@google.com
> > Bug: skia:
> > Change-Id: I59b750153488083f65b731643e0baca823cb78e4
> > Reviewed-on: https://skia-review.googlesource.com/92940
> > Reviewed-by: Yuqian Li <liyuqian@google.com>
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> 
> TBR=mtklein@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com
> 
> Change-Id: I2ca0b9375caa473dc2f407655b17603b68337c1f
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/93323
> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

TBR=mtklein@google.com,ethannicholas@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com

Change-Id: I0cb343fa5448ecf0e6a2073bb4e3603275d6984c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/93680
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-11 19:47:59 +00:00
Andrew Monshizadeh
9d6681cc70 Changes to site documentation
Mostly just formatting fixes with a few grammatical changes.

Two real notable changes:
  - Removed references to SkGLCanvas from Tips & FAQ and replaced with
    references to `SkDevice` and `SkSurface`.
  - Deleted deprecated "Quick Start Guides" folder

Docs-Preview: https://skia.org/?cl=92361
Bug: skia:
Change-Id: Ief790b1c2bae8fe0e39aa8d66c79f80560d18c9e
Reviewed-on: https://skia-review.googlesource.com/92361
Reviewed-by: Heather Miller <hcm@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2018-01-11 19:47:58 +00:00
Eric Boren
d75fdc64be Add bisect_roll tool
1. Loads the list of commits which have not yet rolled.
2. Loads the recent roll attempts.
3. Suggests a commit to try.
4. Uploads a roll CL at the commit specified by the user.

Bug: skia:
Change-Id: I68a7f6dbbca638cc9f17bad4eed71e889fe43b6e
Reviewed-on: https://skia-review.googlesource.com/93580
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2018-01-11 19:42:55 +00:00
Kevin Lubick
2541edf0c6 Add in Region SetPath Fuzzer
Also refactor a few things to make it easier to use oss-fuzz.

Bug: skia:
Change-Id: Ie518a6cfc7d57a347b5d09089379f986d33f8b7f
Reviewed-on: https://skia-review.googlesource.com/41740
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-01-11 19:42:53 +00:00
Brian Salomon
b5ef1f9b13 Make GrTextureOp capable of edge antialiasing.
Bug: skia:
Change-Id: I0088bdbb6a76811611fa4628656bf9513c5bf04a
Reviewed-on: https://skia-review.googlesource.com/91105
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-01-11 19:37:51 +00:00
Cary Clark
ac47b88d3c update bookmaker to ToT
more image docs, still not done
add ability to comment out non-working examples easily
start work on additional self-checks
clean up use of this-> in docs

TBR=reed@google.com
Docs-Preview: https://skia.org/?cl=91720
Bug: skia:6898
Change-Id: I706ab8145290e53ab67d3f509ccf4e1225adb3c3
Reviewed-on: https://skia-review.googlesource.com/91720
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-01-11 19:37:49 +00:00
Florin Malita
5f9102f291 [skotty,sksg] Initial matte layer support
TBR=
Change-Id: I5b689f5d7b0d147fa200cf5bffe476077085cb19
Reviewed-on: https://skia-review.googlesource.com/93300
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-01-11 19:32:45 +00:00
Pirama Arumuga Nainar
68c3fac8ce Specify "resources" in skia_nanobench's data
Doing so installs packages the resource directory during a 'tests'
build.  This lets us run skia_nanobench in the internal test infra,
which doesn't have access to the source tree.

Test: Check that all files in "resources" is packaged during 'make tests
dist' in an Android tree.

Change-Id: Ia547cf09087e5795bdd825d0d48f179086a9ca4a
Reviewed-on: https://skia-review.googlesource.com/93060
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Stephen Hines <srhines@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2018-01-11 19:32:44 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
f7dbc3507d Roll skia/third_party/externals/angle2/ c74ec1a5b..0e1224c82 (1 commit)
c74ec1a5bb..0e1224c82c

$ git log c74ec1a5b..0e1224c82 --date=short --no-merges --format='%ad %ae %s'
2017-12-26 yizhou.jiang fix bug for querying sample positions on D3D

Created with:
  roll-dep skia/third_party/externals/angle2


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: I3239885833b5018b26d92701f6cfafa25a9114e5
Reviewed-on: https://skia-review.googlesource.com/93340
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-11 19:27:40 +00:00
Chris Dalton
8fd7955d03 Enable the GL_EXT_geometry_shader extension where necessary
Bug: skia:
Change-Id: I37bfb90efed28748d6c3e53be5c9703c291b036c
Reviewed-on: https://skia-review.googlesource.com/93460
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-01-11 19:27:39 +00:00
Kevin Lubick
1c153c0fba Trying gpu scaling on Nexus 5 and 5x
We do some of this already in skpbench.

Bug: skia:
Change-Id: Ia698466e83f9b476644c126747a2f89346361d13
Reviewed-on: https://skia-review.googlesource.com/93561
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-01-11 19:22:36 +00:00
Florin Malita
0401e7ed8e [skotty] Adjust Draw node bounds for paint
TBR=

Change-Id: I88b3fe9c0ed4be2244b82d78995d6e27fa022296
Reviewed-on: https://skia-review.googlesource.com/93301
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-01-11 19:22:35 +00:00
Mike Klein
7c4ca04336 fix legacy makeRasterImage()
Passing the color space down into SkImage_Lazy ends up triggering a
SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want
ignore (tf(r)*a) to have any hope of working with the legacy backend.

This fix in turn needs another little extension of another old hack in
SkImage_Gpu for makeNonTextureImage() to keep working there.

Bug: skia:7479

Change-Id: If48ca68e95d9eee597f6b10434498049981314ba
Reviewed-on: https://skia-review.googlesource.com/93380
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-01-11 19:17:31 +00:00
Chris Dalton
deb7998834 Fix buffer size assertion in Vulkan
Bug: skia:
Change-Id: I2b878ec288b6dac891fc3724678a528d2db08b09
Reviewed-on: https://skia-review.googlesource.com/93362
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-11 19:17:30 +00:00
Mike Reed
ba00d226c3 remove SK_SUPPORT_LEGACY_RECTMAKELARGEST flag
Bug: skia:
Change-Id: Ic36f1282d23f3f92b250e44685149505cad74bf2
Reviewed-on: https://skia-review.googlesource.com/93423
Reviewed-by: Mike Reed <reed@google.com>
2018-01-11 13:11:02 +00:00
Ethan Nicholas
131c8ea4b7 Revert "Snap alpha for small rects"
This reverts commit 52f8e71a45.

Reason for revert: possibly causing Google3 roll failure?

Original change's description:
> Snap alpha for small rects
> 
> This is more similar to our alpha snapping in AAA.  More critically, we
> may have a tiny alpha difference after some 90 degree rotations and that
> breaks the Chromium svg layout tests (where the expected reference is a
> rotated svg...)
> 
> TBR: fmalita@google.com
> Bug: skia:
> Change-Id: I59b750153488083f65b731643e0baca823cb78e4
> Reviewed-on: https://skia-review.googlesource.com/92940
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>

TBR=mtklein@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com

Change-Id: I2ca0b9375caa473dc2f407655b17603b68337c1f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/93323
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-01-10 21:32:24 +00:00
Mike Reed
d284949b59 restore intersect methods to use old-style empty-checks on their inputs
Bug introduced when we made isEmpty check for int32_t width/height

Bug:800804
Change-Id: I59799c88fb02f176c1545dd0edae050b510df079
Reviewed-on: https://skia-review.googlesource.com/93302
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-10 20:39:33 +00:00
Greg Daniel
5366e59e88 Add valid checks in places we query isTestingOnlyBackendTexture
Bug: skia:7477
Change-Id: I410427f12c7bb85d11a5e4ed1f09bbd80bbbb54c
Reviewed-on: https://skia-review.googlesource.com/93000
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-01-10 17:56:20 +00:00
Mike Klein
b19737d78a make lua a rollable dep, roll it
This rolls from 5.2.1 (2013) to 5.3.4 (2017).

I was looking at why the GomaNoFallback bot was failing,
and noticed that we had a static copy of Lua here instead
of a DEPS entry.  This doesn't do anything to change the
GomaNoFallback situation.

Change-Id: Ia3cdca85551fe680b60b38cb8c5a8fb5349e177f
Reviewed-on: https://skia-review.googlesource.com/93120
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-10 17:54:00 +00:00
Yuqian Li
52f8e71a45 Snap alpha for small rects
This is more similar to our alpha snapping in AAA.  More critically, we
may have a tiny alpha difference after some 90 degree rotations and that
breaks the Chromium svg layout tests (where the expected reference is a
rotated svg...)

TBR: fmalita@google.com
Bug: skia:
Change-Id: I59b750153488083f65b731643e0baca823cb78e4
Reviewed-on: https://skia-review.googlesource.com/92940
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-10 14:18:39 +00:00
Robert Phillips
cf8626d691 Remove internal files from externally visible markdown documentation
Change-Id: I8d2d8d64891b7952bee9f7f39ff15ad30e3fabdd
Reviewed-on: https://skia-review.googlesource.com/93100
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-01-10 13:25:19 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
831ac2473c Roll skia/third_party/externals/angle2/ 0690e1aa3..c74ec1a5b (1 commit)
0690e1aa31..c74ec1a5bb

$ git log 0690e1aa3..c74ec1a5b --date=short --no-merges --format='%ad %ae %s'
2018-01-09 oetuaho Record gl_in array size in a symbol in ParseContext

Created with:
  roll-dep skia/third_party/externals/angle2


The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE,Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE,Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE,Build-Debian9-Clang-x86_64-Release-ANGLE
TBR=ethannicholas@google.com

Change-Id: Ie1976aa0f00b4b21dbdac7c41f25c89fe86f9d15
Reviewed-on: https://skia-review.googlesource.com/93080
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-01-10 09:09:18 +00:00
Florin Malita
0e66fbab10 [skotty] Initial solid layer support
TBR=
Change-Id: Ib78ff693a1c79873248563502635aed93a90f963
Reviewed-on: https://skia-review.googlesource.com/92624
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-01-09 23:08:18 +00:00
Yuqian Li
7195faccb9 Compare drawBounds with MakeLargest instead of isFinite
In some cases, transformedBounds is finite but its rounded out
IRect is empty so we can't do that.

TBR: reed@google.com
Bug: skia:
Change-Id: Ife78e91a494964042fa09b8cbe86cabbd2572fb9
Reviewed-on: https://skia-review.googlesource.com/92625
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-09 22:39:48 +00:00
Mike Klein
515bda6811 support gray8 destinations on CPU
- fill in a couple switches to allow software to rasterize gray8
 - add a gray8 config to DM so we can test it
 - enable this config on some bots

Today we draw gray8 using SkRasterPipeline, loading it as {g,g,g,1}
and storing using the same fixed luma math as SkLumaColorFilter.
One day it'd be nice to use the color space's luma vector if present.

Can we support this on GPU?

Change-Id: I4ee661c8bd5f33f5db2433ffb6e1bc2483af8397
Reviewed-on: https://skia-review.googlesource.com/92681
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-09 22:19:58 +00:00