platform/upstream/libSkiaSharp.git
8 years agoImage filters: fix filtering of transparent black in CFIF.
senorblanco [Wed, 18 May 2016 14:00:08 +0000 (07:00 -0700)]
Image filters: fix filtering of transparent black in CFIF.

SkColorFilterImageFilter has a codepath to filter transparent black
regions outside of the input image. However, it was treating the
exterior as opaque black, rather than trasparent black.

Note: the results of imagefiltercropexpand GM will change, as it
was tweaked a bit to show this bug.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978363002
NOTREECHECKS=true
NOTRY=true
NOPRESUBMIT=true

Review-Url: https://codereview.chromium.org/1978363002

8 years agoremove animator from SampleApp
reed [Wed, 18 May 2016 13:55:17 +0000 (06:55 -0700)]
remove animator from SampleApp

There is no xml parser hooked up, so the animator test file (already behind #if 0) is not testable. Removing the files to speedup building SampleApp.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1987963002

Review-Url: https://codereview.chromium.org/1987963002

8 years agoParse parametric gamma curves
msarett [Wed, 18 May 2016 13:28:43 +0000 (06:28 -0700)]
Parse parametric gamma curves

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972403002

Review-Url: https://codereview.chromium.org/1972403002

8 years agoDelete SkBitmapRegionCanvas
msarett [Wed, 18 May 2016 13:23:57 +0000 (06:23 -0700)]
Delete SkBitmapRegionCanvas

This was an approach we considered for implementing Android's
BitmapRegionDecoder.

It was useful for testing and comparison, but now is no longer worth
maintaining and testing.

The approach to subset/scaled decodes (clipped decode, then scale)
may be worth reconsidering at some point.

BUG=skia:5307
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1990543002

Review-Url: https://codereview.chromium.org/1990543002

8 years agoRemove NVPR related env var from command buffer GL context creation
kkinnunen [Wed, 18 May 2016 05:15:39 +0000 (22:15 -0700)]
Remove NVPR related env var from command buffer GL context creation

NVPR is now enabled by default for Chromium command buffer.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975753005

Review-Url: https://codereview.chromium.org/1975753005

8 years agoMake SkBlend_optsTests fail rather than crash when resources are missing
bsalomon [Wed, 18 May 2016 01:36:23 +0000 (18:36 -0700)]
Make SkBlend_optsTests fail rather than crash when resources are missing

BUG=skia:5314

TBR=herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1987143002

Review-Url: https://codereview.chromium.org/1987143002

8 years agoSkColorSpace follow-ups
msarett [Tue, 17 May 2016 20:57:15 +0000 (13:57 -0700)]
SkColorSpace follow-ups

Based on comments from:
https://codereview.chromium.org/1985903002/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986833002

Review-Url: https://codereview.chromium.org/1986833002

8 years agoRemove GrFontScaler class.
bsalomon [Tue, 17 May 2016 20:18:03 +0000 (13:18 -0700)]
Remove GrFontScaler class.

This class is now effectively a set of helpers for interacting with a SkGlyphCache by GrBatchTextStrike. The class is deleted and the code is made into static functions in GrBatchFontCache.cpp

BUG=chromium:608566

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985163002

Review-Url: https://codereview.chromium.org/1985163002

8 years agoImplement touch control
liyuqian [Tue, 17 May 2016 19:44:20 +0000 (12:44 -0700)]
Implement touch control

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1982643004

Review-Url: https://codereview.chromium.org/1982643004

8 years agoFix leak of SkGammas
msarett [Tue, 17 May 2016 19:37:39 +0000 (12:37 -0700)]
Fix leak of SkGammas

TBR=borenet@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1990533002

Review-Url: https://codereview.chromium.org/1990533002

8 years agoFix code guarded by SK_FONT_HOST_USE_SYSTEM_SETTINGS.
bungeman [Tue, 17 May 2016 19:24:24 +0000 (12:24 -0700)]
Fix code guarded by SK_FONT_HOST_USE_SYSTEM_SETTINGS.

BUG=skia:5313

Review-Url: https://codereview.chromium.org/1988913003

8 years agoAdd OpenGL context to Viewer.
jvanverth [Tue, 17 May 2016 19:15:48 +0000 (12:15 -0700)]
Add OpenGL context to Viewer.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978573003

Review-Url: https://codereview.chromium.org/1978573003

8 years agoRemove GrFontDescKey.
bsalomon [Tue, 17 May 2016 18:58:24 +0000 (11:58 -0700)]
Remove GrFontDescKey.

This was a reference counted wrapper of SkDescriptor. It doesn't seem like the copies are performance critical. This gets us closer to removing GrFontScaler.

Also removes some unused member functions on GrBatchTextStrike and GrFontScaler.

BUG=chromium:608566
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1988833003

Review-Url: https://codereview.chromium.org/1988833003

8 years agoSet the "mutable format" bit on sRGB images at creation time.
brianosman [Tue, 17 May 2016 18:47:32 +0000 (11:47 -0700)]
Set the "mutable format" bit on sRGB images at creation time.

This allows us to later create an image view with a linear format, for
legacy-mode non-sRGB access.

No actual API change (just a comment change in public header).

TBR=bsalomon@google.com
BUG=skia:5308
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1981333004

Review-Url: https://codereview.chromium.org/1981333004

8 years agoMake VisualBench bot build the visualbench target
borenet [Tue, 17 May 2016 17:26:15 +0000 (10:26 -0700)]
Make VisualBench bot build the visualbench target

Plus drive-by fixes for expectations/coverage.

BUG=skia:5185
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986273002

Review-Url: https://codereview.chromium.org/1986273002

8 years agoRename SkDescriptor::equals to SkDescriptor::operator==
bsalomon [Tue, 17 May 2016 17:17:45 +0000 (10:17 -0700)]
Rename SkDescriptor::equals to SkDescriptor::operator==

BUG=chromium:608566
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986253002

Review-Url: https://codereview.chromium.org/1986253002

8 years ago(Mostly) Retract GrRenderTarget from SkGpuDevice
robertphillips [Tue, 17 May 2016 16:57:46 +0000 (09:57 -0700)]
(Mostly) Retract GrRenderTarget from SkGpuDevice

This gets us most of the way to having SkGpuDevice exclusively use a GrDrawContext instead of a GrRenderTarget. There are a few other refactorings (e.g., rm need for fLegacyBitmap and accessRenderTarget) before the GrRenderTarget can be completely removed.

Has calved off:
https://codereview.chromium.org/1925313002/ (Tighten up SkSpecialSurface factory functions)
https://codereview.chromium.org/1925803004/ (Add sk_sp to SkSurface_Gpu and SkGpuDevice)
https://codereview.chromium.org/1956473002/ (Retract GrRenderTarget a bit within SkGpuDevice)
https://codereview.chromium.org/1979913002/ (Rename GrDrawingMgr::abandon to wasAbandoned & add a matching entry point to GrDrawingContext)
https://codereview.chromium.org/1982583002/ (Add isUnifiedMultisampled entry point to GrDrawContext)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1930013002

Review-Url: https://codereview.chromium.org/1930013002

8 years agoAdd tests and benches to support the sRGB blitter for SkOpts
herb [Tue, 17 May 2016 16:57:34 +0000 (09:57 -0700)]
Add tests and benches to support the sRGB blitter for SkOpts

 1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
 2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
 1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
 3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
 9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce

   633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
   684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
 1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
 2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce

   209.14 LinearSrcOverplane.pngVSkOptsSSE41
   562.24 LinearSrcOverplane.pngVSkOptsDefault
   272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
   436.46 LinearSrcOverplane.pngVSkOptsTrivial
 1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce

   318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
   529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
   441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
   720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
 2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce

   479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
 1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
   668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
 1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
 4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a

Committed: https://skia.googlesource.com/skia/+/bc927548db17accec2195af6e15053f7918bb3f5

Review-Url: https://codereview.chromium.org/1939513002

8 years agoPrepare SkColorSpace to be a public API
msarett [Tue, 17 May 2016 16:31:20 +0000 (09:31 -0700)]
Prepare SkColorSpace to be a public API

Moves implementation details into SkColorSpacePriv.h

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985903002

Review-Url: https://codereview.chromium.org/1985903002

8 years agoUpdate libpng to 1.6.22rc01
msarett [Tue, 17 May 2016 16:31:04 +0000 (09:31 -0700)]
Update libpng to 1.6.22rc01

If there are no issues, this version will be released May 26.

Let's start testing with it, so we are ready to update Chrome when
it is available.

BUG=skia:4710
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1983853002

Review-Url: https://codereview.chromium.org/1983853002

8 years agoEnsure that SkColorTable->fCount is set properly after decodes
msarett [Tue, 17 May 2016 15:52:11 +0000 (08:52 -0700)]
Ensure that SkColorTable->fCount is set properly after decodes

We now have some blits that will process the color table.

If we erroneously report that the size of the color table is 256,
we will do extra work and annoy MSAN.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1982753002

Review-Url: https://codereview.chromium.org/1982753002

8 years agoMake GrFontScaler not be ref-counted
bsalomon [Tue, 17 May 2016 15:36:41 +0000 (08:36 -0700)]
Make GrFontScaler not be ref-counted

This object is made invalid when the SkGlyphCache that it points to is destroyed.

BUG=chromium:608566
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1982303002

Review-Url: https://codereview.chromium.org/1982303002

8 years agoRevert of Change to sRGB default for codec generated images. (patchset #2 id:20001...
herb [Tue, 17 May 2016 13:50:15 +0000 (06:50 -0700)]
Revert of Change to sRGB default for codec generated images. (patchset #2 id:20001 of https://codereview.chromium.org/1955063002/ )

Reason for revert:
TBR=brianosman@google.com

Original issue's description:
> Change to sRGB default for codec generated images.
>
> Compared the gm and skps for 8888 and srgb. There are no differences for 8888, there are 100 differences for sRGB, but the 100 look correct compared to the old ones.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955063002
>
> Committed: https://skia.googlesource.com/skia/+/7acc00853174361cf921ecac8fbeaf6812f53eed

TBR=brianosman@google.com,msarett@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1982323002

8 years agoRemove workarounds initializing command buffer EGL
kkinnunen [Tue, 17 May 2016 13:01:40 +0000 (06:01 -0700)]
Remove workarounds initializing command buffer EGL

The eglDisplay() of command buffer EGL implementation now does not
allocate a new EGL display per call, rather just returns the global.

The EGL implementation is fixed as part of bug 581634.

Removes eglTerminate call, as it's should not be used in Skia at the
moment. The call will terminate all of EGL, which is not intendend. The
previous usage was only due to incorrect implementation of the API.  Not
added back to anywhere else, leaking EGL globals is as
designed. Discussed in https://chromiumcodereview.appspot.com/1733323002.

BUG=581634, 603223
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978733003

Review-Url: https://codereview.chromium.org/1978733003

8 years agoRevert of Add specialized sRGB blitter for SkOpts (patchset #21 id:400001 of https...
reed [Tue, 17 May 2016 10:07:01 +0000 (03:07 -0700)]
Revert of Add specialized sRGB blitter for SkOpts (patchset #21 id:400001 of https://codereview.chromium.org/1939513002/ )

Reason for revert:
broke some debug bots:

Running LinearSrcOvericonstrip.pngVSkOptsSSE41 nonrendering
../../../bench/SkBlend_optsBench.cpp:118: fatal error: ""fPixmap.colorType() == kRGBA_8888_SkColorType""

Original issue's description:
> Add tests and benches to support the sRGB blitter for SkOpts
>
>  1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
>  2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
>  1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
>  3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
>  9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce
>
>    633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
>    684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
>  1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
>  2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
> 10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce
>
>    209.14 LinearSrcOverplane.pngVSkOptsSSE41
>    562.24 LinearSrcOverplane.pngVSkOptsDefault
>    272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
>    436.46 LinearSrcOverplane.pngVSkOptsTrivial
>  1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce
>
>    318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
>    529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
>    441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
>    720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
>  2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce
>
>    479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
>  1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
>    668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
>  1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
>  4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce
>
>
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a
>
> Committed: https://skia.googlesource.com/skia/+/bc927548db17accec2195af6e15053f7918bb3f5

TBR=mtklein@google.com,fmalita@chromium.org,herb@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1986763002

8 years agoAdd tests and benches to support the sRGB blitter for SkOpts
herb [Mon, 16 May 2016 21:27:51 +0000 (14:27 -0700)]
Add tests and benches to support the sRGB blitter for SkOpts

 1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
 2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
 1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
 3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
 9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce

   633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
   684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
 1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
 2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce

   209.14 LinearSrcOverplane.pngVSkOptsSSE41
   562.24 LinearSrcOverplane.pngVSkOptsDefault
   272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
   436.46 LinearSrcOverplane.pngVSkOptsTrivial
 1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce

   318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
   529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
   441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
   720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
 2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce

   479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
 1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
   668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
 1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
 4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a

Review-Url: https://codereview.chromium.org/1939513002

8 years agoImplement vulkan fence syncs for nanobench
bsalomon [Mon, 16 May 2016 21:09:56 +0000 (14:09 -0700)]
Implement vulkan fence syncs for nanobench

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974913003

Review-Url: https://codereview.chromium.org/1974913003

8 years agoRemove unneeded reference count churn.
bungeman [Mon, 16 May 2016 19:39:23 +0000 (12:39 -0700)]
Remove unneeded reference count churn.

An object was ref'ed only to be automatically unref'ed.

Review-Url: https://codereview.chromium.org/1979193009

8 years agoMove VisualBench_APK and SampleApp_APK to "everything" target
borenet [Mon, 16 May 2016 17:38:51 +0000 (10:38 -0700)]
Move VisualBench_APK and SampleApp_APK to "everything" target

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986433002

Review-Url: https://codereview.chromium.org/1986433002

8 years agoAdd isUnifiedMultisampled entry point to GrDrawContext
robertphillips [Mon, 16 May 2016 16:50:03 +0000 (09:50 -0700)]
Add isUnifiedMultisampled entry point to GrDrawContext

GrRenderTargetProxy supports the isUnifiedMultisampled call so GrDrawContext will be able to support it even when GrRenderTargetProxy-backed.

This is split out of: https://codereview.chromium.org/1930013002/ ((Mostly) Retract GrRenderTarget from SkGpuDevice)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1982583002

Review-Url: https://codereview.chromium.org/1982583002

8 years agoChange to sRGB default for codec generated images.
herb [Mon, 16 May 2016 16:43:54 +0000 (09:43 -0700)]
Change to sRGB default for codec generated images.

Compared the gm and skps for 8888 and srgb. There are no differences for 8888, there are 100 differences for sRGB, but the 100 look correct compared to the old ones.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955063002

Review-Url: https://codereview.chromium.org/1955063002

8 years agoMake blurcircles2 run as a benchmark.
bsalomon [Mon, 16 May 2016 16:36:44 +0000 (09:36 -0700)]
Make blurcircles2 run as a benchmark.

In bench mode it does not draw the comparison paths (or line separators). It also randomly perturbs the blur and circle radii to avoid trivially hitting the same cache entries and each repetition.

BUG=skia:5224
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985713002

Review-Url: https://codereview.chromium.org/1985713002

8 years agoRecognize Adobe RGB profiles
msarett [Mon, 16 May 2016 16:23:42 +0000 (09:23 -0700)]
Recognize Adobe RGB profiles

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971203002

Review-Url: https://codereview.chromium.org/1971203002

8 years agoRename GrDrawingMgr::abandon to wasAbandoned & add a matching entry point to GrDrawin...
robertphillips [Mon, 16 May 2016 16:14:53 +0000 (09:14 -0700)]
Rename GrDrawingMgr::abandon to wasAbandoned & add a matching entry point to GrDrawingContext

Since GrDrawingContext is generally replacing GrRenderTarget, this is to provide functionality similar to GrRenderTarget::wasDestroyed.

This is split out of https://codereview.chromium.org/1930013002/ ((Mostly) Retract GrRenderTarget from SkGpuDevice)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1979913002

Review-Url: https://codereview.chromium.org/1979913002

8 years agoRun GM benchs in bench mode
bsalomon [Mon, 16 May 2016 16:09:18 +0000 (09:09 -0700)]
Run GM benchs in bench mode
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978253002

Review-Url: https://codereview.chromium.org/1978253002

8 years agoOnly run kStripe_Mode on JPEGs
scroggo [Mon, 16 May 2016 16:04:18 +0000 (09:04 -0700)]
Only run kStripe_Mode on JPEGs

It was designed to test code in libjpeg-turbo. Skipping scanlines is
tested more generally in other tests.

BUG=skia:5307
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978013002

Review-Url: https://codereview.chromium.org/1978013002

8 years agoDrop AndroidCodecSrc::kDivisor_Mode
scroggo [Mon, 16 May 2016 16:04:13 +0000 (09:04 -0700)]
Drop AndroidCodecSrc::kDivisor_Mode

This is redundant with BRD tests.

BUG=skia:5307
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1976303002

Review-Url: https://codereview.chromium.org/1976303002

8 years agoRetract GrRenderTarget from AlphaClipMask code
robertphillips [Sun, 15 May 2016 14:53:35 +0000 (07:53 -0700)]
Retract GrRenderTarget from AlphaClipMask code

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1977793004

Committed: https://skia.googlesource.com/skia/+/93bc24e8b09b5ad7498ce9bc9a6519c7a43dbc9d

Review-Url: https://codereview.chromium.org/1977793004

8 years agoUpdate SKP version
update-skps [Sun, 15 May 2016 07:41:23 +0000 (00:41 -0700)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=
NO_MERGE_BUILDS
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1979893002

Review-Url: https://codereview.chromium.org/1979893002

8 years agoFix return from nullptr to false in GrVkTexture.cpp
bsalomon [Sun, 15 May 2016 00:55:32 +0000 (17:55 -0700)]
Fix return from nullptr to false in GrVkTexture.cpp

TBR=egdaniel@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978113002

Review-Url: https://codereview.chromium.org/1978113002

8 years agoAdd blurcircles2 GM
bsalomon [Fri, 13 May 2016 20:48:48 +0000 (13:48 -0700)]
Add blurcircles2 GM

In GM mode this draws an array of circles with different radii and different blur radii. Below each circle an almost-circle path is drawn with the same blur filter for comparison.

In Sample mode this draws a single circle and almost-circle with animating radius and blur radius.

BUG=skia:5224
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974353003

Review-Url: https://codereview.chromium.org/1974353003

8 years agoRevert of Retract GrRenderTarget from AlphaClipMask code (patchset #3 id:40001 of...
bsalomon [Fri, 13 May 2016 20:47:04 +0000 (13:47 -0700)]
Revert of Retract GrRenderTarget from AlphaClipMask code (patchset #3 id:40001 of https://codereview.chromium.org/1977793004/ )

Reason for revert:
Possible cause of leak in ASAN bot:

https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/3351

Original issue's description:
> Retract GrRenderTarget from AlphaClipMask code
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1977793004
>
> Committed: https://skia.googlesource.com/skia/+/93bc24e8b09b5ad7498ce9bc9a6519c7a43dbc9d

TBR=robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/1975353002

8 years agoFix msaa on GrVkRenderTarget
egdaniel [Fri, 13 May 2016 20:43:44 +0000 (13:43 -0700)]
Fix msaa on GrVkRenderTarget

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1977113002

Review-Url: https://codereview.chromium.org/1977113002

8 years agoRetract GrRenderTarget from AlphaClipMask code
robertphillips [Fri, 13 May 2016 18:51:23 +0000 (11:51 -0700)]
Retract GrRenderTarget from AlphaClipMask code

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1977793004

Review-Url: https://codereview.chromium.org/1977793004

8 years agoSkPictureGpuAnalyzer
fmalita [Fri, 13 May 2016 18:40:07 +0000 (11:40 -0700)]
SkPictureGpuAnalyzer

Stateful helper for gathering multi-picture GPU stats.

Exposes the existing SkPicture GPU veto semantics, while preserving
the SKP impl (which has some nice properties: lazy, hierarchical,
cached per pic).

R=reed@google.com,bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974833003

Review-Url: https://codereview.chromium.org/1974833003

8 years agoRefactor Vulkan image, texture, RTs so that create and getter handles match.
egdaniel [Fri, 13 May 2016 18:30:37 +0000 (11:30 -0700)]
Refactor Vulkan image, texture, RTs so that create and getter handles match.

This allows allows us to track and notify clients when either side changes
and image layout.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974983002

Review-Url: https://codereview.chromium.org/1974983002

8 years agoAbort stencil draws when the attachment fails
cdalton [Fri, 13 May 2016 18:27:15 +0000 (11:27 -0700)]
Abort stencil draws when the attachment fails

BUG=skia:611514
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971353003

Review-Url: https://codereview.chromium.org/1971353003

8 years agoRetract GrRenderTarget a bit within SkGpuDevice
robertphillips [Fri, 13 May 2016 18:20:46 +0000 (11:20 -0700)]
Retract GrRenderTarget a bit within SkGpuDevice

Split off of: https://codereview.chromium.org/1930013002/ ((Mostly) Retract GrRenderTarget from SkGpuDevice)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1956473002

Committed: https://skia.googlesource.com/skia/+/d215a95882485026d176a81bf58871276b21c89c

Review-Url: https://codereview.chromium.org/1956473002

8 years agoConvert GrClip to an abstract base class
cdalton [Fri, 13 May 2016 17:25:00 +0000 (10:25 -0700)]
Convert GrClip to an abstract base class

Converts GrClip to an abstract base class and adds a "GrFixedClip"
implementation. GrFixedClip denotes a clip implemented with fixed-
function hardware. GrFixedClip allows us to remove the stateful
"fClipMode" member from GrClipMaskManager, and in the future will
be able to nicely encapsulate window rectangles.

After this change GrClipMaskManager is just a wrapper around
GrDrawTarget. We may want to consider removing it altogether.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971343002

Review-Url: https://codereview.chromium.org/1971343002

8 years agoThis has all the different source types in and working. There are many SkDiffs, but...
herb [Fri, 13 May 2016 17:04:46 +0000 (10:04 -0700)]
This has all the different source types in and working. There are many SkDiffs, but they seem to be due to better resolution.

This seems to fix all the bugs involved with make all the images produced by the codec to default to sRGB.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967283002

Review-Url: https://codereview.chromium.org/1967283002

8 years agoChange Android activity title from JNI call
liyuqian [Fri, 13 May 2016 16:57:44 +0000 (09:57 -0700)]
Change Android activity title from JNI call

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978843002

Review-Url: https://codereview.chromium.org/1978843002

8 years agoAdd bounds to GrShape
bsalomon [Fri, 13 May 2016 16:23:38 +0000 (09:23 -0700)]
Add bounds to GrShape
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970003003

Review-Url: https://codereview.chromium.org/1970003003

8 years agoAdd isolate_android_sdk.py script and android_sdk_hash
borenet [Fri, 13 May 2016 15:41:04 +0000 (08:41 -0700)]
Add isolate_android_sdk.py script and android_sdk_hash

BUG=skia:5298
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975893002

Review-Url: https://codereview.chromium.org/1975893002

8 years agoSimple program for visualizing gamuts
msarett [Fri, 13 May 2016 14:32:59 +0000 (07:32 -0700)]
Simple program for visualizing gamuts

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972343002

Review-Url: https://codereview.chromium.org/1972343002

8 years agoGMs: fail gracefully for null surface
scroggo [Fri, 13 May 2016 14:25:44 +0000 (07:25 -0700)]
GMs: fail gracefully for null surface

A couple more instances where MakeRenderTarget returns nullptr
due to --preAbandonGpuContext.

BUG=skia5282
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1976163002

Review-Url: https://codereview.chromium.org/1976163002

8 years agoUse title buttons to switch slides
liyuqian [Fri, 13 May 2016 13:45:21 +0000 (06:45 -0700)]
Use title buttons to switch slides

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975723004

Review-Url: https://codereview.chromium.org/1975723004

8 years agoRecognize more sRGB gammas
msarett [Fri, 13 May 2016 13:19:04 +0000 (06:19 -0700)]
Recognize more sRGB gammas

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975883003

Review-Url: https://codereview.chromium.org/1975883003

8 years agoSimplify GrSWMaskHelper
robertphillips [Fri, 13 May 2016 12:47:23 +0000 (05:47 -0700)]
Simplify GrSWMaskHelper
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974943002

Review-Url: https://codereview.chromium.org/1974943002

8 years agoSwap SkGpuBlurUtils over to using SkIRects
robertphillips [Fri, 13 May 2016 12:06:19 +0000 (05:06 -0700)]
Swap SkGpuBlurUtils over to using SkIRects

We don't have to land this, but I found it more comforting for the blurring code to explicitly deal with SkIRects rather than SkRects with integer values.

Split out of: https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1968603003

Review-Url: https://codereview.chromium.org/1968603003

8 years agoRemove clip from GrPipelineBuilder
cdalton [Thu, 12 May 2016 22:09:48 +0000 (15:09 -0700)]
Remove clip from GrPipelineBuilder

This eliminates a copy and will allow us to make the GrClip class
virutal.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966903004

Review-Url: https://codereview.chromium.org/1966903004

8 years agoEliminate special case nvpr batch handling
cdalton [Thu, 12 May 2016 18:52:02 +0000 (11:52 -0700)]
Eliminate special case nvpr batch handling

Removes drawPathBatch methods from GrDrawTarget and GrDrawContext, and
integrates nvpr batches in with all the other batches.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966763002

Review-Url: https://codereview.chromium.org/1966763002

8 years agoIgnore patch version when checking compatibility of vulkan layers
egdaniel [Thu, 12 May 2016 18:42:00 +0000 (11:42 -0700)]
Ignore patch version when checking compatibility of vulkan layers

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970233002

Review-Url: https://codereview.chromium.org/1970233002

8 years agoMake PixelGetters much smaller, move more common code to PixelAccessor.
herb [Thu, 12 May 2016 18:37:00 +0000 (11:37 -0700)]
Make PixelGetters much smaller, move more common code to PixelAccessor.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971863002

Review-Url: https://codereview.chromium.org/1971863002

8 years agocmake: fixes for windows
halcanary [Thu, 12 May 2016 18:25:00 +0000 (11:25 -0700)]
cmake: fixes for windows

Review-Url: https://codereview.chromium.org/1975933002

8 years agoMake SkGpuBlurUtils::GaussianBlur more drawContext centric
robertphillips [Thu, 12 May 2016 18:13:00 +0000 (11:13 -0700)]
Make SkGpuBlurUtils::GaussianBlur more drawContext centric

This is split out of https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962903003

Committed: https://skia.googlesource.com/skia/+/e7ef01dcfda0f8ae407ba92cc03cf3f7841ec470

Committed: https://skia.googlesource.com/skia/+/d38d92f9ca6a58ee51461488f0869343cf7ca083

Review-Url: https://codereview.chromium.org/1962903003

8 years agoSupport allowSRGBInputs on Vulkan (via secondary texture views)
brianosman [Thu, 12 May 2016 18:01:10 +0000 (11:01 -0700)]
Support allowSRGBInputs on Vulkan (via secondary texture views)

All textures still have a "correct" image view that matches their actual
format. For sRGB textures, we can ask for a non-sRGB view that is
created on demand (and cached), in legacy mode.

Finally, turn on sRGB support in Vulkan. The gamma GM now looks correct
in both L32 and S32.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970293002

Review-Url: https://codereview.chromium.org/1970293002

8 years agoRemove SkPicture::hasText()
fmalita [Thu, 12 May 2016 17:53:49 +0000 (10:53 -0700)]
Remove SkPicture::hasText()

No longer used in Chromium.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978533002

Review-Url: https://codereview.chromium.org/1978533002

8 years agoFix typo in SkOSWindow_AndroidNative.
bungeman [Thu, 12 May 2016 17:48:59 +0000 (10:48 -0700)]
Fix typo in SkOSWindow_AndroidNative.

This allows the 'most' target to be built on Android.

Review-Url: https://codereview.chromium.org/1973043002

8 years agoFix bug & add code to catch ImageFilter clearing bugs
robertphillips [Thu, 12 May 2016 17:46:39 +0000 (10:46 -0700)]
Fix bug & add code to catch ImageFilter clearing bugs

Follow on to https://codereview.chromium.org/1969193002/ (SkPictureImageFilter - clear local canvas before use)

BUG=610667

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972213002

Review-Url: https://codereview.chromium.org/1972213002

8 years agoFix bad pixel address calculation.
herb [Thu, 12 May 2016 17:36:24 +0000 (10:36 -0700)]
Fix bad pixel address calculation.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974053002

Review-Url: https://codereview.chromium.org/1974053002

8 years agoWarning instead of exception for cmake
liyuqian [Thu, 12 May 2016 17:21:17 +0000 (10:21 -0700)]
Warning instead of exception for cmake

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971953003

Review-Url: https://codereview.chromium.org/1971953003

8 years agousing_skia_and_harfbuzz: compile w/ Android NDK
halcanary [Thu, 12 May 2016 17:09:58 +0000 (10:09 -0700)]
using_skia_and_harfbuzz: compile w/ Android NDK

TBR=djsollen@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1977503002

Review-Url: https://codereview.chromium.org/1977503002

8 years agoMove SkTypeface to sk_sp.
bungeman [Thu, 12 May 2016 17:09:30 +0000 (10:09 -0700)]
Move SkTypeface to sk_sp.

Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1933393002

Review-Url: https://codereview.chromium.org/1933393002

8 years agoUse swipe gesture to switch between slides on Android
liyuqian [Thu, 12 May 2016 16:17:04 +0000 (09:17 -0700)]
Use swipe gesture to switch between slides on Android

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1965013007

Review-Url: https://codereview.chromium.org/1965013007

8 years agoSkPictureImageFilter - clear local canvas before use
ericrk [Thu, 12 May 2016 16:06:44 +0000 (09:06 -0700)]
SkPictureImageFilter - clear local canvas before use

In SkPictureImageFilter::onFilterImage, we may create two new surfaces,
one for our final output, and one for a local resolution intermediate.

We clear the final output surface before use, removing any previous
content, however we do not do the same for the local surface. This can
lead to content being incorrectly layered on top of previous content
when we go down this path.

This change adds logic to clear the local surface as well.

BUG=610667
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1969193002

Review-Url: https://codereview.chromium.org/1969193002

8 years agoFix sRGB textures that must be copied (for NPOT tiling, etc...)
brianosman [Thu, 12 May 2016 14:53:45 +0000 (07:53 -0700)]
Fix sRGB textures that must be copied (for NPOT tiling, etc...)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1969923002

Review-Url: https://codereview.chromium.org/1969923002

8 years agofix hairline clip
caryclark [Thu, 12 May 2016 14:07:05 +0000 (07:07 -0700)]
fix hairline clip

Don't remove inner clip if it's non-rectangular.
Add cubic hairline clip code to quad and conic cases.

R=reed@google.com
BUG=skia:5252
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1943403006

Review-Url: https://codereview.chromium.org/1943403006

8 years agoRevert of Move SkTypeface to sk_sp. (patchset #5 id:80001 of https://codereview.chrom...
scroggo [Thu, 12 May 2016 13:22:30 +0000 (06:22 -0700)]
Revert of Move SkTypeface to sk_sp. (patchset #5 id:80001 of https://codereview.chromium.org/1933393002/ )

Reason for revert:
fontmgr_iterAndroid failing to draw emoji. E.g. https://gold.skia.org/search2?blame=6296da736fbf40aae881650c239420f64e576c3f&unt=true&head=true&query=source_type%3Dgm

Original issue's description:
> Move SkTypeface to sk_sp.
>
> Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f

TBR=reed@google.com,fmalita@chromium.org,tomhudson@google.com,bungeman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/1974783002

8 years agoFail gracefully if MakeRenderTarget fails
scroggo [Thu, 12 May 2016 13:19:37 +0000 (06:19 -0700)]
Fail gracefully if MakeRenderTarget fails

We recently started passing --preAbandonGpuContext when running DM on
valgrind, resulting in this call returning nullptr. We had not been
checking for it, so we crash. Already fixed one in crrev.com/1959173002,
and now we reach another one.

BUG=skia:5282
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972933002

Review-Url: https://codereview.chromium.org/1972933002

8 years agoAdd isEmpty() query to GrShape and improve comments.
bsalomon [Wed, 11 May 2016 22:15:56 +0000 (15:15 -0700)]
Add isEmpty() query to GrShape and improve comments.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971613004

Review-Url: https://codereview.chromium.org/1971613004

8 years agoSeparate user and raw stencil settings
cdalton [Wed, 11 May 2016 20:58:08 +0000 (13:58 -0700)]
Separate user and raw stencil settings

Adds a new GrUserStencilSettings class that describes in abstract terms
how a draw will use the stencil (e.g. kAlwaysIfInClip, kSetClipBit,
etc.). GrPipelineBuilder now only defines the GrUserStencilSettings.
When the GrPipeline is finalized, the user stencil settings are then
translated into concrete GrStencilSettings.

At this point, GrClipMaskManager only needs to tell the GrAppliedClip
whether or not there is a stencil clip. It does not need to modify
stencil settings and GrPipelineBuilder does not need
AutoRestoreStencil.

This is one step of the stencil overhaul. In the future it will also
allow us to clean up the special case handling for nvpr and the
stateful fClipMode member of GrClipMaskManager.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962243002

Committed: https://skia.googlesource.com/skia/+/12dbb3947e1aaf205b4fcf13b40e54e50650eb37

Review-Url: https://codereview.chromium.org/1962243002

8 years agoRevert of Make SkGpuBlurUtils::GaussianBlur more drawContext centric (patchset #2...
robertphillips [Wed, 11 May 2016 19:41:35 +0000 (12:41 -0700)]
Revert of Make SkGpuBlurUtils::GaussianBlur more drawContext centric (patchset #2 id:20001 of https://codereview.chromium.org/1962903003/ )

Reason for revert:
ASAN

Original issue's description:
> Make SkGpuBlurUtils::GaussianBlur more drawContext centric
>
> This is split out of https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962903003
>
> Committed: https://skia.googlesource.com/skia/+/e7ef01dcfda0f8ae407ba92cc03cf3f7841ec470
>
> Committed: https://skia.googlesource.com/skia/+/d38d92f9ca6a58ee51461488f0869343cf7ca083

TBR=bsalomon@google.com,scroggo@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/1964413003

8 years agoMove SkTypeface to sk_sp.
bungeman [Wed, 11 May 2016 19:38:18 +0000 (12:38 -0700)]
Move SkTypeface to sk_sp.

Review-Url: https://codereview.chromium.org/1933393002

8 years agoNanobench running on Vulkan
bsalomon [Wed, 11 May 2016 18:55:36 +0000 (11:55 -0700)]
Nanobench running on Vulkan

This lets nanobench run but the timings are inaccurate because of missing
implementations of synchronization functions in VkTestContext.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1965273004

Review-Url: https://codereview.chromium.org/1965273004

8 years agoUse common code from SkPM4fPriv
herb [Wed, 11 May 2016 18:53:36 +0000 (11:53 -0700)]
Use common code from SkPM4fPriv

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967793003

Review-Url: https://codereview.chromium.org/1967793003

8 years agoUse GrGammaEffect to support YUV conversion without sRGB write control
brianosman [Wed, 11 May 2016 18:43:35 +0000 (11:43 -0700)]
Use GrGammaEffect to support YUV conversion without sRGB write control

BUG=skia:

Review-Url: https://codereview.chromium.org/1970833003

8 years agoHarden linear gradients
fmalita [Wed, 11 May 2016 18:39:58 +0000 (11:39 -0700)]
Harden linear gradients

Ensure that the last offset == 1.0f when implict positions are used
(previously subject to float imprecision).

BUG=skia:5288,chromium:598484
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974463002

Review-Url: https://codereview.chromium.org/1974463002

8 years agoAdd png for difficult but common blit cases.
herb [Wed, 11 May 2016 18:12:17 +0000 (11:12 -0700)]
Add png for difficult but common blit cases.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1973583002

Review-Url: https://codereview.chromium.org/1973583002

8 years agoMake SkGpuBlurUtils::GaussianBlur more drawContext centric
robertphillips [Wed, 11 May 2016 18:00:52 +0000 (11:00 -0700)]
Make SkGpuBlurUtils::GaussianBlur more drawContext centric

This is split out of https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962903003

Committed: https://skia.googlesource.com/skia/+/e7ef01dcfda0f8ae407ba92cc03cf3f7841ec470

Review-Url: https://codereview.chromium.org/1962903003

8 years agoRefactor sample to share boiler plate code. TODO: move to common calls from SkPM4f.
herb [Wed, 11 May 2016 17:39:55 +0000 (10:39 -0700)]
Refactor sample to share boiler plate code. TODO: move to common calls from SkPM4f.

This preparation to finish handling the rest of the SkColorTypes.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970813002

Review-Url: https://codereview.chromium.org/1970813002

8 years agoMake unit tests use generic testcontext rather than glcontext
bsalomon [Wed, 11 May 2016 17:38:05 +0000 (10:38 -0700)]
Make unit tests use generic testcontext rather than glcontext
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971613003

Review-Url: https://codereview.chromium.org/1971613003

8 years agoRevert of Make SkGpuBlurUtils::GaussianBlur more drawContext centric (patchset #2...
scroggo [Wed, 11 May 2016 17:21:00 +0000 (10:21 -0700)]
Revert of Make SkGpuBlurUtils::GaussianBlur more drawContext centric (patchset #2 id:20001 of https://codereview.chromium.org/1962903003/ )

Reason for revert:
This looks to be causing errors in Gold.  I don't know if I can make a permanent link to something in Gold, but take a look at imagefilterscropexpand for an example.

Original issue's description:
> Make SkGpuBlurUtils::GaussianBlur more drawContext centric
>
> This is split out of https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962903003
>
> Committed: https://skia.googlesource.com/skia/+/e7ef01dcfda0f8ae407ba92cc03cf3f7841ec470

TBR=bsalomon@google.com,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/1973563002

8 years agoAdd base class for GLTestContext and add new subclass VkTestContext.
bsalomon [Wed, 11 May 2016 17:09:18 +0000 (10:09 -0700)]
Add base class for GLTestContext and add new subclass VkTestContext.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1964243003

Review-Url: https://codereview.chromium.org/1964243003

8 years agoReset context after doing non-Skia GL rendering.
brianosman [Wed, 11 May 2016 15:49:59 +0000 (08:49 -0700)]
Reset context after doing non-Skia GL rendering.

Fixes nanobench crash in GLInstancedArraysBench

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1969623003

Review-Url: https://codereview.chromium.org/1969623003

8 years agoSwitch GrTextureToYUVPlanes over to newDrawContext calls
robertphillips [Wed, 11 May 2016 15:34:39 +0000 (08:34 -0700)]
Switch GrTextureToYUVPlanes over to newDrawContext calls

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970743002

Review-Url: https://codereview.chromium.org/1970743002

8 years agocompressed texture support has been broken/untested for a while, remove cruft
reed [Wed, 11 May 2016 15:06:11 +0000 (08:06 -0700)]
compressed texture support has been broken/untested for a while, remove cruft

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970773002

Review-Url: https://codereview.chromium.org/1970773002

8 years agoMake SkGpuBlurUtils::GaussianBlur more drawContext centric
robertphillips [Wed, 11 May 2016 14:55:35 +0000 (07:55 -0700)]
Make SkGpuBlurUtils::GaussianBlur more drawContext centric

This is split out of https://codereview.chromium.org/1959493002/ (Retract GrRenderTarget from SkGpuBlurUtils)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962903003

Review-Url: https://codereview.chromium.org/1962903003

8 years agoMake GrGammaEffect have explicit sRGB modes, plus exponential mode.
brianosman [Wed, 11 May 2016 13:49:32 +0000 (06:49 -0700)]
Make GrGammaEffect have explicit sRGB modes, plus exponential mode.

Convert it to a "standard" FP that just transforms the input color.

For now, we still infer the sRGB transfer curves from the exponent,
but I'm hoping that eventually SkGammas will provide us with the
exact curve we're supposed to be applying. In any case, this adds
support for doing the inverse transformation, as well, which will
be needed in an upcoming Vulkan YUV change, among other things.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1954863002

Committed: https://skia.googlesource.com/skia/+/2139303e4c0a9cbcfac695977a80eb026a9296ab

Review-Url: https://codereview.chromium.org/1954863002

8 years agoRevert "Add tests and benches to support the sRGB blitter for SkOpts"
scroggo [Wed, 11 May 2016 13:40:32 +0000 (06:40 -0700)]
Revert "Add tests and benches to support the sRGB blitter for SkOpts"

This reverts commit 554784cd85029c05d9ed04b1aeb71520d196153a and
1956b4ae1c9a47833b174f31c054d347ea04db09

Reason for revert - ASAN failures, e.g. from https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN/builds/2233/steps/perf_skia%20on%20Ubuntu/logs/stdio :

  Uninitialized value was created by a heap allocation
    0 0x7f69aa96f799 in operator new[](unsigned long) /b/work/skia/third_party/externals/llvm/out/../projects/compiler-rt/lib/msan/msan_new_delete.cc:37
    1 0x7f69aaa315c1 in SkAutoTArray<unsigned int>::reset(int) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../include/private/../private/SkTemplates.h:137:22
    2 0x7f69aaa34ee9 in LinearSrcOverBench<SrcOverVSkOptsSSE41>::LinearSrcOverBench(char const*) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:108:9
    3 0x7f69aaa30cf2 in $_24::operator()(void*) const /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:167:1
    4 0x7f69aaa30c87 in $_24::__invoke(void*) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:167:1
    5 0x7f69aaa68856 in BenchmarkStream::rawNext() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:653:32
    6 0x7f69aaa61467 in BenchmarkStream::next() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:642:25
    7 0x7f69aaa5b703 in nanobench_main() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:1119:27
    8 0x7f69aaa5e10d in main /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:1290:12
    9 0x7f69a8c95ec4 in __libc_start_main /build/buildd/eglibc-2.19/csu/libc-start.c:287

TBR=herb@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1969803002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review-Url: https://codereview.chromium.org/1969803002

8 years agoTurn ContextInfos returned by GrContextFactory into structs.
bsalomon [Wed, 11 May 2016 13:33:06 +0000 (06:33 -0700)]
Turn ContextInfos returned by GrContextFactory into structs.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966013002

Review-Url: https://codereview.chromium.org/1966013002