Commit Graph

3313 Commits

Author SHA1 Message Date
Cary Clark
1d314433ff fix line intersect divide by zero
Test filinmangust14 exposes two problems:
- finding top of contour can expose divide by zero
- joining partial contour results can add diagonal

The latter makes the test return the wrong result,
and has not been seen in other tests. The fix
is to join disconnected contours by only following
the contours provided as input. Working on that.

The former bug is more straight-forward; just
don't try to compute axis-aligned intersection
if the denominator is zero.

All existing tests prior to the new one work
with this change.

R=caryclark@google.com
Bug: skia:8125
Change-Id: Ic878d090066708d9baca8475f27d4d5aba2294cc
Reviewed-on: https://skia-review.googlesource.com/140121
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-07-10 15:25:35 +00:00
Ruiqi Mao
9a6e42ff18 added caching of SkVertices
SkVertices can now be "volatile", meaning they should not be cached.
SkVertices is volatile by default if the argument is not given.

Pulled from reverted CL: https://skia-review.googlesource.com/c/skia/+/138596

Docs-Preview: https://skia.org/?cl=139545
Bug: skia:
Change-Id: I92cf832efe1c0aaa8f432eedde2678582dd2454e
Reviewed-on: https://skia-review.googlesource.com/139545
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
2018-07-09 20:31:28 +00:00
Brian Osman
294fe29581 Remove some linear-blending sRGB logic from sk_app
Leftover logic from when viewer tried to use an sRGB FBO0
when rendering to a surface with a color space attached.

Most of this had already been removed, found a few more bits.

Change-Id: I998a541f75ecc184d218d02e24ab57657e096f22
Reviewed-on: https://skia-review.googlesource.com/139764
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-07-09 15:22:17 +00:00
Ruiqi Mao
c05aa7d163 Revert "added skeletal animation support to GPU backend"
This reverts commit b6307340e8.

Reason for revert: patch/atlas failing in gold

Original change's description:
> added skeletal animation support to GPU backend
> 
> added caching of SkVertices
> 
> Docs-Preview: https://skia.org/?cl=138596
> Bug: skia:
> Change-Id: Ia750f55f5f6d0de250d9e9c5619f4d1ac856f9f5
> Reviewed-on: https://skia-review.googlesource.com/138596
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>

TBR=robertphillips@google.com,brianosman@google.com,reed@google.com,ruiqimao@google.com

Change-Id: Idfaf016a7ff4cdd8af2543d510706f489d04417a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/139281
Reviewed-by: Ruiqi Mao <ruiqimao@google.com>
Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
2018-07-03 21:18:18 +00:00
Greg Daniel
108bb23277 Reland "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors."
This reverts commit 34aa059c15.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors."
> 
> This reverts commit ff2181e62e.
> 
> Reason for revert: suspect it's behind Chrome roll failure
> 
> Original change's description:
> > Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors.
> > 
> > Bug: skia:
> > Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd
> > Reviewed-on: https://skia-review.googlesource.com/138987
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> 
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
> 
> Change-Id: I4cba44858aafffbadc45e18349b93c741d7cfc66
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/139220
> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

Bug: skia:
Change-Id: Ib1fd10c126862824f3e31c420c697ac749c637f5
Reviewed-on: https://skia-review.googlesource.com/139221
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-07-03 20:46:27 +00:00
Ethan Nicholas
34aa059c15 Revert "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors."
This reverts commit ff2181e62e.

Reason for revert: suspect it's behind Chrome roll failure

Original change's description:
> Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors.
> 
> Bug: skia:
> Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd
> Reviewed-on: https://skia-review.googlesource.com/138987
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

Change-Id: I4cba44858aafffbadc45e18349b93c741d7cfc66
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/139220
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-07-03 16:38:45 +00:00
Ruiqi Mao
b6307340e8 added skeletal animation support to GPU backend
added caching of SkVertices

Docs-Preview: https://skia.org/?cl=138596
Bug: skia:
Change-Id: Ia750f55f5f6d0de250d9e9c5619f4d1ac856f9f5
Reviewed-on: https://skia-review.googlesource.com/138596
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
2018-07-03 16:07:44 +00:00
Greg Daniel
ff2181e62e Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors.
Bug: skia:
Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd
Reviewed-on: https://skia-review.googlesource.com/138987
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-07-03 13:41:13 +00:00
Ruiqi Mao
94d57c477f updated SkCanvas documentation for animation overloads of drawVertices
changed bookmaker ParserCommon::writeBlockTrim limit to 20000

disabled broken SkPaint::containsText example

Docs-Preview: https://skia.org/?cl=138862
Bug: skia:8123
Change-Id: Ib4003bf7b9603bf652f86cd56e0975cd09bcbf71
Reviewed-on: https://skia-review.googlesource.com/138862
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-07-03 13:33:43 +00:00
Ruiqi Mao
f510149da8 skeletal animation support added to API and software backend
SkCanvas::drawVertices now supports overloads that take an array of bone deformation matrices.
SkVertices::MakeCopy and SkVertices::Builder now support two additional optional attributes, boneIndices and boneWeights.

Bug: skia:
Change-Id: I30a3b11691e7cdb13924907cc1401ff86d127aea
Reviewed-on: https://skia-review.googlesource.com/137221
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
2018-06-29 19:34:28 +00:00
Brian Osman
7197e05eae Update ImGui to v1.62 (June 22, 2018)
He's been steadily adding features and fixing bugs, figured it was time
to fetch a new version.

Change-Id: I496aefc0a1b60c3be5c89a0e58dc64811fccc77e
Reviewed-on: https://skia-review.googlesource.com/138591
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-29 18:58:57 +00:00
Greg Daniel
007267bdb5 Revert "Reland "Make GrVkBackendContext no longer derive from SkRefCnt.""
This reverts commit 0db3a8846a.

Reason for revert: fuchsia change reverted

Original change's description:
> Reland "Make GrVkBackendContext no longer derive from SkRefCnt."
> 
> This reverts commit 059a9ab4bc.
> 
> Reason for revert: Fix landed in Fuchsia
> 
> Original change's description:
> > Revert "Make GrVkBackendContext no longer derive from SkRefCnt."
> > 
> > This reverts commit 93ae233773.
> > 
> > Reason for revert: <INSERT REASONING HERE>
> > 
> > Original change's description:
> > > Make GrVkBackendContext no longer derive from SkRefCnt.
> > > 
> > > Also moves the helper Create functions to VkTestUtils since no clients
> > > are using them anymore.
> > > 
> > > Bug: skia:
> > > Change-Id: I7e8e4912e7ef6fb00a7e2a00407aed5e83211799
> > > Reviewed-on: https://skia-review.googlesource.com/135323
> > > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > 
> > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: skia:
> > Change-Id: If7201917631dc22753ea3fa6e9d2984463e38e4c
> > Reviewed-on: https://skia-review.googlesource.com/137903
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: Ia4b7c0bb2c7b5dba809d85c69f0b41b473140526
> Reviewed-on: https://skia-review.googlesource.com/138181
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I3f7bc4a5e4e09512fe165303685c123ec3527e58
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/138422
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-28 23:34:52 +00:00
Greg Daniel
3148f802af Revert "Reland "Move Vulkan DebugCallback code into tools.""
This reverts commit be0ab883e7.

Reason for revert: fuchsia change reverted

Original change's description:
> Reland "Move Vulkan DebugCallback code into tools."
> 
> This reverts commit 05d3fe3f10.
> 
> Reason for revert: relanding after fuchsia fixes are in
> 
> Original change's description:
> > Revert "Move Vulkan DebugCallback code into tools."
> > 
> > This reverts commit d4b2adeaa9.
> > 
> > Reason for revert: Need to revert earlier changes cause of fucshia
> > 
> > Original change's description:
> > > Move Vulkan DebugCallback code into tools.
> > > 
> > > Bug: skia:
> > > Change-Id: Ib356200e86e54f9ff0ba16396874e6fd10cf0465
> > > Reviewed-on: https://skia-review.googlesource.com/137424
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > 
> > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: skia:
> > Change-Id: I38d4e71dc29c6503f92712be54e22c58956498c5
> > Reviewed-on: https://skia-review.googlesource.com/137902
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: Idb88f21018b9c0e23b62f0a5b12f0fab60373921
> Reviewed-on: https://skia-review.googlesource.com/138300
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I40d5ba1067248066403f843c0739b885a2bfc834
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/138421
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-28 23:30:30 +00:00
Greg Daniel
dc13c21b1e Revert "Reland "Let client pass in full extension to GrVkBackendContext.""
This reverts commit a782dcb3c4.

Reason for revert: fuchsia changes reverted

Original change's description:
> Reland "Let client pass in full extension to GrVkBackendContext."
> 
> This reverts commit cb92b26e5c.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Revert "Let client pass in full extension to GrVkBackendContext."
> > 
> > This reverts commit 45c9dab4c3.
> > 
> > Reason for revert: fucshia uses GrVkBackendContext. Need to revert earlier changes
> > 
> > Original change's description:
> > > Let client pass in full extension to GrVkBackendContext.
> > > 
> > > Bug: skia:
> > > Change-Id: I772ab4ccbca0f4f7e7d429d6c421b07d97f0606f
> > > Reviewed-on: https://skia-review.googlesource.com/131880
> > > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > 
> > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> > 
> > Change-Id: I1a765ff406c83cb234c3614b804fbed677d5a382
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: skia:
> > Reviewed-on: https://skia-review.googlesource.com/137901
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: I0af797c51dde705473e9afaccb1d4b4423e8c41e
> Reviewed-on: https://skia-review.googlesource.com/138302
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

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

Change-Id: Idf760d5ac6b82df33a4408079a0223be833058ad
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/138420
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-28 23:29:48 +00:00
Greg Daniel
a782dcb3c4 Reland "Let client pass in full extension to GrVkBackendContext."
This reverts commit cb92b26e5c.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Let client pass in full extension to GrVkBackendContext."
> 
> This reverts commit 45c9dab4c3.
> 
> Reason for revert: fucshia uses GrVkBackendContext. Need to revert earlier changes
> 
> Original change's description:
> > Let client pass in full extension to GrVkBackendContext.
> > 
> > Bug: skia:
> > Change-Id: I772ab4ccbca0f4f7e7d429d6c421b07d97f0606f
> > Reviewed-on: https://skia-review.googlesource.com/131880
> > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> Change-Id: I1a765ff406c83cb234c3614b804fbed677d5a382
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/137901
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

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

Bug: skia:
Change-Id: I0af797c51dde705473e9afaccb1d4b4423e8c41e
Reviewed-on: https://skia-review.googlesource.com/138302
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-06-28 20:50:17 +00:00
Timothy Liang
036fdfe5aa implemented getting format from texture as virtual in gpu caps
Bug: skia:
Change-Id: If6bbbd212ff472ea322d2bbed61995fe7ba85df7
Reviewed-on: https://skia-review.googlesource.com/138240
Commit-Queue: Timothy Liang <timliang@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-06-28 20:21:17 +00:00
Greg Daniel
be0ab883e7 Reland "Move Vulkan DebugCallback code into tools."
This reverts commit 05d3fe3f10.

Reason for revert: relanding after fuchsia fixes are in

Original change's description:
> Revert "Move Vulkan DebugCallback code into tools."
> 
> This reverts commit d4b2adeaa9.
> 
> Reason for revert: Need to revert earlier changes cause of fucshia
> 
> Original change's description:
> > Move Vulkan DebugCallback code into tools.
> > 
> > Bug: skia:
> > Change-Id: Ib356200e86e54f9ff0ba16396874e6fd10cf0465
> > Reviewed-on: https://skia-review.googlesource.com/137424
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: I38d4e71dc29c6503f92712be54e22c58956498c5
> Reviewed-on: https://skia-review.googlesource.com/137902
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

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

Bug: skia:
Change-Id: Idb88f21018b9c0e23b62f0a5b12f0fab60373921
Reviewed-on: https://skia-review.googlesource.com/138300
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-28 20:20:47 +00:00
Brian Osman
a66f4dad51 Revert "Reland "Revert "Update GPU DM/nanobench configs for color testing"""
This reverts commit d5161b9a62.

Reason for revert: This should be okay again.

Original change's description:
> Reland "Revert "Update GPU DM/nanobench configs for color testing""
> 
> This reverts commit c0fb3c8b9f.
> 
> Reason for revert: Had to revert dependent CL.
> Original change's description:
> > Revert "Revert "Update GPU DM/nanobench configs for color testing""
> > 
> > This reverts commit 2a284de7a5.
> > 
> > Re-landing without esrgb configs. Going to enable those separately,
> > as they require some blacklisting.
> > 
> > Bug: skia:
> > Change-Id: I2315849d4f5c45c2e5512f84f9f867d02ff6fe30
> > Reviewed-on: https://skia-review.googlesource.com/136589
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> 
> TBR=mtklein@google.com,bsalomon@google.com,brianosman@google.com
> 
> Change-Id: I942d4235c17100fd933bf9cbfe923e3ae80657b1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/137721
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

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

Bug: skia:
Change-Id: I280dac49eb74d6c1cbf7c2f52a3f6a68fa2510ae
Reviewed-on: https://skia-review.googlesource.com/138301
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-28 18:20:17 +00:00
Greg Daniel
0db3a8846a Reland "Make GrVkBackendContext no longer derive from SkRefCnt."
This reverts commit 059a9ab4bc.

Reason for revert: Fix landed in Fuchsia

Original change's description:
> Revert "Make GrVkBackendContext no longer derive from SkRefCnt."
> 
> This reverts commit 93ae233773.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Make GrVkBackendContext no longer derive from SkRefCnt.
> > 
> > Also moves the helper Create functions to VkTestUtils since no clients
> > are using them anymore.
> > 
> > Bug: skia:
> > Change-Id: I7e8e4912e7ef6fb00a7e2a00407aed5e83211799
> > Reviewed-on: https://skia-review.googlesource.com/135323
> > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: If7201917631dc22753ea3fa6e9d2984463e38e4c
> Reviewed-on: https://skia-review.googlesource.com/137903
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

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

Bug: skia:
Change-Id: Ia4b7c0bb2c7b5dba809d85c69f0b41b473140526
Reviewed-on: https://skia-review.googlesource.com/138181
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-28 17:20:27 +00:00
Cary Clark
82f1f744f8 fix doc catalog
The doc catalog (the thing that allows graphical example searches)
got broken because bookmaker generated json names with linefeeds
in them.

Fix that and add an incremental update towards documenting SkRRect.

R=caryclark@google.com

Docs-Preview: https://skia.org/?cl=138020
Bug: skia:6898
Change-Id: I8e033d2d59fc9693f377be8c202bbf8ac9253b20
Reviewed-on: https://skia-review.googlesource.com/138020
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-06-28 13:18:16 +00:00
Greg Daniel
059a9ab4bc Revert "Make GrVkBackendContext no longer derive from SkRefCnt."
This reverts commit 93ae233773.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Make GrVkBackendContext no longer derive from SkRefCnt.
> 
> Also moves the helper Create functions to VkTestUtils since no clients
> are using them anymore.
> 
> Bug: skia:
> Change-Id: I7e8e4912e7ef6fb00a7e2a00407aed5e83211799
> Reviewed-on: https://skia-review.googlesource.com/135323
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

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

Bug: skia:
Change-Id: If7201917631dc22753ea3fa6e9d2984463e38e4c
Reviewed-on: https://skia-review.googlesource.com/137903
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-27 15:53:55 +00:00
Cary Clark
224c700a1f sync docs up with tip of tree
Also check in work in progress for blend modes,
round rects, and a placeholder for pictures.

One minor include change to add a parameter name
for SkBlendMode function.

TBR=reed@google.com
R=caryclark@google.com

Docs-Preview: https://skia.org/?cl=134200
Bug: skia:6898
Change-Id: I5d2a9221d61edb32d9c7edbb3193401605b2b513
Reviewed-on: https://skia-review.googlesource.com/134200
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-06-27 15:47:45 +00:00
Greg Daniel
05d3fe3f10 Revert "Move Vulkan DebugCallback code into tools."
This reverts commit d4b2adeaa9.

Reason for revert: Need to revert earlier changes cause of fucshia

Original change's description:
> Move Vulkan DebugCallback code into tools.
> 
> Bug: skia:
> Change-Id: Ib356200e86e54f9ff0ba16396874e6fd10cf0465
> Reviewed-on: https://skia-review.googlesource.com/137424
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

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

Bug: skia:
Change-Id: I38d4e71dc29c6503f92712be54e22c58956498c5
Reviewed-on: https://skia-review.googlesource.com/137902
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-27 15:24:23 +00:00
Greg Daniel
cb92b26e5c Revert "Let client pass in full extension to GrVkBackendContext."
This reverts commit 45c9dab4c3.

Reason for revert: fucshia uses GrVkBackendContext. Need to revert earlier changes

Original change's description:
> Let client pass in full extension to GrVkBackendContext.
> 
> Bug: skia:
> Change-Id: I772ab4ccbca0f4f7e7d429d6c421b07d97f0606f
> Reviewed-on: https://skia-review.googlesource.com/131880
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I1a765ff406c83cb234c3614b804fbed677d5a382
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/137901
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-27 15:03:46 +00:00
Greg Daniel
45c9dab4c3 Let client pass in full extension to GrVkBackendContext.
Bug: skia:
Change-Id: I772ab4ccbca0f4f7e7d429d6c421b07d97f0606f
Reviewed-on: https://skia-review.googlesource.com/131880
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-27 14:29:45 +00:00
Khushal
c421ca1d6e gpu: Expose GrContextPriv::abandoned in the public API.
TBR=bsalomon@google.com

Bug: 854416
Change-Id: Iab71ca6e4724a925b0b9791267aac5ddc34f5b15
Reviewed-on: https://skia-review.googlesource.com/137692
Reviewed-by: Khusal Sagar <khushalsagar@chromium.org>
Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
2018-06-27 01:08:45 +00:00
Brian Osman
d5161b9a62 Reland "Revert "Update GPU DM/nanobench configs for color testing""
This reverts commit c0fb3c8b9f.

Reason for revert: Had to revert dependent CL.
Original change's description:
> Revert "Revert "Update GPU DM/nanobench configs for color testing""
> 
> This reverts commit 2a284de7a5.
> 
> Re-landing without esrgb configs. Going to enable those separately,
> as they require some blacklisting.
> 
> Bug: skia:
> Change-Id: I2315849d4f5c45c2e5512f84f9f867d02ff6fe30
> Reviewed-on: https://skia-review.googlesource.com/136589
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

Change-Id: I942d4235c17100fd933bf9cbfe923e3ae80657b1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/137721
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-26 19:20:53 +00:00
Ben Wagner
3627d2ebbb Add subpixel offset to Viewer app.
This adds a two dimensional location dragger to drag the origin across a
pixel. Also makes the perspective dragger hidden when perspective is
off. Also adds 'Z' to toggle the zoom window mouse follow.

Change-Id: Ic75d16c95848b392608770c8ed0d4db23733242f
Reviewed-on: https://skia-review.googlesource.com/137701
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-06-26 19:14:43 +00:00
Mike Klein
3785471ff6 basic first pass at RGBA F32 support
Draws basically the same as f16.

The existing load_f32, load_f32_dst, and store_f32 stages all had the
same bug that we'd never noticed because dy was always 0 until now.

Change-Id: Ibbd393fa1acc5df414be4cdef0f5a9d11dcccdb3
Reviewed-on: https://skia-review.googlesource.com/137585
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-06-26 19:02:52 +00:00
Chris Dalton
a4f5ce0c98 skpbench: Support .svg files
Bug: skia:
Change-Id: I0337757f635c631870c02a65f8784fc190d1435e
Reviewed-on: https://skia-review.googlesource.com/137540
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-06-26 18:01:02 +00:00
Brian Osman
c0fb3c8b9f Revert "Revert "Update GPU DM/nanobench configs for color testing""
This reverts commit 2a284de7a5.

Re-landing without esrgb configs. Going to enable those separately,
as they require some blacklisting.

Bug: skia:
Change-Id: I2315849d4f5c45c2e5512f84f9f867d02ff6fe30
Reviewed-on: https://skia-review.googlesource.com/136589
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-26 17:51:22 +00:00
Robert Phillips
d5506cb888 Add --gpuThreads support to skpbench.py (take 2)
Change-Id: Ie946ff339c4e04bb866545ad60c2ab77bae85417
Reviewed-on: https://skia-review.googlesource.com/136175
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-26 15:28:12 +00:00
Greg Daniel
d4b2adeaa9 Move Vulkan DebugCallback code into tools.
Bug: skia:
Change-Id: Ib356200e86e54f9ff0ba16396874e6fd10cf0465
Reviewed-on: https://skia-review.googlesource.com/137424
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-26 13:16:32 +00:00
Cary Clark
81abc43e6f explicitly include blurimagefilter include
Try explicitly adding
to fix the bookmaker nightly bot.

R=jcgregorio@google.com,caryclark@google.com

Docs-Preview: https://skia.org/?cl=137421
Bug: skia:6898
Change-Id: Iff27845e6872b885b8494e9fc236f4f05c10c301
Reviewed-on: https://skia-review.googlesource.com/137421
Reviewed-by: Cary Clark <caryclark@skia.org>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-06-25 20:53:25 +00:00
Bruce Wang
536ad2c146 Implement onMakeClone function on all subclasses of SkTypeface except
on mac.

Change-Id: I2b8777a5b54e190c37623ab798a89b4f1833ceac
Reviewed-on: https://skia-review.googlesource.com/137382
Commit-Queue: Bruce Wang <brucewang@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-06-25 20:42:25 +00:00
Robert Phillips
6d36370c06 Add bullet proofing for preAbandonContext
With the more agressive abandonment of the GrContext state in https://skia-review.googlesource.com/c/skia/+/137121 (Fix abandonment of programs) (i.e., nulling out of the interface) it is necessary to add more guards so that we don't try calling GL methods when the context has been abandoned.

Change-Id: Ib2a3c17b9eaebd1eb84eb82a2781cf9d5a6a34a3
Reviewed-on: https://skia-review.googlesource.com/137362
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-25 13:52:55 +00:00
Greg Daniel
93ae233773 Make GrVkBackendContext no longer derive from SkRefCnt.
Also moves the helper Create functions to VkTestUtils since no clients
are using them anymore.

Bug: skia:
Change-Id: I7e8e4912e7ef6fb00a7e2a00407aed5e83211799
Reviewed-on: https://skia-review.googlesource.com/135323
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-25 13:37:45 +00:00
Robert Phillips
752e08b1ae Fix abandonment of programs
Bug: skia:8092
TBR=bsalomon@google.com
Change-Id: If9cf4ed9f8ded4b7fbb58a244ec0b179b8430ca2
Reviewed-on: https://skia-review.googlesource.com/137121
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-25 12:09:55 +00:00
Chris Dalton
a2b5b6467f ccpr: Enable ccpr by default
Now that the path cache is implemented, we can use ccpr everywhere.

Modifies ccpr to not cache unless the "fAllowPathMaskCaching" context
option is enabled.

Adds a small condition to skip complicated paths with more vertices
than pixels, simply so we don't regress a couple testcases.

Updates skpbench to do three draws before starting the timer, in order
to prime the cache.

Bug: skia:
Change-Id: Ic3a0a2bdad8a22ff6431e77fa4da2b54d6bb9aba
Reviewed-on: https://skia-review.googlesource.com/137207
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-06-25 01:47:14 +00:00
Eric Boren
5e0909776e Fix pylint check in presubmit
This fixes the unexpected behavior where we only run pylint over the
affected Python files *unless* there are affected Python files which we
have explicitly blacklisted, in which case we run pylint over ALL Python
files in every subdirectory of the Skia checkout, including repos in
DEPS.

- Added buildtools and common to the blacklist.
- Changed to run pylint over all Python files in Skia, like
  presubmit_support expects.
- Fix existing pylint problems.

Bug: skia:
Change-Id: Ife1321f5ae5eaff2a28cc14c99a82a0716c12677
Reviewed-on: https://skia-review.googlesource.com/137126
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-06-22 14:38:28 +00:00
Robert Phillips
f7dcdb0283 Move taskgroup initialization closer to where it is used
This makes the vtune and instruments charts easier to understand/read.

Change-Id: I0469b723699d174681f9e36b5ff12f7e9c3d1d34
Reviewed-on: https://skia-review.googlesource.com/136607
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-21 16:42:38 +00:00
Mike Klein
f9ae670d05 add hello-opencl
This is a little hello world for OpenCL.

Change-Id: I9502407dab75694a19e97832bcfe33f47cbd97e9
Reviewed-on: https://skia-review.googlesource.com/136223
Commit-Queue: Allan MacKinnon <allanmac@google.com>
Reviewed-by: Allan MacKinnon <allanmac@google.com>
2018-06-20 21:50:47 +00:00
Ben Wagner
2de15fd063 Update gdb bitmap viewer.
This updates the gdb bitmap viewer for color enums, SkBitmap layout, and
to work with gdb when using python 2.

Change-Id: Id50048ecd7db5b3febaff15f118d8b8183c7dbf1
Reviewed-on: https://skia-review.googlesource.com/136247
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-06-20 21:24:27 +00:00
Brian Osman
2a284de7a5 Revert "Update GPU DM/nanobench configs for color testing"
This reverts commit 5e11777a06.

Reason for revert: Bots with no F16 support failing (as expected).

Original change's description:
> Update GPU DM/nanobench configs for color testing
> 
> - Rename '*srgbnl' to '*srgb'.
> - Add '*narrow' and '*enarrow' for testing a gamut narrower than sRGB.
> - Stopped blacklisting glessrgb. It no longer uses sRGB pixel configs,
>   so should work fine on all GPUs.
> - Also runs 'esrgb' (F16 sRGB) everywhere. This is likely to fail on
>   some devices that have poor (or no) F16 support.
> 
> Change-Id: I941d0758adb3b0c895c7a8a85ff0ae4aa5bff6e7
> Reviewed-on: https://skia-review.googlesource.com/136171
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

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

Change-Id: I091269b93bc9e76c9d42f701d2018610b9c33a89
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/136300
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-20 20:59:18 +00:00
Brian Osman
5e11777a06 Update GPU DM/nanobench configs for color testing
- Rename '*srgbnl' to '*srgb'.
- Add '*narrow' and '*enarrow' for testing a gamut narrower than sRGB.
- Stopped blacklisting glessrgb. It no longer uses sRGB pixel configs,
  so should work fine on all GPUs.
- Also runs 'esrgb' (F16 sRGB) everywhere. This is likely to fail on
  some devices that have poor (or no) F16 support.

Change-Id: I941d0758adb3b0c895c7a8a85ff0ae4aa5bff6e7
Reviewed-on: https://skia-review.googlesource.com/136171
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-20 20:36:57 +00:00
Cary Clark
75fd449d81 fix for new fiddle compiler
New compiler is stricter, requiring
some variable initialization, braces.

A bug in SkRect was fixed, changing
debug output.

TBR=jcgregario@google.com

Docs-Preview: https://skia.org/?cl=136179
Bug: skia:6898
Change-Id: I19ef1dab2d3154778d0613e7337fdcfb340dacc7
Reviewed-on: https://skia-review.googlesource.com/136179
Commit-Queue: Cary Clark <caryclark@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Cary Clark <caryclark@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2018-06-20 17:07:48 +00:00
Hal Canary
2c74c32a56 tools/git-sync-deps: fix
Change-Id: I48363d75cfb1fc473c7f32e701ed3e6378059004
Reviewed-on: https://skia-review.googlesource.com/136072
Reviewed-by: Hal Canary <halcanary@google.com>
2018-06-20 14:38:34 +00:00
Florin Malita
3425e22b9e Use SkJSONWriter for get_images_from_skps stats reporting
Remove JsonCPP dependency.

Change-Id: I3e86334e27b325cb06fd01d3c61661a9687c3a7f
Reviewed-on: https://skia-review.googlesource.com/135710
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-19 20:06:36 +00:00
Robert Phillips
c994a93b32 Move op memory storage to GrContext (take 2)
TBR=bsalomon@google.com

Change-Id: I4a448694d4114d83cd3a720cfc8bd37de51733d1
Reviewed-on: https://skia-review.googlesource.com/135707
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-19 19:51:20 +00:00
Ben Wagner
96aa535b78 Remove .bat and .exe from commands where possible.
We expect .BAT and .EXE to be on PATHEXT. Also, although Python
CreateProcess doesn't honor PATHEXT, it will try .EXE. This allows most
commands to be platform-independent, and also resolves the issue with
the cpython package not including python.bat.

No-Tree-Checks: true
Docs-Preview: https://skia.org/?cl=135626
Bug: chromium:852581
Change-Id: Iab4189407df44ff4ad4d37da07ff52414229d397
Reviewed-on: https://skia-review.googlesource.com/135626
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-19 17:29:15 +00:00