Commit Graph

38486 Commits

Author SHA1 Message Date
Mike Reed
94cca60bfa start to use font for measure, not paint
-- lots more where this came from

Bug: skia:2664
Change-Id: I8bb47f02c156b0b88fbb92fec73af0eb6641b1bf
Reviewed-on: https://skia-review.googlesource.com/c/173769
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-12-02 21:31:36 +00:00
skia-recreate-skps
683e649249 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I4c75b6badc6ce1a0023f7831d6b9c61c42d39607
Reviewed-on: https://skia-review.googlesource.com/c/173842
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-12-02 08:34:41 +00:00
skia-bookmaker
6894f22de2 Update markdown files
Automatic commit by the Housekeeper-Nightly-Bookmaker bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I7a5ababc8dab41c2f1c89b22e3387c4a9a377091
Reviewed-on: https://skia-review.googlesource.com/c/173841
Commit-Queue: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
2018-12-02 06:25:06 +00:00
skia-recreate-skps
bce67cad86 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ia29b6c9fe44d375570e7adf3212cb16ada399914
Reviewed-on: https://skia-review.googlesource.com/c/173840
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-12-02 05:59:44 +00:00
Mike Reed
07105bbcbe don't trust convexity after a transform
In theory, a convex shape is still convex if transformed by an affine
matrix. However, SkPath segments are specified using floats, and attributes
like collinearity can break under some transforms due to finite precision.

Computing convexity is non-trivial, so there is value in SkPath caching this
calculation. Convexity is useful, as both the CPU and GPU backends can draw
convex shapes faster than non-convex.

To balance these two (fragile float math and value of caching convexity),
this CL invalidates this cached state if the transform could change convexity.
In the general case, it is assumed that convexity could change. Special cases
where it is safe to keep the cached state after transform are:
- identity transform
- scale/translate transform if the path is known to be axis-aligned
All other combinations invalidate the cached state, forcing it to be
recomputed.

"axis-aligned" means the segments in the path are all axis-aligned, horizontal
or vertical (e.g. a rect or rrect)

Bug: 899689
Change-Id: I1381273eaff61d6b7134ae94b4f251c69991081a
Reviewed-on: https://skia-review.googlesource.com/c/173226
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2018-12-01 21:17:34 +00:00
skia-recreate-skps
f31f74a250 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Id65947fc90810dbe124abbc51596565304a24454
Reviewed-on: https://skia-review.googlesource.com/c/173801
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-12-01 05:56:06 +00:00
Florin Malita
91af8d8202 [skottie] Expose composition markers to embedders
Add a MarkerObserver interface (to replace the current
AnnotationObserver), and update CustomPropertyManager to intercept both
properties and markers.

TBR=
Change-Id: If79de419066916bc596316f0a551c75564069239
Reviewed-on: https://skia-review.googlesource.com/c/173766
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-12-01 04:44:03 +00:00
skia-autoroll
30bac10ed0 Roll third_party/externals/angle2 317a9ebdb019..4abdf74f0afc (2 commits)
317a9ebdb0..4abdf74f0a


git log 317a9ebdb019..4abdf74f0afc --date=short --no-merges --format='%ad %ae %s'
2018-11-30 syoussefi@chromium.org Vulkan: Add dynamic index buffers to graph
2018-11-30 ianelliott@google.com Version-2 API of the A4A opt-in/out (a.k.a. feature-support utilities)


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

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: I2b7ad958b715ed6446873e644659b0b156a2f3b1
Reviewed-on: https://skia-review.googlesource.com/c/173735
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-12-01 02:10:28 +00:00
Brian Salomon
2335644771 Fix occurrences of "-Wextra-semi-stmt"
Docs-Preview: https://skia.org/?cl=173761
Change-Id: Iefdb91cd28eabb4b01b7b42a4f300b0b4caf05d9
Reviewed-on: https://skia-review.googlesource.com/c/173761
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-11-30 23:23:09 +00:00
Mike Reed
64284e1482 experimental alternative isconvex
Bug: skia:
Change-Id: I55175a95d37aad9a656cd211fc6c7238bdb7d674
Reviewed-on: https://skia-review.googlesource.com/c/173361
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-11-30 21:42:14 +00:00
skia-autoroll
9e55daa7ec Roll third_party/externals/swiftshader bffee5e5454c..bd49ad09c5ca (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/bffee5e5454c..bd49ad09c5ca


git log bffee5e5454c..bd49ad09c5ca --date=short --no-merges --format='%ad %ae %s'
2018-11-30 kpschoedel@google.com Enable ARM32 in src/Reactor/BUILD.gn


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

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: I6fadb2357a628a26093887f43162a3910c4705ba
Reviewed-on: https://skia-review.googlesource.com/c/173728
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-30 21:34:41 +00:00
Ben Wagner
06602e7b73 Remove FontScalerTest sample.
This sample has had a gm counterpart for a long time now, and is also full
of dead code. It isn't adding anything to our understanding of Skia, so
remove it.

Change-Id: I6f3b0ff454b603815d66480ec11c8426717578be
Reviewed-on: https://skia-review.googlesource.com/c/173764
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
2018-11-30 21:30:34 +00:00
Hal Canary
5ee6fc26df SkQP: doc simplify, make_apk_list to python, upload_apk tool
No-Try: true

Change-Id: If00eda1b8261c8512114e2e113f4c00ecd04815c
Reviewed-on: https://skia-review.googlesource.com/c/173765
Reviewed-by: Hal Canary <halcanary@google.com>
2018-11-30 20:54:01 +00:00
Michael Ludwig
024e262712 Share GP implementation between GrFillRectOp and GrTextureOp
Bug: skia:
Change-Id: I6c71dac4cf88f274a39f121f0b5315e6c5b914c8
Reviewed-on: https://skia-review.googlesource.com/c/173700
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-11-30 20:47:05 +00:00
Michael Ludwig
4b29d42042 Send max coverage limit for subpixel rects
Bug: skia:
Change-Id: Ieb702747c48ea70811d6ce780d2e339780f00806
Reviewed-on: https://skia-review.googlesource.com/c/173642
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-11-30 20:39:12 +00:00
skia-autoroll
ccd08cd389 Roll third_party/externals/swiftshader d46faeb43287..bffee5e5454c (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/d46faeb43287..bffee5e5454c


git log d46faeb43287..bffee5e5454c --date=short --no-merges --format='%ad %ae %s'
2018-11-30 sugoi@google.com Allow Command Buffers to be allocated and freed


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

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: Ifb40d5de669b39fb670b7a38d571b011e45e59d7
Reviewed-on: https://skia-review.googlesource.com/c/173725
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-30 20:38:03 +00:00
Ben Wagner
e6dfe8e6f8 Set mac windows to their current size.
The initially requested size may be too big so the actual window size
may end up smaller than requested. When resetting the window to the
initial size, use the actual initial size. Otherwise those with small
screens will end up with the origin in the wrong place until resizing
the window.

Change-Id: I962cb8db52ece09f6bdc27b7b5520ce8a524ffe6
Reviewed-on: https://skia-review.googlesource.com/c/173760
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-30 20:30:12 +00:00
Kevin Lubick
ea905ec333 [canvaskit] Save a copy on CPU backend by using RasterDirect
Draw directly into an unpremul buffer (which is what Canvas's
get/putImageData is) and it speeds up Skottie animation by
about 3x.

Bug: skia:
Change-Id: Ie131276e3a675e0e5a35190da93f34d7469624e4
Reviewed-on: https://skia-review.googlesource.com/c/173644
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-30 19:29:25 +00:00
Brian Salomon
577aa0fbaf Uninstantiate proxies when not explicitly allocating
Bug: chromium:905337
Change-Id: I1a105fa3048ead84d202f6c6225d1247c1a70258
Reviewed-on: https://skia-review.googlesource.com/c/173431
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-11-30 19:01:03 +00:00
Herbert Derby
279c28120f Expand handling of empty glyphs to SDF and Path cases
Hoist the remaining empty checks into the common code.

Change-Id: Ib34cf8d1121aae62735566cc230cdc4429dfda19
Reviewed-on: https://skia-review.googlesource.com/c/173641
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-30 18:55:32 +00:00
Ben Wagner
95fc1199d8 Fix new clang warning around shadowing.
clang now warns about method parameter names shadowing field names.

Change-Id: Ic67bd6d84fa515fb5342f284320130104f2ee292
Reviewed-on: https://skia-review.googlesource.com/c/173646
Auto-Submit: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2018-11-30 18:48:42 +00:00
Kevin Lubick
dee08d8f65 [canvaskit] Fix conversion of large images to base64
Bug: skia:
Change-Id: I8ab40a382557ae6bd13884ddce027e51ce1fb21f
Reviewed-on: https://skia-review.googlesource.com/c/173701
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-30 18:43:37 +00:00
Hal Canary
ac7f23c807 SkQP: refatctor C++ bits.
* C++ code moved into tools/skqp/src/.
  * State held with single SkQP class.
  * gmkb functions moved to skqp_model.{h,cpp}
  * model no longer knows about report format.
  * skqp_main and skqp_lib no longer have globals
  * jni code has fewer globals.
  * skqp_main no longer uses googletest.
  * AssetMng returns SkData, not a SkStream.
  * Add jitter tool.
  * dump GPU information into grdump.txt
  * JUnit puts report in directory with timestamp.
  * Document SkQP Render Test Algorithm.
  * GPU driver correctness workarounds always off
  * cut_release tool for assembling models
  * make_rendertests_list.py to help cut_release
  * make_gmkb.go emits a list of models

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86-devrel-Android_SKQP

Change-Id: I7d4f0c24592b1f64be0088578a3f1a0bc366dd4d
Reviewed-on: https://skia-review.googlesource.com/c/110420
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-11-30 18:38:00 +00:00
Herbert Derby
20bd0f93f2 Make SkGlyph::PathData own the path
Change-Id: If311afb79194864df06ea8856ff2280ff29ee492
Reviewed-on: https://skia-review.googlesource.com/c/173647
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-30 18:32:31 +00:00
skia-autoroll
6d28cf3f8e Roll third_party/externals/angle2 b51eb09fb5bb..317a9ebdb019 (1 commits)
b51eb09fb5..317a9ebdb0


git log b51eb09fb5bb..317a9ebdb019 --date=short --no-merges --format='%ad %ae %s'
2018-11-30 tobine@google.com Vulkan: Roll VK deps forward


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

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: I25665f80e3fa40e4e044627d2ccca0a19cf26f0d
Reviewed-on: https://skia-review.googlesource.com/c/173604
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-30 17:10:41 +00:00
Greg Daniel
0e5a0ef2ab Add blacklist for intel 405 vulkan perf bot.
Bug: skia:7322
Change-Id: I46e9a1169a30b8b0ed5033c4ab9d877c43f4e59e
Reviewed-on: https://skia-review.googlesource.com/c/173643
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-11-30 16:38:31 +00:00
Herbert Derby
dfd9c79566 Make path position handling consistant with SDF
Remove using origin from ARGBfallback; it was never used. Rename position to glyphPos
and calculate only once like SDF painting.

Remove finite check for positions. This is handle latter in the stack. This check is really only done
on device coordinates. All the coordinates in the routine are source space.

Change-Id: I84db6b7298a8fa98faeac9b2227abd3d063b4e28
Reviewed-on: https://skia-review.googlesource.com/c/173430
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-30 16:15:16 +00:00
Brian Osman
c337a63229 Add SkEncodedOrigin to SkYUVASizeInfo, fix JPEG orientation in GPU decode path
Bug: skia:7523
Change-Id: I7d48e5f5930b413fa7f27aa391bf92c5af1342e9
Reviewed-on: https://skia-review.googlesource.com/c/173429
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2018-11-30 16:05:36 +00:00
Mike Reed
42af49274f update docs around fonthinting
follow-on to https://skia-review.googlesource.com/c/skia/+/173432

Bug: skia:
Change-Id: I0cf30c30dc3aae9733b7f4a6830814c288647f42
Reviewed-on: https://skia-review.googlesource.com/c/173640
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2018-11-30 15:43:05 +00:00
Kevin Lubick
eb2f6b0adb [canvaskit] Add gradients and clips
Refactors things inside to support both color
and gradient as _fillStyle/_strokeStyle.

Bug: skia:
Change-Id: I364ceb7d55c41e11161d5577dcd1611a592bbc29
Reviewed-on: https://skia-review.googlesource.com/c/173421
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-30 13:06:07 +00:00
skia-recreate-skps
62f64b5a05 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ic72d0deea0a49e8eb03852e7f18693330cbd606a
Reviewed-on: https://skia-review.googlesource.com/c/173560
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-30 05:54:17 +00:00
skia-autoroll
2c8a9c871e Roll third_party/externals/angle2 8dc27f99b556..b51eb09fb5bb (5 commits)
8dc27f99b5..b51eb09fb5


git log 8dc27f99b556..b51eb09fb5bb --date=short --no-merges --format='%ad %ae %s'
2018-11-29 syoussefi@chromium.org Vulkan: Allow bindings to compute stage
2018-11-29 syoussefi@chromium.org Vulkan: Uber-shader generated code optimization
2018-11-29 jmadill@chromium.org Pass Context to setLabel.
2018-11-29 jmadill@chromium.org Clear draw attachments as a dirty object.
2018-11-29 cnorthrop@google.com Add temporary icon for ANGLE apk


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

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: Ie7914c3c62f800fde6745e465fec549e97bec75a
Reviewed-on: https://skia-review.googlesource.com/c/173397
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-30 04:27:43 +00:00
Mike Reed
37cb47685f remove SK_SUPPORT_LEGACY_NESTED_HINTINGENUM code
Bug: skia:
Change-Id: Idc44f02fab691881e1c1a409adc8641663401732
Reviewed-on: https://skia-review.googlesource.com/c/173432
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-30 03:48:01 +00:00
skia-autoroll
83144d96a1 Roll third_party/externals/swiftshader a972758d6e10..d46faeb43287 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/a972758d6e10..d46faeb43287


git log a972758d6e10..d46faeb43287 --date=short --no-merges --format='%ad %ae %s'
2018-11-30 jansene@google.com Allow swiftshader to be used as a subproject.


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

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: If5726ac6157cac1bdcdf8198613a91caa750f135
Reviewed-on: https://skia-review.googlesource.com/c/173395
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-30 02:47:09 +00:00
Brian Osman
f7b1e11cb3 Remove the lines-only "optimization" from AA convex path renderer
Enabling this in Chrome triggered a perf regression, and from looking at
the AA convex tesselator, I can believe that it's going to be as slow or
slower. (We'll trade a slightly more expensive shader for a much more
expensive chunk of CPU setup code).

Removing this simplifies this path renderer, including the ability to
batch line-only paths with more complex paths, which seems like a win.

Curious to see what other perf results are (in either direction).

Bug: chromium:908566
Change-Id: I127093dd271b8bdc6f81c1981e40257407157193
Reviewed-on: https://skia-review.googlesource.com/c/173426
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-29 21:42:20 +00:00
Heather Miller
4f897d1873 Update Skia milestone to 73
Bug: skia:
Change-Id: I4b8744f1f9d752a54429054d7539c46e24fcba82
Reviewed-on: https://skia-review.googlesource.com/c/173428
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
2018-11-29 21:31:08 +00:00
Chris Dalton
ebc38c998c Draw ovals with GrAAFillRRectOp
GrAAFillRRectOp has special geometry and a fragment-shader branch to
conditionally evaluate the arc equation. This same special geometry
and fragment branch also turn out to be a substantial optimization for
drawing ovals (namely, by not evaluating the arc equation inside the
oval's inner diamond). Given these optimizations, it's a clear win to
draw ovals the exact same way we do round rects.

However, we still don't draw true circles as round rects, because it
can cause perf regressions on some platforms as compared to the
dedicated circle Op.

Bug: skia:
Change-Id: Ifdfc4f593a8ab01b6f73a9e15dde732254213455
Reviewed-on: https://skia-review.googlesource.com/c/173277
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-11-29 19:44:09 +00:00
Brian Osman
e801210a11 In GrOpFlushState, store GrOp* rather than Unique ID
This makes the comment on GrOp::uniqeID (that it's only used for audit
trail) true again. More importantly, it avoids always cycling through op
IDs, which can actually overflow. This makes Draw slightly bigger, but
saves the atomic overhead of getting a new ID for each op. Both of those
are probably too small to measure.

Bug: skia:8575
Change-Id: I6aecf0c72b85c59e8644a4574ccbeeb71997baca
Reviewed-on: https://skia-review.googlesource.com/c/173423
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-29 19:41:49 +00:00
recipe-roller
9c13adaa90 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/d0deba23a671b236ec535a9a54aa78b6dcf142ab [Testing] Add comprehensive UI test recipe. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8d5b846c368f92321c7426527316f170ffa09277
Reviewed-on: https://skia-review.googlesource.com/c/173424
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-11-29 19:39:04 +00:00
skia-autoroll
46b8c3bc48 Roll third_party/externals/angle2 7310da33bc7a..8dc27f99b556 (5 commits)
7310da33bc..8dc27f99b5


git log 7310da33bc7a..8dc27f99b556 --date=short --no-merges --format='%ad %ae %s'
2018-11-29 jmadill@chromium.org Use packed enum for DrawElementsType.
2018-11-29 syoussefi@chromium.org Vulkan: fix pipeline stages of memory barriers
2018-11-29 matavenrath@nvidia.com Optimize State::syncDirtyObjects
2018-11-29 syoussefi@chromium.org Vulkan: Uber-shader support
2018-11-29 syoussefi@chromium.org Vulkan: Allow descriptor pool to allocate different types


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

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: I127ea6eb112d90481be10cb0cdf5dbe1832e58c2
Reviewed-on: https://skia-review.googlesource.com/c/173384
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-29 19:36:44 +00:00
Ben Wagner
9e9723137f Add jobs for GalaxyS9
Change-Id: I039eb2050edc2570287c331a3f7743b4a3748f3e
Reviewed-on: https://skia-review.googlesource.com/c/173239
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-11-29 19:32:04 +00:00
Brian Salomon
f3841931ef Modify workaround to never set base or max texture level for GL_TEXTURE_EXTERNAL_OES
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: I8b24a62618ecd19387bcb8a827030d0c6d5b5362
Reviewed-on: https://skia-review.googlesource.com/c/173363
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-11-29 19:02:18 +00:00
Jim Van Verth
8222f3be41 Check for valid normals when offsetting
Bug: oss-fuzz:11546
Change-Id: I45cc443bcee240eebfa72fb0bdb19cb43192804f
Reviewed-on: https://skia-review.googlesource.com/c/173422
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-11-29 18:49:35 +00:00
Michael Ludwig
553e9a9bdf Bugfixes for corner cases in per-edge AA
Specifically, it fixes non-aa perspective quads batched with aa quads
getting an unsafe edge distance that leads to bleeding on certain GPUs.

Additionally, it tweaks the rectilinear distance optimization to
add .5 for masked edge and .5 for opposite masked edge, instead of
adding 1 for just the masked edge. Leads to no change when all edges
have AA, but preserves the rate-of-change of the edge distance attribute
when opposite edges differ in their AA state.

Bug: skia:
Change-Id: Ie55042e74ef44a8d33b4ae16e1e63eecdb2f24e1
Reviewed-on: https://skia-review.googlesource.com/c/173420
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-11-29 18:47:35 +00:00
Mike Klein
23fbefecfd check decal in 32.32 where we walk decal in 32.32
The debug checks caught a place in a few layout tests where it looked
like we could decal in 16.16, but the extra 32.32 precision accumulates
just enough along the line that we need to clamp the last pixel.

Looks like no GM diffs or Google3 diffs.

Change-Id: I86360021933c7bc9d5a8328809e812db0dfc5d3b
Reviewed-on: https://skia-review.googlesource.com/c/173440
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-29 18:39:10 +00:00
Cary Clark
cb6bef0ad5 Update bookmaker
- This update includes font documentation.
SkFont_Reference.bmh was generated by running:

  bookmaker -b docs -i include/core/SkFont.h -t

This creates a placeholder
for examples and additional documentation.

- More work done to exclude experimental/private
symbols.

Symbols that include "experimental_", "legacy_",
"private_", "temporary_", "deprecated_" as part
of their name (case-insensitive) are not
referenced by the on-line docs and don't need
comments.

Tables built for online only include public symbols.

- Better links for constructors, destructors, operators
- Fixed some minor public interfaces
- Removed _const crutch on operators
- Keep includes inside 100 columns

TBR=reed@google.com

Docs-Preview: https://skia.org/?cl=171900
Bug: skia:
Change-Id: I93b229c6625d800604671e05b82a14c06cb906d2
Reviewed-on: https://skia-review.googlesource.com/c/171900
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
2018-11-29 18:17:30 +00:00
Florin Malita
c2e85f942f [skottie] Expose property bindings in CK
Add a new (optionally-built) ManagedAnimation CK helper, and provide
accessors for color and opacity properties.

The new wrapper class can be used as a drop-in replacement for the existing
Animation.

Change-Id: Iab6b6be9c736697b4731722806b145cbd130ce73
Reviewed-on: https://skia-review.googlesource.com/c/173322
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-29 17:09:35 +00:00
Brian Salomon
1144020871 Revert "Experimentally disable GrTextureOp chaining on Intel GPUs on Mac."
This reverts commit b4f37a6a92.

It didn't fix the bug.

Bug: chromium:906453
Change-Id: I6c37486ccac619c3d5b6716cb76809be632c3c5f
Reviewed-on: https://skia-review.googlesource.com/c/173237
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-11-29 16:21:38 +00:00
Cary Clark
d058b183e3 fix fuzz timeout in pathops
R=kjlubick@google.com

Bug:910097
Change-Id: I5a848db8bb0b57d296c119201ad35d5d66df8408
Reviewed-on: https://skia-review.googlesource.com/c/173362
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-29 14:30:01 +00:00
Mike Klein
4f60e540e7 clean up SK_WALK_DECAL_IN_1616
Change-Id: I6b7ef512235dfc986563a3ae03375423e176713d
Reviewed-on: https://skia-review.googlesource.com/c/173360
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-29 13:36:41 +00:00