Commit Graph

32191 Commits

Author SHA1 Message Date
Leon Scroggins III
07a722cdcf Add SkAndroidCodec::computeSampledSize
Bug: b/63909536

Android's ImageDecoder API takes as input an arbitrary width and height
to scale the image to. Internally, this uses SkAndroidCodec to sample,
and then (if not a perfect match) scales to the desired size with
drawing.

computeSampledSize is a modified version of what ImageDecoder currently
does to convert from arbitrary dimensions to a sampleSize. Moving it
here allows it to be shared by SkAnimatedImage. The modified version
also corrects two bugs:
- a client using the dimensions returned by getSampledDimensions
  previously may have resulted in ImageDecoder decoding to a larger
  size and then scaling it. (example found in tests: dog.jpg is
  180 x 180. getSampledDimensions(8) returns 23 x 23, but the old
  method resulted in using sampleSize of 7 and downscaling the resulting
  25 x 25 image.)
- recompute the sampleSize based on the size returned by
  getSampledDimensions.

Change-Id: I022040e8bac31c20988903a0452257f7ae902bc7
Reviewed-on: https://skia-review.googlesource.com/94620
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-01-16 21:23:08 +00:00
Mike Reed
539c6f5c92 validate offsetToRestore
Bug: skia:7425
Change-Id: I6451058bc5194853440f08a053fb974bc8f377a2
Reviewed-on: https://skia-review.googlesource.com/95161
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-01-16 21:00:08 +00:00
Robert Phillips
6be756b673 Move resourceProvider accessor to GrContextPriv (take 2)
TBR=bsalomon@google.com
Change-Id: I3fd46ebfad0d04b8a2bfa6190f81308f3a6be620
Reviewed-on: https://skia-review.googlesource.com/95121
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-16 20:53:28 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
1ea485fd56 Roll skia/third_party/externals/angle2/ 4747414ed..f661686c1 (1 commit)
4747414eda..f661686c1a

$ git log 4747414ed..f661686c1 --date=short --no-merges --format='%ad %ae %s'
2018-01-15 fjhenigman Fix gyp/gcc build.

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


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=halcanary@google.com

Change-Id: If49252de8c2fcda77da920b56faed6e1e8488250
Reviewed-on: https://skia-review.googlesource.com/95042
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-16 20:46:19 +00:00
Mike Reed
c183d16420 it is not an error to have no flattenable
Bug:801768
Change-Id: Ib6a0a27a1e6828819879c4b5eef9fe0fd319b225
Reviewed-on: https://skia-review.googlesource.com/94761
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-16 20:46:18 +00:00
Yuqian Li
d3b743a451 Remove legacy 2pt conical gradient
Bug: skia:7459
Change-Id: Iccc2588f80e22b13ed5d23656b8c75d7b7058a36
Reviewed-on: https://skia-review.googlesource.com/92700
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-16 20:41:14 +00:00
Mike Reed
0ec7dc7a1b detect if the computed rgn bounds is too big
Bug:801869
Change-Id: I7380bfb86aedc719cf67e20e918ef39d1b143aee
Reviewed-on: https://skia-review.googlesource.com/95020
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-01-16 20:41:14 +00:00
Leon Scroggins III
42ee284567 Use SkAndroidCodec in SkAnimatedImage
Bug: b/63909536
Bug: b/63908092

SkAnimatedImage is designed around a specific Android use case, so move
it into the android folders.

Make SkAnimatedImage hold an SkAndroidCodec (instead of an SkCodec).
Expose fCodec so that SkAnimatedImage can animate by using the internal
SkCodec.

Update the sample to use SkAndroidCodec.

Allow webp to decode a scaled down animation. For RestoreBG frames,
adjust the frameRect (which is erased) to account for the scaling. Add
a test to verify that we decode a webp with a RestoreBG frame
successfully. Disable scaling for later frames in other formats (GIF,
for now), since the code for erasing a RestoreBG frame is currently
unaware of the sampling.

Change-Id: I5dd2b86138f2c7f6adcd08dce1bd49040f7dc224
Reviewed-on: https://skia-review.googlesource.com/94621
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2018-01-16 20:36:09 +00:00
Mike Reed
23e0cf2963 relax path bounds check
Revert of https://skia-review.googlesource.com/c/skia/+/94100

Reduced the "big" value by the amount we super-sample shift

Bug: skia:
Change-Id: I7b37b7db841312b0863f76cb353cc916aff1cfa8
Reviewed-on: https://skia-review.googlesource.com/94801
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-16 20:36:09 +00:00
Florin Malita
3d1869453e Revert "Fix Viewer slide load on backend change"
This reverts commit 5fb009df3c.

Reason for revert: Broke first slide.

Original change's description:
> Fix Viewer slide load on backend change
> 
> Currently Viewer fires unbalanced load events on backend change.
> 
> Instead of calling setupCurrentSlide() with an invalid prevSlide and
> always forcing a slide load, pass a |force| argument on backend change.
> 
> Change-Id: I146b42331f5aa9721d4f407b81c13f4512d67d61
> Reviewed-on: https://skia-review.googlesource.com/94960
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

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

Change-Id: I52bbc9fb44f6ed4e04bcc549b2ec72c8600c823a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/94861
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
2018-01-16 20:05:20 +00:00
Hal Canary
be46e24d57 Revert "Move resourceProvider accessor to GrContextPriv"
This reverts commit 1f9ed8501b.

Reason for revert: 
 1. breaking android roll 
 2. breaking Build-Debian9-Clang-arm-Release-Android_API26



Original change's description:
> Move resourceProvider accessor to GrContextPriv
> 
> Change-Id: I5cddd620a7ec4b006b7359864ede58e9d4dd684e
> Reviewed-on: https://skia-review.googlesource.com/94340
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: I20b2d267c0925f20453b635663654967199a1197
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/94964
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-01-16 18:33:14 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
301152cc58 Roll skia/third_party/externals/angle2/ cf180fccb..4747414ed (2 commits)
cf180fccb2..4747414eda

$ git log cf180fccb..4747414ed --date=short --no-merges --format='%ad %ae %s'
2017-12-29 jiajia.qin Use dirty bit for element array buffer
2018-01-08 oetuaho Set colorspace of D3D pbuffers according to DXGI format

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=halcanary@google.com

Change-Id: Ieda1fc783fb91b511f38ae46fd8bfdddda87642e
Reviewed-on: https://skia-review.googlesource.com/95002
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-16 18:00:33 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
66a14db85f Roll skia/third_party/externals/angle2/ dda048cdc..cf180fccb (1 commit)
dda048cdc9..cf180fccb2

$ git log dda048cdc..cf180fccb --date=short --no-merges --format='%ad %ae %s'
2018-01-04 oetuaho Keep TIntermSymbol data consistent in DeferGlobalInitializers

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=halcanary@google.com

Change-Id: I8997d7c06878973cf7546ab2b6185f632e33c7fd
Reviewed-on: https://skia-review.googlesource.com/94720
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-16 17:18:43 +00:00
Leon Scroggins III
fe3da02e76 Add a method to convert SkCodec::Result to a string
Bug: b/63909536
Change-Id: Ic91e3401359f80eadd9d1cd79aa8ef642c60b0fc
Reviewed-on: https://skia-review.googlesource.com/94781
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2018-01-16 17:17:58 +00:00
Florin Malita
5fb009df3c Fix Viewer slide load on backend change
Currently Viewer fires unbalanced load events on backend change.

Instead of calling setupCurrentSlide() with an invalid prevSlide and
always forcing a slide load, pass a |force| argument on backend change.

Change-Id: I146b42331f5aa9721d4f407b81c13f4512d67d61
Reviewed-on: https://skia-review.googlesource.com/94960
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-01-16 17:12:54 +00:00
Greg Daniel
f0fe02fdc6 Delete Gr testing contexts in reverse order
This fixes issues where we create a child shared context and expect work
on that to finish before deleting the parent.

Bug: skia:
Change-Id: Iab41b22026cd4b9ec1b9d74e7841ee5051df6036
Reviewed-on: https://skia-review.googlesource.com/94962
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-01-16 17:12:53 +00:00
Brian Osman
d5e4d85843 Fix file loading from bundles on iOS
Bug: skia:
Change-Id: I9b9a7dcbdeb1630794b04d2a5a00d5f496aae85d
Reviewed-on: https://skia-review.googlesource.com/94963
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-01-16 17:07:49 +00:00
Ethan Nicholas
be1099fb05 request SPIR-V InputAttachment capability when needed
Bug: skia:
Change-Id: I800b2aaf250b39f7d5d5bf8d6c8f72afab0f3743
Reviewed-on: https://skia-review.googlesource.com/93720
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-01-16 17:07:48 +00:00
Robert Phillips
1f9ed8501b Move resourceProvider accessor to GrContextPriv
Change-Id: I5cddd620a7ec4b006b7359864ede58e9d4dd684e
Reviewed-on: https://skia-review.googlesource.com/94340
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-01-16 17:02:45 +00:00
Robert Phillips
20df20cfe8 Fix FPs
The generated FPs have been broken for a while

Change-Id: I32bcb3f8c5510049f65a44e226fa78149e01587f
Reviewed-on: https://skia-review.googlesource.com/94901
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-16 17:02:44 +00:00
Robert Phillips
f9bec208cd Fix --preAbandonGpuContext bots
Change-Id: I6c6375b1c3c74c07d0723606f905fbbef233a4f1
Reviewed-on: https://skia-review.googlesource.com/94860
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-01-16 15:12:01 +00:00
Brian Osman
cf3a617350 Remove color space restrictions from GrBackendTextureImageGenerator
This restriction should have only been enforced in linear-blending mode,
and even then, it's no longer true.

Fixes https://github.com/flutter/flutter/issues/14077

Bug: skia:
Change-Id: Ie0904475e29b213ad7995b8f39c02f6ea7396a9a
Reviewed-on: https://skia-review.googlesource.com/94782
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-01-16 14:41:51 +00:00
Brian Osman
cd3261ac65 Revert "Revert "Added SkSL workaround for devices which cannot safely access gl_FragCoord""
This reverts commit 9d6929cccf.

Reason for revert: Re-landing, backfill reveals none of the red was related to this CL.

Original change's description:
> Revert "Added SkSL workaround for devices which cannot safely access gl_FragCoord"
> 
> This reverts commit 1001f843a4.
> 
> Reason for revert: Many failures.
> 
> Original change's description:
> > 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>
> 
> TBR=bsalomon@google.com,brianosman@google.com,ethannicholas@google.com
> 
> Change-Id: I2a2edc0a8fa11fe9dac1045dc79ae91106518b02
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:7410
> Reviewed-on: https://skia-review.googlesource.com/94281
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:7410
Change-Id: Ib22bda7ff25bb7c8630cc6fa6dc809bf628ea853
Reviewed-on: https://skia-review.googlesource.com/94800
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-01-16 14:12:31 +00:00
Brian Salomon
485b8c639c Don't apply coverage aa on image edges when target has msaa.
Instead use msaa.

Change-Id: Iaf72781863ea9485e9a927f1fd53cfef1ef6485d
Reviewed-on: https://skia-review.googlesource.com/94142
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-01-16 13:54:51 +00:00
Robert Phillips
0bd24dc41f Funnel most proxy creation through GrProxyProvider
This is to provide a choke point for DDL to create Lazy Proxies.

Change-Id: If178da13bc6447b31b7601810236d34502d9efbd
Reviewed-on: https://skia-review.googlesource.com/93303
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-01-16 13:28:43 +00:00
UpdateSKPs
3167aa0c9c Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I722c00929081ea067ba7afd5fbd98b1ca16d7c40
Reviewed-on: https://skia-review.googlesource.com/94580
Commit-Queue: update-skps <update-skps@skia.org>
Reviewed-by: update-skps <update-skps@skia.org>
2018-01-14 07:43:02 +00:00
Yuqian Li
42adc7989d Revert "Revert "Revert "Revert "Snap alpha for small rects""""
This reverts commit ea560af463.

Reason for revert: the guard flag is now in Google3

Original change's description:
> 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>

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

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I68d6b968460f0541d658a8641ca5e147405292d0
Reviewed-on: https://skia-review.googlesource.com/94540
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2018-01-13 19:37:51 +00:00
Mike Reed
ff25cdf898 Revert "relax path bounds check so we can draw larger paths"
This reverts commit e2330261a7.

Reason for revert: triggered assert

48.3s	start tiles_rt-8888 gm  bigrect
48.3s	start tiles_rt-8888 gm  big_rrect_circle_aa_effect
48.3s	start tiles_rt-8888 gm  big_rrect_ellipse_aa_effect
../../../src/core/SkScan_Path.cpp(229): fatal error: "assert(leftE->fFirstY <= stop_y)"


Original change's description:
> 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>

TBR=egdaniel@google.com,liyuqian@google.com,reed@google.com

Change-Id: I63509625b8afaa2064f0b187c17b73bd7739cdb9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 800804
Reviewed-on: https://skia-review.googlesource.com/94481
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-01-12 21:59:34 +00:00
Greg Daniel
befff6580e Revert "Use GrOvalOpFactory ops to draw non-AA rrects, ovals, and arcs."
This reverts commit 7cdabedc8b.

Reason for revert: Speculative revert for causing GLProgram failure on textureBarrierSupport assert

Original change's description:
> 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>

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

Change-Id: I327e133c889207fb682bec7d6a95f9bf1403770b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/94161
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-01-12 20:58:14 +00:00
Brian Osman
9d6929cccf Revert "Added SkSL workaround for devices which cannot safely access gl_FragCoord"
This reverts commit 1001f843a4.

Reason for revert: Many failures.

Original change's description:
> 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>

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

Change-Id: I2a2edc0a8fa11fe9dac1045dc79ae91106518b02
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7410
Reviewed-on: https://skia-review.googlesource.com/94281
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-01-12 20:21:13 +00:00
Kevin Lubick
4f0f933579 Add Android ASAN bot
It should work on 32 and 64 bit android running M or newer.

Bug: skia:
Change-Id: I7e6d4000f4fee8f2704b84b7174174dd0e68d21c
Reviewed-on: https://skia-review.googlesource.com/93700
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-01-12 19:57:33 +00:00
angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
d070f43961 Roll skia/third_party/externals/angle2/ 1ea85a131..dda048cdc (2 commits)
1ea85a1316..dda048cdc9

$ git log 1ea85a131..dda048cdc --date=short --no-merges --format='%ad %ae %s'
2018-01-11 fjhenigman Make scripts executable by python2.
2018-01-11 kvark Fix the format check in TextureD3D_2DArray::redefineImage

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: Iced3e8b1c8c026c74aa93343262dfd78bdbbbf10
Reviewed-on: https://skia-review.googlesource.com/94240
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:55:43 +00:00
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