Commit Graph

38420 Commits

Author SHA1 Message Date
Leon Scroggins III
85e22fc361 Build Android Framework host library on Mac
Based on ag/5616352, patch set 5.

Bug: b/118742766
Test: lunch sdk && mmma external/skia on Mac

Similar to the linux build, use a new set of GN arguments to create a
json object to fill in the updated template.

Add the new include/config/mac folder for the newly generated mac-
specific SkUserConfig.h.

Include stdarg.h in SkTraceEventCommon, which is necessary for the mac
build.

Add a new GN arg (skia_use_fonthost_mac) to allow framework build to
manually not build SkFontHost_mac.cpp, and use the same font host
as the other builds.

Change-Id: I654ba496306a3f3591c3937ad5524cd45e49dd65
Reviewed-on: https://skia-review.googlesource.com/c/173183
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-11-28 19:29:51 +00:00
Michael Ludwig
d3c92d9a36 Initial definition of fill rect op
Bug: skia:
Change-Id: Ie0c99eb5163501853d1adc885bd3841f90a71924
Reviewed-on: https://skia-review.googlesource.com/c/163486
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-11-28 19:08:34 +00:00
Kevin Lubick
12c0e50fda [canvaskit] support globalAlpha and dashed strokes
This involves a refactor of how we deal with paint.
Now, we have a source-of-truth paint that is copied
and modified for each of fill/stroke/shadow.

Adds preliminary support for blend modes.

Most of what remains is text, images, and gradients.

Bug: skia:
Change-Id: I41806adeb7de4faa6c98a580c4f1de4e4a34a37d
Reviewed-on: https://skia-review.googlesource.com/c/173223
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-28 19:03:19 +00:00
Brian Salomon
572fdcf08a Remove SkCanvas::ImageSetEntry constructors
Change-Id: Ib75b6a836184df739e4690dc275421e015d6a9bb
Reviewed-on: https://skia-review.googlesource.com/c/173228
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-11-28 18:59:43 +00:00
Herbert Derby
c8f6ab3885 Remove unneeded inline declarations
Change-Id: I21a3e74ab256d89ab6487e98abd940ff99dd6447
Reviewed-on: https://skia-review.googlesource.com/c/173227
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-28 18:32:11 +00:00
skia-autoroll
f98d8c9b53 Roll third_party/externals/swiftshader 3b003a51bc9a..79d0e565b001 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3b003a51bc9a..79d0e565b001


git log 3b003a51bc9a..79d0e565b001 --date=short --no-merges --format='%ad %ae %s'
2018-11-28 capn@google.com Fix textureSize for non-uniform samplers.


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

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=borenet@google.com

Change-Id: I91ae1d3c15321e802b2869514091426359b670ee
Reviewed-on: https://skia-review.googlesource.com/c/173012
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-28 18:27:40 +00:00
Eric Boren
8061053b73 [infra] Flutter bot should sync to origin/skia-master
Bug: skia:
Change-Id: I223bef522ff8605674f4ecabcbd0624cfc92cb06
Reviewed-on: https://skia-review.googlesource.com/c/173224
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-11-28 17:34:05 +00:00
Mike Reed
ef4047db96 add bench for computing convexity
Bug: skia:
Change-Id: Iaa2971c28f6a8e869b92887e0c0595c73b0aebdb
Reviewed-on: https://skia-review.googlesource.com/c/173225
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-28 17:14:17 +00:00
Florin Malita
8ac81b7fb5 [skottie] Add a custom property manager util class
To facilitate demo code consolidation, introduce a custom property
manager which filters for node names starting with '$' and treats all
properties sharing the same name unitarily.

Update the Colorize GM to use this new helper.

Also revisit the PropertyObserver interface:

 * aliases for client-facing value types
 * introduce a new (decomposed) TransformPropertyValue, to replace component-wise setters
 * consolidate the PropertyHandle interface to only expose get()/set()

Bug: skia:
Change-Id: I9aa9ee80c1fb57bbfbacab0fc3f017da909b24d9
Reviewed-on: https://skia-review.googlesource.com/c/173220
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-11-28 17:12:07 +00:00
skia-autoroll
0aed7ea301 Roll third_party/externals/angle2 83b2f0e8a2e0..c4e0a1e511fc (1 commits)
83b2f0e8a2..c4e0a1e511


git log 83b2f0e8a2e0..c4e0a1e511fc --date=short --no-merges --format='%ad %ae %s'
2018-11-28 timvp@google.com Revert "Enhance ANGLE for Android Developer Options"


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

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

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:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=borenet@google.com

Change-Id: I54d4e8b66779bf4d1f21fab3592695f6a4ab44eb
Reviewed-on: https://skia-review.googlesource.com/c/173011
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-28 16:56:15 +00:00
skia-autoroll
ac1abd29cc Roll third_party/externals/swiftshader 67c93d206431..3b003a51bc9a (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/67c93d206431..3b003a51bc9a


git log 67c93d206431..3b003a51bc9a --date=short --no-merges --format='%ad %ae %s'
2018-11-28 sugoi@google.com Removed SwiftShader's custom Viewport structure


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

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=borenet@google.com

Change-Id: Idffa6f4f57031d267dcaf411193898799ee80209
Reviewed-on: https://skia-review.googlesource.com/c/173010
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-28 16:17:11 +00:00
Mike Reed
32c6066ea8 Force clients to specify font when requesting strikecache
Bug: skia:
Change-Id: If56222039239df085d6c40e835060e91fe70940b
Reviewed-on: https://skia-review.googlesource.com/c/173166
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-28 16:14:02 +00:00
Greg Daniel
6616efbdeb In Vulkan, use 1000 for maxLod instead of maxMipLevel when using mips.
This has the side effect of making samplers in Vulkan only dependent on
the sampler state and not the texture size.

Bug: skia:
Change-Id: I03ccc2c2faead4a1e10b9dd1e5d5885a9d672cc5
Reviewed-on: https://skia-review.googlesource.com/c/173103
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-11-28 16:09:01 +00:00
Eric Boren
a2e613c999 Use LUCI trybots in update_meta_config
Bug: skia:
Change-Id: If7f9f3f4f79544484eb0fb406fea6772a9ca7722
Reviewed-on: https://skia-review.googlesource.com/c/171909
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2018-11-28 16:09:00 +00:00
Mike Reed
fc614f1179 rm SK_SUPPORT_LEGACY_TEXTBLOBBUILD_WITH_PAINT from fluter
Bug: skia:
Change-Id: I47ccd1d6ea7334096bab97804728fd26674eed39
Reviewed-on: https://skia-review.googlesource.com/c/173222
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-11-28 15:59:15 +00:00
Mike Reed
46c774aa54 rm SK_SUPPORT_LEGACY_NESTED_HINTINGENUM from flutter
Bug: skia:
Change-Id: Id025fe6bd3aee7458c61678f803e19905c31333f
Reviewed-on: https://skia-review.googlesource.com/c/173221
Reviewed-by: Mike Reed <reed@google.com>
2018-11-28 15:50:27 +00:00
Mike Reed
d437c79ed0 Revert "don't trust convexity with affine transforms"
This reverts commit 26d8d77aae.

Reason for revert: speculative, in case this is blocking the chrome roll

Original change's description:
> don't trust convexity with affine transforms
> 
> In theory, a convex shape transformed by an affine matrix should still
> be convex. However, due to numerical nastiness of floats, when we try
> to determine if something is convex, we can get different answers pre
> and post a transformation (think of two line segments nearly colinear).
> 
> Convex paths take a faster scan converter, but it is only well behaved
> if the path is, in fact, convex. Thus we have to be conservative about
> which paths we mark as convex.
> 
> This bug found a case where a "convex" path, after going through a transform,
> became (according to our measure) non-convex. The bug was that we *thought*
> that once convex always convex, but in reality it was not. The fix (hack) is
> to notice when we transform by an affine matrix (we're still assuming/hoping
> that scaling and translate keep things convex (1)...) and mark the convexity
> as "unknown", forcing us to re-compute it.
> 
> This will slow down these paths, since it costs something to compute convexity.
> Hopefully non-scale-translate transforms are rare, so we won't notice the
> speed loss too much.
> 
> (1) This is not proven. If we find scaling/translation to break our notion of
> convexity, we'll need to get more aggressive/clever to find a fix.
> 
> 
> Bug: 899689
> Change-Id: I5921eca247428bf89380bc2395fe373fa70deb1d
> Reviewed-on: https://skia-review.googlesource.com/c/173080
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Cary Clark <caryclark@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

TBR=mtklein@google.com,jvanverth@google.com,caryclark@google.com,reed@google.com,caryclark@skia.org

Change-Id: I5d846798f2c34c6576591a3c3125cfdc3c72dbdc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 899689
Reviewed-on: https://skia-review.googlesource.com/c/173162
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-28 13:13:43 +00:00
Mike Reed
d3efa999af Reland "Don't let neighboring radii in GrAAFillRRectOp get too close"
This reverts commit 1dced86481.

Reason for revert: prolly not the problem for the roll

Original change's description:
> Revert "Don't let neighboring radii in GrAAFillRRectOp get too close"
> 
> This reverts commit 778edc883b.
> 
> Reason for revert: speculative, to see if chrome rolls
> 
> Original change's description:
> > Don't let neighboring radii in GrAAFillRRectOp get too close
> > 
> > Since each corner uses a different reference point, it's possible that
> > FP rounding can cause the edges of very close radii on a common edge
> > to accidentally overlap. This can cause a pixel to be drawn/blended
> > more than once. This CL addresses the issue by not allowing
> > neighboring radii on a common edge to get closer than 1/16 pixel from
> > one another.
> > 
> > Bug: skia:8562
> > Change-Id: Ifda97c9a4c3973405f86f7fc6846a4073b3ab581
> > Reviewed-on: https://skia-review.googlesource.com/c/173036
> > Commit-Queue: Chris Dalton <csmartdalton@google.com>
> > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> 
> TBR=jvanverth@google.com,csmartdalton@google.com
> 
> Change-Id: Ica14341e38bc0da649f0f0ade70692b0372f1c78
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:8562
> Reviewed-on: https://skia-review.googlesource.com/c/173160
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=jvanverth@google.com,csmartdalton@google.com,reed@google.com

Change-Id: I94f63e0e221b3e4340fc850a631a884738c479a7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8562
Reviewed-on: https://skia-review.googlesource.com/c/173161
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-28 13:13:24 +00:00
Mike Reed
1dced86481 Revert "Don't let neighboring radii in GrAAFillRRectOp get too close"
This reverts commit 778edc883b.

Reason for revert: speculative, to see if chrome rolls

Original change's description:
> Don't let neighboring radii in GrAAFillRRectOp get too close
> 
> Since each corner uses a different reference point, it's possible that
> FP rounding can cause the edges of very close radii on a common edge
> to accidentally overlap. This can cause a pixel to be drawn/blended
> more than once. This CL addresses the issue by not allowing
> neighboring radii on a common edge to get closer than 1/16 pixel from
> one another.
> 
> Bug: skia:8562
> Change-Id: Ifda97c9a4c3973405f86f7fc6846a4073b3ab581
> Reviewed-on: https://skia-review.googlesource.com/c/173036
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

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

Change-Id: Ica14341e38bc0da649f0f0ade70692b0372f1c78
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8562
Reviewed-on: https://skia-review.googlesource.com/c/173160
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-28 12:44:55 +00:00
skia-recreate-skps
600ed12666 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I3053b126cf56a860c81bf1778fafcc52890e0629
Reviewed-on: https://skia-review.googlesource.com/c/173133
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-28 05:58:05 +00:00
skia-autoroll
1437355d7e Roll third_party/externals/angle2 b980c5630eb5..83b2f0e8a2e0 (7 commits)
b980c5630e..83b2f0e8a2


git log b980c5630eb5..83b2f0e8a2e0 --date=short --no-merges --format='%ad %ae %s'
2018-11-28 jdarpinian@chromium.org WebGL: Forbid GenerateMipmap on zero-size textures
2018-11-28 enga@chromium.org Change offsets in MultiDrawElements* entrypoints to match glMultiDrawElements
2018-11-28 jmadill@chromium.org Remove gl::Error.
2018-11-27 timvp@google.com Enhance ANGLE for Android Developer Options
2018-11-27 jmadill@chromium.org Slight refactor to ErrorStrings.h.
2018-11-27 jmadill@chromium.org Use flat enum for PrimitiveMode.
2018-11-27 geofflang@chromium.org Supress RobustResourceInitTestES3.MaskedStencilClearBuffer on Linux OpenGL


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

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

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:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=borenet@google.com

Change-Id: I7da966fe16a552a56128cfcefc347c02b3b364e3
Reviewed-on: https://skia-review.googlesource.com/c/173008
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-28 04:04:41 +00:00
Chris Dalton
af3dd43a80 Revert "Disable instanced rendering on Skylake"
This reverts commit 240ea4c03a.

Reason for revert: Too many regressions from not having CCPR

Original change's description:
> Disable instanced rendering on Skylake
> 
> We previously had a glFlush() workaround for instanced rendering on
> Skylake. However, the non-instanced approach is often faster than
> instanced + glFlush(). This CL just disables instanced rendering
> altogether on Skylake instead. The chip is old enough now that this
> seems like a reasonable solution.
> 
> Bug: skia:8566
> Change-Id: Ib82a519d8186b463b72b20203fb69d078e757aa7
> Reviewed-on: https://skia-review.googlesource.com/c/172470
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

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

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

Bug: skia:8566
Change-Id: I947cdd0026b7fc31a4f75f5f416299e27dd6f56e
Reviewed-on: https://skia-review.googlesource.com/c/173128
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-11-28 00:52:30 +00:00
Ravi Mistry
a23de1d5c8 [Android compile bots] Make lunch target part of the GS file name
This is to make sure compile bots on the same change do not use the same name.

NoTry: true
Bug: skia:8560
Change-Id: I8de6a6831a84f26b62b89e2af80878b09e8ea8e4
Reviewed-on: https://skia-review.googlesource.com/c/173100
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-11-27 20:49:27 +00:00
Leon Scroggins III
9b0ba2c2cd SkWuffsCodec: fix dependent frames
SkWuffsCodec tells wuffs to decode only the current frame's
contribution, and then SkWuffsCodec blends it onto the prior frame (if
any). If there is a prior frame, do not call SkSampler::Fill, and blend
the new frame onto the old, rather than replacing it.

In addition, set rowsDecoded to scaledHeight to work properly for
scaled decodes.

TBR=reed@google.com No change to public API

Bug: skia:8235
Change-Id: I08e89f1083da3f9b98f93d8d2375ce78f0c378f8
Reviewed-on: https://skia-review.googlesource.com/c/171645
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Nigel Tao <nigeltao@google.com>
2018-11-27 20:35:13 +00:00
Herb Derby
f4958ce207 Move path building logic to SkGlyph
This will allow the remote glyph cache to check for paths.

Change-Id: I900a0aee294e800241d3ac749d5dd976e9364d41
Reviewed-on: https://skia-review.googlesource.com/c/172946
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-11-27 20:28:30 +00:00
Mike Klein
4eaf86289a workaround black screen in viewer on Mac 10.14
Rolling up through 4741821e57 would also fix this, but I'm not quite that dedicated to fixing the SDL build issues involved...

Change-Id: I54e487eef8e3ab3bf9939ce219ef2a1642ca274d
Reviewed-on: https://skia-review.googlesource.com/c/172948
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2018-11-27 20:26:30 +00:00
Ben Wagner
9f0d8c24c8 Add support for fallbackFor in Android parser.
Change-Id: Id328c67b6ad5d76584030f480316425f25979ebf
Reviewed-on: https://skia-review.googlesource.com/c/171644
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-11-27 20:20:38 +00:00
Mike Reed
26d8d77aae don't trust convexity with affine transforms
In theory, a convex shape transformed by an affine matrix should still
be convex. However, due to numerical nastiness of floats, when we try
to determine if something is convex, we can get different answers pre
and post a transformation (think of two line segments nearly colinear).

Convex paths take a faster scan converter, but it is only well behaved
if the path is, in fact, convex. Thus we have to be conservative about
which paths we mark as convex.

This bug found a case where a "convex" path, after going through a transform,
became (according to our measure) non-convex. The bug was that we *thought*
that once convex always convex, but in reality it was not. The fix (hack) is
to notice when we transform by an affine matrix (we're still assuming/hoping
that scaling and translate keep things convex (1)...) and mark the convexity
as "unknown", forcing us to re-compute it.

This will slow down these paths, since it costs something to compute convexity.
Hopefully non-scale-translate transforms are rare, so we won't notice the
speed loss too much.

(1) This is not proven. If we find scaling/translation to break our notion of
convexity, we'll need to get more aggressive/clever to find a fix.


Bug: 899689
Change-Id: I5921eca247428bf89380bc2395fe373fa70deb1d
Reviewed-on: https://skia-review.googlesource.com/c/173080
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-11-27 19:36:36 +00:00
skia-autoroll
b8c3638363 Roll third_party/externals/angle2 471b8d4c7383..b980c5630eb5 (3 commits)
471b8d4c73..b980c5630e


git log 471b8d4c7383..b980c5630eb5 --date=short --no-merges --format='%ad %ae %s'
2018-11-27 jmadill@chromium.org Reformat all cpp and h files.
2018-11-27 geofflang@chromium.org Expose EXT_color_buffer_half_float if RGBA16F is renderable.
2018-11-27 jiajia.qin@intel.com ES31: Add swizzle support in SSBO (Part 1)


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

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

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:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=borenet@google.com

Change-Id: I32a96a7d78740214410cc378f4115a8b9977d75f
Reviewed-on: https://skia-review.googlesource.com/c/173007
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-27 19:15:33 +00:00
Kevin Lubick
61ef7b2589 [canvaskit] Add shadow and save/restore support
This also exposes the ShadowUtils::drawShadow on Canvas,
even though it wasn't what was needed to duplicate
the Canvas effect.

Bug: skia:
Change-Id: I12276ef106244218e4827b7fcd7949c83cf13e5f
Reviewed-on: https://skia-review.googlesource.com/c/172967
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-27 18:56:09 +00:00
Hal Canary
2a1848d2aa SkShaper->SkFont
Change-Id: I6293f08c426650e3d1da8b2f94a81f7b0a65e8a3
Reviewed-on: https://skia-review.googlesource.com/c/172969
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-11-27 18:53:32 +00:00
Brian Salomon
fc06f981e2 Clamp GL_TEXTURE_MAX_LEVEL to 1 on Android.
This seems to avoid a bug when sampling from GL_TEXTURE_EXTERNAL_OES
textures.

Remove code to avoid sampler objects on when using GLSL ES2 on GL ES3.
This was a speculative workaround that did not help.


Bug: https://github.com/flutter/flutter/issues/23900
Bug: https://github.com/flutter/flutter/issues/24402
Bug: https://github.com/flutter/flutter/issues/24391

Change-Id: Id14080131e49e632949a3bdc2b15f6e3ce97bf93
Reviewed-on: https://skia-review.googlesource.com/c/172978
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-11-27 18:36:11 +00:00
Herb Derby
df246b9c1b Add explicit to ctor
Change-Id: I4232d23e0c2dfe46695e948c46f2745c8e7e555c
Reviewed-on: https://skia-review.googlesource.com/c/172945
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-27 18:11:30 +00:00
Ravi Mistry
9bb1eea3fc Add new Android compile bot to CQ
NoTry: true
Bug: skia:8560
Change-Id: I3dfae441d8db436309582bc4c4b15fe68d4f6af3
Reviewed-on: https://skia-review.googlesource.com/c/172974
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2018-11-27 18:07:38 +00:00
Chris Dalton
778edc883b Don't let neighboring radii in GrAAFillRRectOp get too close
Since each corner uses a different reference point, it's possible that
FP rounding can cause the edges of very close radii on a common edge
to accidentally overlap. This can cause a pixel to be drawn/blended
more than once. This CL addresses the issue by not allowing
neighboring radii on a common edge to get closer than 1/16 pixel from
one another.

Bug: skia:8562
Change-Id: Ifda97c9a4c3973405f86f7fc6846a4073b3ab581
Reviewed-on: https://skia-review.googlesource.com/c/173036
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-11-27 18:06:28 +00:00
Mike Reed
54bf684343 Revert "Revert "migrate to passing paint/ctm for bounds""
Fix: pass real paint to FindOrCreateStrikeWithNoDeviceExclusive

This reverts commit 914d319a02.

Bug: skia:
Change-Id: I2d618a868ae57e34cba5964aadd4a365481cb4cd
Reviewed-on: https://skia-review.googlesource.com/c/172976
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-11-27 17:53:47 +00:00
skia-autoroll
09523b43fc Roll third_party/externals/swiftshader 4ad2322aa9cf..67c93d206431 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4ad2322aa9cf..67c93d206431


git log 4ad2322aa9cf..67c93d206431 --date=short --no-merges --format='%ad %ae %s'
2018-11-27 sugoi@google.com Expose the minimal subset of required supported formats


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

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=borenet@google.com

Change-Id: I61035fcc74a8cb55fab35180f732ea690c85b8c7
Reviewed-on: https://skia-review.googlesource.com/c/173005
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-27 17:37:40 +00:00
Mike Klein
cc3c342451 Reland "move decal_filter_scale inline, walk decal in 32.32""
This reverts commit dbbd263d77.

And adds a guard flag for Google3.

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: I6b7615aaf5f161bfad2b3344fd9ab95a7f1e9d47
Reviewed-on: https://skia-review.googlesource.com/c/172944
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-27 17:32:36 +00:00
Brian Osman
017aa53068 Remove tonalshadows GMs
These aren't testing Skia core functionality

Bug: skia:7518
Change-Id: Ib564dc7b0aa8f137c2c40141fa5d7e9a1bfe4d64
Reviewed-on: https://skia-review.googlesource.com/c/172968
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-27 17:32:35 +00:00
Mike Reed
914d319a02 Revert "migrate to passing paint/ctm for bounds"
This reverts commit d5ed3dafb2.

Reason for revert: goofed up, passing default paint instead of real one

Original change's description:
> migrate to passing paint/ctm for bounds
> 
> Some of this is left in for migrating callers (see docs)
> 
> - want getWidths to just take widths (and no paint)
> - want getBounds to just take bounds AND paint
> - want getWidthsBounds to take it all
> 
> Bug: skia:
> Change-Id: I498cd8295b90995c45237d3cf39fc097252f485e
> Reviewed-on: https://skia-review.googlesource.com/c/172868
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: Ifa827d824f0f0ef63308e5cc1fe579b1b14df616
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/172975
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-27 16:47:03 +00:00
Eric Boren
ad5f069490 [infra] Blacklist another SKP for IntelHD405 Vulkan perf bot
Bug: skia:7322
Change-Id: I2b50478e85c42beacbe67a8c7eaf46a487cf6f86
Reviewed-on: https://skia-review.googlesource.com/c/172973
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-11-27 15:56:35 +00:00
Mike Klein
dbbd263d77 Revert "move decal_filter_scale inline, walk decal in 32.32"
This reverts commit 6bee47b860.

Reason for revert: needs a Google3 guard.

Original change's description:
> move decal_filter_scale inline, walk decal in 32.32
> 
> Walking soemtimes in 32.32 and sometimes in 16.16 is leading to small
> diffs in https://chromium-review.googlesource.com/c/chromium/src/+/1346729.
> 
> I think by walking either consistently will help avoid the problems.
> Might as well walk 32.32.
> 
> Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
> Change-Id: I4bbe8e10655a97367d3b59d203206bc2c2cf55e8
> Reviewed-on: https://skia-review.googlesource.com/c/172941
> Auto-Submit: Mike Klein <mtklein@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

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

Change-Id: I0e1c3eb1459dd5466c7220623ba3891ab64b9ea8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Reviewed-on: https://skia-review.googlesource.com/c/172943
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-27 15:27:34 +00:00
Michael Ludwig
f995c0521a Reland "Optimize trivial per-edge aa rect tessellation"
This is a reland of b336c39e07 with fixes to resolve layout failures.

Original change's description:
> Optimize trivial per-edge aa rect tessellation
>
> Bug: skia:
> Change-Id: I380b443216b238e13bfff7ed13526dda1380ef99
> Reviewed-on: https://skia-review.googlesource.com/c/171723
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

Bug: skia:
Change-Id: Ica9a964dd9f1962ff7c0dc194675667692542112
Reviewed-on: https://skia-review.googlesource.com/c/172964
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-11-27 14:39:01 +00:00
Mike Klein
6bee47b860 move decal_filter_scale inline, walk decal in 32.32
Walking soemtimes in 32.32 and sometimes in 16.16 is leading to small
diffs in https://chromium-review.googlesource.com/c/chromium/src/+/1346729.

I think by walking either consistently will help avoid the problems.
Might as well walk 32.32.

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: I4bbe8e10655a97367d3b59d203206bc2c2cf55e8
Reviewed-on: https://skia-review.googlesource.com/c/172941
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-27 13:35:05 +00:00
skia-autoroll
4f83c59eea Roll third_party/externals/angle2 5552cdf032dd..471b8d4c7383 (1 commits)
5552cdf032..471b8d4c73


git log 5552cdf032dd..471b8d4c7383 --date=short --no-merges --format='%ad %ae %s'
2018-11-27 jdarpinian@chromium.org WebGL, D3D: Forbid multiple TF outputs in one buffer


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

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

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:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=borenet@google.com

Change-Id: I01b0deaba9afdeeb6fcad6f82b39952aef69da89
Reviewed-on: https://skia-review.googlesource.com/c/173004
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-27 10:28:17 +00:00
skia-bookmaker
e5d244c68a Update markdown files
Automatic commit by the Housekeeper-Nightly-Bookmaker bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I4086295ae9981f4febd76d4d5d7fccddf0e21f23
Reviewed-on: https://skia-review.googlesource.com/c/173035
Reviewed-by: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-27 06:18:47 +00:00
skia-recreate-skps
b95780e3e6 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I8e0efdf20b19b0641599be60df915cdd13de552c
Reviewed-on: https://skia-review.googlesource.com/c/173034
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-27 06:13:47 +00:00
Mike Reed
d5ed3dafb2 migrate to passing paint/ctm for bounds
Some of this is left in for migrating callers (see docs)

- want getWidths to just take widths (and no paint)
- want getBounds to just take bounds AND paint
- want getWidthsBounds to take it all

Bug: skia:
Change-Id: I498cd8295b90995c45237d3cf39fc097252f485e
Reviewed-on: https://skia-review.googlesource.com/c/172868
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-27 02:37:28 +00:00
skia-autoroll
2c669e77c1 Roll third_party/externals/angle2 573f76b3eebf..5552cdf032dd (7 commits)
573f76b3ee..5552cdf032


git log 573f76b3eebf..5552cdf032dd --date=short --no-merges --format='%ad %ae %s'
2018-11-26 syoussefi@chromium.org Vulkan: Create buffer view for BufferHelper
2018-11-26 geofflang@chromium.org Vulkan: Implement ANGLE_translated_shader_source
2018-11-26 syoussefi@chromium.org Vulkan: Implement vk::BufferView
2018-11-26 jmadill@chromium.org Update clang-format settings.
2018-11-26 geofflang@chromium.org GL: Work around Qualcomm sRGB ReadPixels driver bug.
2018-11-26 geofflang@chromium.org GL: Implement GL_NV_fence on top of GLsync objects.
2018-11-26 matavenrath@nvidia.com Don't generate TypeInfo objects as static objects within GetTypeInfo function


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

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

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:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=borenet@google.com

Change-Id: I9678a218ac0578e9eb5e791fa270b4bb1515b640
Reviewed-on: https://skia-review.googlesource.com/c/173001
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-27 01:44:38 +00:00
recipe-roller
d53145b00f 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.
recipe_engine:
  https://crrev.com/690ad21d32ae0a94512bc9ac4a6b8fcca96d67f8 Update my legal name (sergiyb@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ife66d4542e6447968bb81dcd9e46fd922a42bbc1
Reviewed-on: https://skia-review.googlesource.com/c/172971
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org>
2018-11-26 23:53:00 +00:00