platform/upstream/libSkiaSharp.git
8 years agoRemove "f" suffix from literal in LCD DF text shader.
bsalomon [Thu, 15 Sep 2016 14:29:52 +0000 (07:29 -0700)]
Remove "f" suffix from literal in LCD DF text shader.

Also improve DF GP names
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2340603003

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

8 years agoFix SampleApp compilation with skia_gpu=0
brianosman [Thu, 15 Sep 2016 14:19:53 +0000 (07:19 -0700)]
Fix SampleApp compilation with skia_gpu=0

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2347593002

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

8 years agoadd helpers for using SkData with picture serialization
reed [Thu, 15 Sep 2016 14:19:35 +0000 (07:19 -0700)]
add helpers for using SkData with picture serialization

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2341693004

TBR=

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

8 years agoBundle common arguments to GrGradientEffect creation
brianosman [Thu, 15 Sep 2016 13:59:15 +0000 (06:59 -0700)]
Bundle common arguments to GrGradientEffect creation

I'm going to be adding more (to deal with color spaces), so trying to fix
this before it gets out of control.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332213007

Committed: https://skia.googlesource.com/skia/+/f605c16a030d791a37f589e6bddd7158ba5d62cd
Review-Url: https://codereview.chromium.org/2332213007

8 years agoTidy up DM blacklists.
mtklein [Thu, 15 Sep 2016 13:24:03 +0000 (06:24 -0700)]
Tidy up DM blacklists.

No need to blacklist specific instances of configs that won't be run.
There's no bug or anything here... this is entirely about keeping the
command lines as noise-free as possible.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2341963003

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

8 years agoRoll recipe DEPS
rmistry [Thu, 15 Sep 2016 11:52:20 +0000 (04:52 -0700)]
Roll recipe DEPS

BUG=skia:5749
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339443003
NOTREECHECKS=true

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

8 years agoClean up unused SkPictureRecorder::optimizeFor()
mtklein [Thu, 15 Sep 2016 11:43:03 +0000 (04:43 -0700)]
Clean up unused SkPictureRecorder::optimizeFor()

Don't worry about the failing Shield bot... unrelated experiment.  It's failing at head.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2340133002

NOTREECHECKS=true

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

8 years agoRevert of Bundle common arguments to GrGradientEffect creation (patchset #2 id:20001...
djsollen [Thu, 15 Sep 2016 02:57:59 +0000 (19:57 -0700)]
Revert of Bundle common arguments to GrGradientEffect creation (patchset #2 id:20001 of https://codereview.chromium.org/2332213007/ )

Reason for revert:
This seems to be causing the autoroll into Chromium to fail.

https://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/69618/steps/compile/logs/stdio

Original issue's description:
> Bundle common arguments to GrGradientEffect creation
>
> I'm going to be adding more (to deal with color spaces), so trying to fix
> this before it gets out of control.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332213007
>
> Committed: https://skia.googlesource.com/skia/+/f605c16a030d791a37f589e6bddd7158ba5d62cd

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@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/2343703003

8 years agoFix SkDrawTextBlobCommand null blob crash
fmalita [Wed, 14 Sep 2016 21:55:59 +0000 (14:55 -0700)]
Fix SkDrawTextBlobCommand null blob crash

After https://codereview.chromium.org/2335493005, we're moving the param
into a local field -> we should no longer access it.

TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2344523003

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

8 years agoUpdate GN droid script
egdaniel [Wed, 14 Sep 2016 21:42:02 +0000 (14:42 -0700)]
Update GN droid script

Splits the pushes into different lines since old adbs cannot handle the one
line command

TBR=mtklein@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339293002

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

8 years ago[SVGDom] Expose intrinsic size info
fmalita [Wed, 14 Sep 2016 19:04:30 +0000 (12:04 -0700)]
[SVGDom] Expose intrinsic size info

  * expose intrinsic size info on <svg> nodes.

  * tweak the SkSVGDOM constructor to no longer take an container size
    param, but instead default to intrinsic size
  * update clients to call SkSVGDOM::setContainerSize() explicitly, when
    needed

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2345533002

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

8 years agoDon't let the compiler complain that |a| is uninit
msarett [Wed, 14 Sep 2016 18:53:49 +0000 (11:53 -0700)]
Don't let the compiler complain that |a| is uninit

TBR=mtklein@google.com
NOTRY=true
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339793003

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

8 years agoDisable ignore discard optimization in Vulkan
egdaniel [Wed, 14 Sep 2016 18:26:11 +0000 (11:26 -0700)]
Disable ignore discard optimization in Vulkan

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2346553002

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

8 years agoCQ update
mtklein [Wed, 14 Sep 2016 18:20:59 +0000 (11:20 -0700)]
CQ update

  - swap the N5 experiment over to the new GN N5 bot

  - cut down on the Windows build duplication: the other two bots
    cover x86, x86-64, Release, Debug, _and_ Vulkan already.

  - remove the Release-Shared tester: I added this bot to act as a proxy
    for the also Shared-build Android bots, but 1) they're fast enough
    to no longer need a proxy (see N5 above) and 2) they're no longer
    Shared builds.  I intend to completely drop support for dm and
    nanobench in Shared builds, so this bot will not just drop from the
    CQ but completely disappear.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2346463002

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

8 years agoGN: add is_official_build
mtklein [Wed, 14 Sep 2016 18:16:49 +0000 (11:16 -0700)]
GN: add is_official_build

... and use it to control debug symbols and SK_ALLOW_STATIC_GLOBAL_INITIALIZERS.

This will most directly have the effect of disabling GLProgramsTest and a bunch
of similar failing Vk tests on Android.

Hopefully this makes the N7 trybot go green, keeping the N5 trybot green.  Just running the N10 for fun.

(is_official_build is how Chrome terms this sort of ReleaseForReal build.)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2340723003

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

8 years agomerge run and check-rc steps
mtklein [Wed, 14 Sep 2016 18:15:54 +0000 (11:15 -0700)]
merge run and check-rc steps

This'll make the 'dm' or 'nanobench' step go red like you'd hope.

The N5 should pass and the N10 and N7 should fail, showing us both sides.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339713003

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

8 years agoStore SkColorSpaceXform gamma LUTs in a malloced field
msarett [Wed, 14 Sep 2016 18:02:04 +0000 (11:02 -0700)]
Store SkColorSpaceXform gamma LUTs in a malloced field

In order of likelihood:
(1) Tables are never used, since gamma is recognized and named.
(2) Only use one table, since all three gammas are the same.
(3) Actually need three tables.

No reason to waste a bunch of space for these tables on
SkColorSpaceXform, when it will likely be unused.

This will be more efficient in lots of cases, but is particularly
useful when the client really only wants a gamut xform.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336913005

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

8 years ago565 is not this important.
mtklein [Wed, 14 Sep 2016 17:33:12 +0000 (10:33 -0700)]
565 is not this important.

Reduce its testing and perfing to just the fast Linux bots,
and remove it from the default set of dm/nanobench configs.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2344553002

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

8 years agoConvert back to 0-255 scale before storing linear bytes
msarett [Wed, 14 Sep 2016 17:23:03 +0000 (10:23 -0700)]
Convert back to 0-255 scale before storing linear bytes

TBR=mtklein@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2338203005

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

8 years agoImproved optional command handling in SkParsePath::FromSVGString()
fmalita [Wed, 14 Sep 2016 17:14:08 +0000 (10:14 -0700)]
Improved optional command handling in SkParsePath::FromSVGString()

Repeating command letters are optional in SVG path data strings:
https://www.w3.org/TR/SVG/paths.html#PathData

FromSVGString() already supports this feature, but only checks for
scalars prefixes == (digit | '-' | '+').

A decimal point is also a valid scalar prefix though, so it should be
included in the test.

R=caryclark@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339813003

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

8 years agoBundle common arguments to GrGradientEffect creation
brianosman [Wed, 14 Sep 2016 17:03:46 +0000 (10:03 -0700)]
Bundle common arguments to GrGradientEffect creation

I'm going to be adding more (to deal with color spaces), so trying to fix
this before it gets out of control.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332213007

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

8 years agoFix SVG flag iOS linking
fmalita [Wed, 14 Sep 2016 16:05:43 +0000 (09:05 -0700)]
Fix SVG flag iOS linking

TBR=mtklein@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2344533002

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

8 years agoNanobench SVG support
fmalita [Wed, 14 Sep 2016 15:05:17 +0000 (08:05 -0700)]
Nanobench SVG support

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339743002

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

8 years agoRewriting path writer
caryclark [Wed, 14 Sep 2016 14:18:20 +0000 (07:18 -0700)]
Rewriting path writer

The path writer takes constructs the output path out of
curves that satisfy the pathop operation.

Curves contain lists of t/point pairs that may not be
comparable to each other. To match up curve ends in the
output path, look for adjacent curves to have a shared
membership rather than comparing point values.

Use path utilities to connect partial curve lists into
closed contours.

Share the angle code that determines if a curve has become
a degenerate line with the path writer.

Clean up some code on the way, and delete some unused
functions.

TBR=reed@google.com
BUG=5188
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2321973005

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

8 years agoReduce overhead for linear color xforms
msarett [Wed, 14 Sep 2016 14:06:08 +0000 (07:06 -0700)]
Reduce overhead for linear color xforms

We used to build src and dst transfer fn tables
every time a new xform was created with linear
src and dst.  Now we don't compute them because
we don't need them.

This will make SkColorSpaceXform a far better
option for any xforms with float or half-float
inputs or outputs, particularly on a small number
of pixels.

This CL also moves SkColorSpaceXform closer to
what I anticipate will be the eventual 'API design'.
I think apply() will want to take a SrcColorType enum
(not created yet because it's not necessary yet) and
a DstColorType enum (still using SkColorType because
there's not yet a reason not to).

Performance changes:
toSRGB  341us -> 366us
to2Dot2 404us -> 403us
toF16   318us -> 304us

There's no reason for toSRGB or to2Dot2 to change.
The refactor seems to have caused the compiler to
order the instructions a little differently...
This is something to come back to if we need to
squeeze more performance out of sRGB.  For now,
let's not be held up by something we don't control.

F16 likely improves because we are no longer
(unnecessarily) building the linear tables.

Code size gets a little bigger.  Measuring
SkColorSpaceXform size as a percentage of src/ size,
we go from 0.8% to 1.4%.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335723002

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

8 years agoSwitch default for SkGaussianBlurShader radius size.
jvanverth [Wed, 14 Sep 2016 14:04:49 +0000 (07:04 -0700)]
Switch default for SkGaussianBlurShader radius size.

One step towards removing the 6.2 radius entirely.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333403002
TBR=bsalomon@google.com

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

8 years agoGN: Android Vulkan support
mtklein [Wed, 14 Sep 2016 13:12:09 +0000 (06:12 -0700)]
GN: Android Vulkan support

Android's the easiest place to start supporting Vulkan, so it's up first.

ndk_api becomes user-specifiable so that the Vulkan bots can kick it up
to 24, the first release supporting Vulkan.  The defaults remain the same:
18 for 32-bit and 21 for 64-bit, the first release supporting 64-bit.

To test this, I set ndk_api=24 and skia_use_vulkan=true in GN, then
   $ ninja -C out dm; and droid out/dm --config vk --src gm

Seems to work!  Bot scripts to follow.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336343002

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

8 years agoupdate derive_compile_bot_name() for GN_Android_Vulkan
mtklein [Wed, 14 Sep 2016 12:44:31 +0000 (05:44 -0700)]
update derive_compile_bot_name() for GN_Android_Vulkan

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336233005

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

8 years agoAndroid GN scripts: distingush directories for data and binaries.
mtklein [Wed, 14 Sep 2016 12:33:11 +0000 (05:33 -0700)]
Android GN scripts: distingush directories for data and binaries.

This enables data reuse, e.g. https://luci-milo.appspot.com/swarming/task/313eff129c753d10 or https://luci-milo.appspot.com/swarming/task/313f17a174c6c710

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335203004

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

8 years agochange write-image to use pipeverbs like everyone else, and add test
reed [Wed, 14 Sep 2016 00:25:19 +0000 (17:25 -0700)]
change write-image to use pipeverbs like everyone else, and add test

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335973003

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

8 years agore-add SkDebug_stdio for Fuchsia builds
mikejurka [Tue, 13 Sep 2016 23:15:03 +0000 (16:15 -0700)]
re-add SkDebug_stdio for Fuchsia builds

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2331383004

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

8 years agoSimulated fonts aren't TrueType fonts.
bungeman [Tue, 13 Sep 2016 21:03:54 +0000 (14:03 -0700)]
Simulated fonts aren't TrueType fonts.

Some font back-ends provide simulated fonts such as fake bold or fake
oblique. These fonts should not be reported as TrueType, since the font
data isn't what is actually used to draw the glyphs.

BUG=chromium:639198
BUG=chromium:614612
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333423002

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

8 years ago[SVGDom] Linear gradient 'gradientTransform' support
fmalita [Tue, 13 Sep 2016 20:59:05 +0000 (13:59 -0700)]
[SVGDom] Linear gradient 'gradientTransform' support

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339533002

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

8 years agoUpdate gn_android_flavor for Vulkan.
mtklein [Tue, 13 Sep 2016 20:50:09 +0000 (13:50 -0700)]
Update gn_android_flavor for Vulkan.

C.f. https://codereview.chromium.org/2336343002 for basic GN support.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333293004

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

8 years agoNo \n in bench names.
jcgregorio [Tue, 13 Sep 2016 20:27:13 +0000 (13:27 -0700)]
No \n in bench names.

BUG=skia:
R=mtklein
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332153003

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

8 years agoAndroid GN: don't reboot before running
mtklein [Tue, 13 Sep 2016 20:13:54 +0000 (13:13 -0700)]
Android GN: don't reboot before running

We're already rebooting after running, so we should already be ready to go when the task starts.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2334223003

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

8 years ago[SVGDom] Linear gradient 'spreadMethod' support
fmalita [Tue, 13 Sep 2016 19:56:11 +0000 (12:56 -0700)]
[SVGDom] Linear gradient 'spreadMethod' support

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337203002

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

8 years agoRemove clear /data/local/tmp steps.
mtklein [Tue, 13 Sep 2016 18:17:58 +0000 (11:17 -0700)]
Remove clear /data/local/tmp steps.

These were intended to prevent GN and GYP Android bots from stomping on
each other.  Turns out, they don't, even without this... they're writing
most files to completely separate paths:
  - GYP puts most data under $EXTERNAL_STORAGE, generally /sdcard
    and its binaries (libdm.so, libnanobench.so, libskia.so, skia_launcher)
    in /data/local/tmp;
  - GN puts everything under /data/local/tmp, and its binaries (dm, nanobench)
    don't overlap GYP's.

So clearing /data/local/tmp was essentially just removing GN's data; GYP's
data file caching was never affected and can't conflict with GN's.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2340473002

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

8 years agoAdd ContextOptions field to SkCommandLineConfigGpu
csmartdalton [Tue, 13 Sep 2016 17:41:49 +0000 (10:41 -0700)]
Add ContextOptions field to SkCommandLineConfigGpu

Reduces duplicate code by computing the ContextOptions in one spot.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337163002

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

8 years agoUse sk_sp text blob APIs
fmalita [Tue, 13 Sep 2016 17:00:23 +0000 (10:00 -0700)]
Use sk_sp text blob APIs

SkTextBlobBuilder::build()      -> make()
SkAutoTUnref<const SkTextBlob>  -> sk_sp<SkTextBlob>
drawTextBlob(const SkTextBlob*) -> drawTextBlob(const sk_sp<SkTextBlob>&)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335493005

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

8 years agoLots of little cleanup improvements to Vulkan
egdaniel [Tue, 13 Sep 2016 16:54:11 +0000 (09:54 -0700)]
Lots of little cleanup improvements to Vulkan

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336763002

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

8 years agoImplement Fill() for incomplete decodes to RGBA_F16
msarett [Tue, 13 Sep 2016 16:04:11 +0000 (09:04 -0700)]
Implement Fill() for incomplete decodes to RGBA_F16

Before this patch, we would hit an SkASSERT(false).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335203002

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

8 years agoAdd Nexus5 to CQ as an experiment
kjlubick [Tue, 13 Sep 2016 15:48:27 +0000 (08:48 -0700)]
Add Nexus5 to CQ as an experiment

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332353002

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

8 years agoAdd tests for gamma correction of gradient stops to gamma GM
brianosman [Tue, 13 Sep 2016 15:24:56 +0000 (08:24 -0700)]
Add tests for gamma correction of gradient stops to gamma GM

Includes three different cases to exercise different cases in Ganesh.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336973003

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

8 years agoadd pipecanvas
reed [Tue, 13 Sep 2016 15:09:45 +0000 (08:09 -0700)]
add pipecanvas

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2201323003

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

8 years agoSkPDF: SkTypeface_FreeType ToUnicode table improvement.
halcanary [Tue, 13 Sep 2016 15:08:38 +0000 (08:08 -0700)]
SkPDF: SkTypeface_FreeType ToUnicode table improvement.

Currently the SkTypeface_FreeType::onGetAdvancedTypefaceMetrics
synthesized glyph to Unicode mapping returns the Unicode point
of the last character to map to the glyph. In practice it is
better to guess the first character to map to the glyph instead.

BUG=359065
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2329953003

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

8 years agoI missed an infra_step, pushing directories.
mtklein [Tue, 13 Sep 2016 14:20:47 +0000 (07:20 -0700)]
I missed an infra_step, pushing directories.

NOTREECHECKS=true

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337793003

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

8 years agoEncode kIndex8 to PNG more efficiently
msarett [Tue, 13 Sep 2016 14:08:15 +0000 (07:08 -0700)]
Encode kIndex8 to PNG more efficiently

Only write non-opaque alpha values to the tRNS chunk.

BUG=skia:5616
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2330053002

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

8 years agoMark infra steps as infra_step in GN recipe flavors.
mtklein [Tue, 13 Sep 2016 12:49:16 +0000 (05:49 -0700)]
Mark infra steps as infra_step in GN recipe flavors.

NOTREECHECKS=true

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2329943004

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

8 years agoFixup SkRRectsGaussianEdgeShader's shaders
robertphillips [Tue, 13 Sep 2016 00:25:50 +0000 (17:25 -0700)]
Fixup SkRRectsGaussianEdgeShader's shaders

This fixes some visual artifacts in the original CL.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335783003

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

8 years ago[SVGDom] Initial linear gradient support
fmalita [Tue, 13 Sep 2016 00:06:47 +0000 (17:06 -0700)]
[SVGDom] Initial linear gradient support

Kind of a big change, to connect several new bits into something useful:

  * ID tracking & lookup
  * new asPaint() node virtual to support shader (and in the future filter) based paint servers
  * <defs>, <linearGradient> and <stop> element support
  * 'href', 'offset', 'stop-color', 'stop-opacity' attribute support
  * IRI/FuncIRI and rgb(...) parsing

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327233003

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

8 years agoChange shared_sources.gni to use relative path
mikejurka [Mon, 12 Sep 2016 23:51:58 +0000 (16:51 -0700)]
Change shared_sources.gni to use relative path

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333923003

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

8 years agoDisable png encodes from Alpha8, Float16
msarett [Mon, 12 Sep 2016 22:49:37 +0000 (15:49 -0700)]
Disable png encodes from Alpha8, Float16

These don't behave as we would want anyway.  They just copy
to N32, and then encode.

BUG=skia:5616
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332743003

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

8 years agoAlternate approach to turn on freetype in Fuchsia.
mtklein [Mon, 12 Sep 2016 22:15:44 +0000 (15:15 -0700)]
Alternate approach to turn on freetype in Fuchsia.

What do you think of this?  It's basically what you wrote, factored differently.

Flipping on skia_use_freetype will enable the SkFontHost_Freetype*.cpp files
via the :typeface_freetype target.

Then we just pull out the SkFontMgr Fuchsia wants to use into its own little
:fontmgr_fuchsia target.  No major difference here, except the availability
of freetype headers, etc, is a bit more tightly scoped to just those that
need them.

We (obviously?) don't have Fuchsia builders, so I've got to rely on you for sanity testing this.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333913002

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

8 years agoSupport RGBA/BGRA Premul/Unpremul from SkPNGImageEncoder
msarett [Mon, 12 Sep 2016 21:30:03 +0000 (14:30 -0700)]
Support RGBA/BGRA Premul/Unpremul from SkPNGImageEncoder

BUG=skia:5616
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2325223002

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

8 years agoAdd back the GalaxyS3 and GalaxyS4 entries in recipes
borenet [Mon, 12 Sep 2016 21:02:13 +0000 (14:02 -0700)]
Add back the GalaxyS3 and GalaxyS4 entries in recipes

S3 is needed for some recipe simulation stuff and in general having
these present does not hurt us.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336513003

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

8 years agoRemove unused GrGLSLGeometryProcessor::emitTransform variation
bsalomon [Mon, 12 Sep 2016 20:42:18 +0000 (13:42 -0700)]
Remove unused GrGLSLGeometryProcessor::emitTransform variation
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2338453002

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

8 years agoRevert of SkLiteRecorder: don't tell SkCanvas about clips (patchset #1 id:1 of https...
liyuqian [Mon, 12 Sep 2016 20:00:50 +0000 (13:00 -0700)]
Revert of SkLiteRecorder: don't tell SkCanvas about clips (patchset #1 id:1 of https://codereview.chromium.org/2227833004/ )

Reason for revert:
This CL breaks Android CTS tests CanvasStateTests#testClipPathReturnValues, CanvasStateTests#testClipRectReturnValues, and CanvasStateTests#testQuickReject.

Reverting it won't significantly affect Android's performance. See the following test result of testInvalidateTree Jank test. (Derek said that this is the only test closely related to this CL.)

**After reverting**
INSTRUMENTATION_STATUS: gfx-max-slow-draw=0.0
INSTRUMENTATION_STATUS: gfx-max-high-input-latency=0.0
INSTRUMENTATION_STATUS: gfx-max-slow-ui-thread=100.0
INSTRUMENTATION_STATUS: gfx-avg-slow-bitmap-uploads=100.0
INSTRUMENTATION_STATUS: gfx-avg-missed-vsync=72.96467105972435
INSTRUMENTATION_STATUS: gfx-avg-high-input-latency=0.0
INSTRUMENTATION_STATUS: gfx-max-slow-bitmap-uploads=100.0
INSTRUMENTATION_STATUS: gfx-max-missed-vsync=73.56181150550796
INSTRUMENTATION_STATUS: gfx-avg-frame-time-90=69.0
INSTRUMENTATION_STATUS: gfx-avg-frame-time-95=69.0
INSTRUMENTATION_STATUS: gfx-avg-frame-time-99=69.0
INSTRUMENTATION_STATUS: gfx-max-jank=100.0
INSTRUMENTATION_STATUS: gfx-avg-slow-draw=0.0
INSTRUMENTATION_STATUS: gfx-avg-slow-ui-thread=100.0
INSTRUMENTATION_STATUS: gfx-max-frame-time-90=69
INSTRUMENTATION_STATUS: gfx-max-frame-time-95=69
INSTRUMENTATION_STATUS: gfx-max-frame-time-99=69
INSTRUMENTATION_STATUS: gfx-avg-jank=100.0
INSTRUMENTATION_STATUS_CODE: -1
.
Test results for InstrumentationTestRunner=.
Time: 77.404

**Before Reverting**
gfx-max-slow-draw=1.1135857461024499
INSTRUMENTATION_STATUS: gfx-max-high-input-latency=0.0
INSTRUMENTATION_STATUS: gfx-max-slow-ui-thread=100.0
INSTRUMENTATION_STATUS: gfx-avg-slow-bitmap-uploads=100.0
INSTRUMENTATION_STATUS: gfx-avg-missed-vsync=70.79687591131983
INSTRUMENTATION_STATUS: gfx-avg-high-input-latency=0.0
INSTRUMENTATION_STATUS: gfx-max-slow-bitmap-uploads=100.0
INSTRUMENTATION_STATUS: gfx-max-missed-vsync=76.94174757281553
INSTRUMENTATION_STATUS: gfx-avg-frame-time-90=67.66666666666667
INSTRUMENTATION_STATUS: gfx-avg-frame-time-95=67.66666666666667
INSTRUMENTATION_STATUS: gfx-avg-frame-time-99=69.0
INSTRUMENTATION_STATUS: gfx-max-jank=100.0
INSTRUMENTATION_STATUS: gfx-avg-slow-draw=0.5317509395832639
INSTRUMENTATION_STATUS: gfx-avg-slow-ui-thread=100.0
INSTRUMENTATION_STATUS: gfx-max-frame-time-90=69
INSTRUMENTATION_STATUS: gfx-max-frame-time-95=69
INSTRUMENTATION_STATUS: gfx-max-frame-time-99=69
INSTRUMENTATION_STATUS: gfx-avg-jank=100.0
INSTRUMENTATION_STATUS_CODE: -1
.
Test results for InstrumentationTestRunner=.
Time: 77.411

OK (1 test)

Original issue's description:
> SkLiteRecorder: don't tell SkCanvas about clips
>
> If no one reads our clip, and we don't expect quickReject() to help,
> we can probably get away without maintaining a proper clip stack.
>
> This puts us at about 0.6-0.7x of previous record cost.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2227833004
>
> Committed: https://skia.googlesource.com/skia/+/8369e32a05543c2619b1d7e740fe6ff6d2f03af3

TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:

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

8 years agoRemove base class for installed transforms in GrPrimitiveProcessor
bsalomon [Mon, 12 Sep 2016 19:56:58 +0000 (12:56 -0700)]
Remove base class for installed transforms in GrPrimitiveProcessor
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336723002

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

8 years agoGN: Android perf/tests
mtklein [Mon, 12 Sep 2016 19:24:38 +0000 (12:24 -0700)]
GN: Android perf/tests

Just to take inventory of which old problems still linger and which are now moot, I've gone out of my way to have this stand alone.  All of gn_android_flavor's logic is self contained, without any dependency on the platform_tools scripts.

The tricky bits turn out to be, copying directories containing symlinks---or really any copying involving more than one file---and getting the exit code back from adb shell.  Luckily the ADB I've got on my desktop and my Nexus 5x seems to handle this all without the awkward workarounds you see here, so there's hope that One Day Soon the weird parts (basically, anything with inline python) can go away.  Once we've got these bots landed green, I'll go see whether the fixes are due to ADB updates, Android updates, or perhaps something else like hardware.

The parts marked TEMPORARY are a nod to the fact that the devices are used by gn_android_flavor and android_flavor both today.  It's mostly about not stepping on each other's toes or leaving anything laying around that might confuse each other.  The marked parts can go away when bots are either gn_ or non-gn_ but not both.

I have omitted a few steps that may be important, but which are easy independent follow-ups:
  - running as root
  - locking clocks
  - waiting on battery levels
  - fancier wait-for-ready than adb wait-for-usb-device
It'd be nice to, e.g., reaffirm that locking clocks helps perf stability, and that we're locking to the best policy.  I've tried to keep this CL as trim as possible, leaving any of these vaguely optional steps for later.

As of PS 41 or so, it looks like the trybots are all behaving as expected.
We should expect no new images in Gold.  Can we see trybots in Perf yet?

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2320153002

CQ_INCLUDE_TRYBOTS=master.client.skia.android:Perf-Android-Clang-AndroidOne-CPU-MT6582-arm-Debug-GN_Android-Trybot,Perf-Android-Clang-AndroidOne-CPU-MT6582-arm-Release-GN_Android-Trybot,Perf-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Debug-GN_Android-Trybot,Perf-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Release-GN_Android-Trybot,Test-Android-Clang-AndroidOne-CPU-MT6582-arm-Debug-GN_Android-Trybot,Test-Android-Clang-AndroidOne-CPU-MT6582-arm-Release-GN_Android-Trybot,Test-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Debug-GN_Android-Trybot,Test-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Release-GN_Android-Trybot

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

8 years agoGamut transformation of the paint color in Ganesh
brianosman [Mon, 12 Sep 2016 19:07:25 +0000 (12:07 -0700)]
Gamut transformation of the paint color in Ganesh

Conversion from sRGB to destination gamut is going to be very common,
so I'm caching that xform (if there is one) on the draw context.

Results verified in the gamut GM (two more boxes correct).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2330553003

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

8 years agoMatch Android framework's non-AA point and line offset
bsalomon [Mon, 12 Sep 2016 19:07:17 +0000 (12:07 -0700)]
Match Android framework's non-AA point and line offset

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336623002

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

8 years agoAdd shader-based GaussianEdgeShader for reveal case
robertphillips [Mon, 12 Sep 2016 19:02:16 +0000 (12:02 -0700)]
Add shader-based GaussianEdgeShader for reveal case

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2321713004

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

8 years agoRemove GrPrimitiveProcessor::hasTransformedLocalCoords
bsalomon [Mon, 12 Sep 2016 19:02:11 +0000 (12:02 -0700)]
Remove GrPrimitiveProcessor::hasTransformedLocalCoords
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327613002

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

8 years agochange SkStreams to work with sk_sp<SkData> instead of SkData*
reed [Mon, 12 Sep 2016 19:01:44 +0000 (12:01 -0700)]
change SkStreams to work with sk_sp<SkData> instead of SkData*

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2333713002

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

8 years agoFix device cfg for GalaxyS7
borenet [Mon, 12 Sep 2016 18:56:37 +0000 (11:56 -0700)]
Fix device cfg for GalaxyS7

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2330093002

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

8 years agoDocumentation: MSKP
halcanary [Mon, 12 Sep 2016 18:56:28 +0000 (11:56 -0700)]
Documentation: MSKP

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332783002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=2332783002

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

8 years agoAdd workaround for Adreno copyImageToBuffer calls on Vulkan
egdaniel [Mon, 12 Sep 2016 18:51:29 +0000 (11:51 -0700)]
Add workaround for Adreno copyImageToBuffer calls on Vulkan

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2328823003

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

8 years agoRun recipes.py with --timestamps
borenet [Mon, 12 Sep 2016 18:51:26 +0000 (11:51 -0700)]
Run recipes.py with --timestamps

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2330123002

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

8 years agoFix GaussianEdgeShader GLSL code
jvanverth [Mon, 12 Sep 2016 17:09:16 +0000 (10:09 -0700)]
Fix GaussianEdgeShader GLSL code

Implicit conversion of int constants to float is not always
guaranteed

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2328263004
TBR=herbderby@google.com
NOTRY=true
NOTREECHECKS=true

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

8 years agoRemove unneeded GrGLSLTransformedCoordsArray type
bsalomon [Mon, 12 Sep 2016 16:30:36 +0000 (09:30 -0700)]
Remove unneeded GrGLSLTransformedCoordsArray type

Rename GrGLSLFragmentBuilder::ensureFSCoords2D to ensureCoords2D and make it take an arbitrary GrShaderVar.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2324663004

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

8 years agoRevert of Turned on SkSL->GLSL compiler (patchset #12 id:220001 of https://codereview...
ethannicholas [Mon, 12 Sep 2016 16:15:53 +0000 (09:15 -0700)]
Revert of Turned on SkSL->GLSL compiler (patchset #12 id:220001 of https://codereview.chromium.org/2288033003/ )

Reason for revert:
Compilation errors on some bots.

Original issue's description:
> Turned on SkSL->GLSL compiler
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003
>
> Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@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/2337553002

8 years agoRemove unneeded bounds outset in GrDrawContext::drawVertices.
bsalomon [Mon, 12 Sep 2016 16:05:48 +0000 (09:05 -0700)]
Remove unneeded bounds outset in GrDrawContext::drawVertices.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2329403004

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

8 years agoglTexStorage requires sized formats, ensure that we're following that rule
brianosman [Mon, 12 Sep 2016 16:05:14 +0000 (09:05 -0700)]
glTexStorage requires sized formats, ensure that we're following that rule

In some situations (at least ANGLE ES3), we were passing GL_BGRA, rather
than GL_BGRA8.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2336613002

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

8 years agoRemove ability to skip coord transform comparison in pipeline comparison.
bsalomon [Mon, 12 Sep 2016 15:55:38 +0000 (08:55 -0700)]
Remove ability to skip coord transform comparison in pipeline comparison.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2316413003

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

8 years agoSkPDF: refactor & code cleanup ahead of https://crrev.com/2322403002
halcanary [Mon, 12 Sep 2016 15:55:29 +0000 (08:55 -0700)]
SkPDF: refactor & code cleanup ahead of https://crrev.com/2322403002

SkPDFDevice::GraphicStateEntry: remove unnecessary fFont and
fTextSize.

SkPDFDevice::updateFont(): replace with update_font() and inlined
code.  De-duplicate this block of code.

SkPDFResourceDict::GetResourceTypePrefix function made public: removes
need for temporary SkString returned by
SkPDFResourceDict::getResourceName()

GlyphPositioner: delay writing intial matrix until first glyph.
Assert that widechars is a constant.

SkPDFFont::FontType(): make public so that PDFDevice can know about
multibyte status.

SkPDFFont::countStretch() removed, and the stretch loop flattened.

*no changes in PDF output*

BUG=skia:5434
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327953002

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

8 years agoTwo changes:
brianosman [Mon, 12 Sep 2016 15:50:19 +0000 (08:50 -0700)]
Two changes:

1. Remove special premul handling from gamut xform code

Alpha is a constant, so the gamut transformation results remain unchanged
(it distributes across the linear matrix multiply).

2. Use SkMatrix44 rather than array of floats

Preserves semantic intention, and makes upcoming code (where we transform
colors on the CPU by that matrix) simpler.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2329553002

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

8 years agoTurned on SkSL->GLSL compiler
ethannicholas [Mon, 12 Sep 2016 15:50:13 +0000 (08:50 -0700)]
Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

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

8 years agoUpdate SampleAndroidShadows to use algorithm closer to Android OpenGL
jvanverth [Mon, 12 Sep 2016 14:51:04 +0000 (07:51 -0700)]
Update SampleAndroidShadows to use algorithm closer to Android OpenGL

Includes:
* Update light position to be at a similar distance to Android OS
* Scale spot shadows correctly
* Compute stroke shapes and radii correctly
* Allow for larger blur radius for shadows

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2319003003
TBR=reed@google.com
NOTRY=true
NOTREECHECKS=true

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

8 years agohelper to SkRect to create from SkISize
reed [Mon, 12 Sep 2016 13:32:07 +0000 (06:32 -0700)]
helper to SkRect to create from SkISize

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332733002

TBR=
NOTREECHECKS=True
NOTRY=True

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

8 years agocheck for identity in translate
reed [Mon, 12 Sep 2016 13:31:48 +0000 (06:31 -0700)]
check for identity in translate

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2331943002

TBR=
NOTREECHECKS=True
NOTRY=True

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

8 years agofix code behind SK_SUPPORT_LEGACY_MINOR_EFFECT_PTR
reed [Mon, 12 Sep 2016 13:31:05 +0000 (06:31 -0700)]
fix code behind SK_SUPPORT_LEGACY_MINOR_EFFECT_PTR

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337433002

TBR=
NOTREECHECKS=True
NOTRY=True

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

8 years agouse expected name for setDrawLooper/getDrawLooper
reed [Sun, 11 Sep 2016 12:40:31 +0000 (05:40 -0700)]
use expected name for setDrawLooper/getDrawLooper

Needed for future pipe cl.
Next cl should be to guard the looper entirely (since its deprecated)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2326173002

TBR=

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

8 years agoUpdate SKP version
update-skps [Sun, 11 Sep 2016 09:21:46 +0000 (02:21 -0700)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=
NO_MERGE_BUILDS
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2334483002

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

8 years agoSkPDF: SkShaper_primitive uses new textblob API
halcanary [Sat, 10 Sep 2016 14:01:53 +0000 (07:01 -0700)]
SkPDF: SkShaper_primitive uses new textblob API

This will enable me to test the new API in unit tests without
depending on HarfBuzz (after https://crrev.com/2322403002 lands).

TBR=
BUG=skia:5434

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

8 years agoAdds missing and removes duplicate tracing macros.
carlosk [Fri, 9 Sep 2016 23:15:19 +0000 (16:15 -0700)]
Adds missing and removes duplicate tracing macros.

This fixes the missing tracing nested instant call without any arguments and
removes the duplicate of the one with 2 arguments.

This is a follow up on https://crrev.com/2326483004

BUG=645308
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2321283002
NOPRESUBMIT=true
CQ_EXCLUDE_TRYBOTS=client.skia.fyi:skia_presubmit-Trybot

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

8 years agomade point lights linear attenuation; also fixed point light depth bug
vjiaoblack [Fri, 9 Sep 2016 18:58:19 +0000 (11:58 -0700)]
made point lights linear attenuation; also fixed point light depth bug

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2323383002

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

8 years agoSkPDF/Tests: imporve test coverage.
halcanary [Fri, 9 Sep 2016 18:41:59 +0000 (11:41 -0700)]
SkPDF/Tests: imporve test coverage.

Also: make sure that all SkPDF unit tests are named SkPDF_* to
make testing changes to SkPDF easier.  Other cleanup.

Add test: SkPDF_pdfa_document to verify that flag in public API
works.

SkPDF_JpegIdentification test: test slightly malformed JPEGs to
verify that all code paths work.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2322133003

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

8 years agoFix color gamut xform matrices in GPU code
brianosman [Fri, 9 Sep 2016 18:30:55 +0000 (11:30 -0700)]
Fix color gamut xform matrices in GPU code

Now that we're not storing them transposed, we can plumb them to the
shader column-major all the way, and then multiply colors on the right, as
it should be.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2326093002

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

8 years agoGN: port a few missing Android bits from GYP.
mtklein [Fri, 9 Sep 2016 18:07:45 +0000 (11:07 -0700)]
GN: port a few missing Android bits from GYP.

The SK_GAMMA_ defines change text rendering on Android.
This is how they're set in GYP for Android... everyone else is default (sRGB).

Linking AndroidSkDebugToStdOut.o causes SkDebugf to go to both logcat and
stdout on Android.  Without it, it only goes to logcat.  The file has no effect
on non-Android platforms.

BUG=skia:

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

8 years agoFix storage of gamut transform matrices in SkColorSpace
brianosman [Fri, 9 Sep 2016 17:36:17 +0000 (10:36 -0700)]
Fix storage of gamut transform matrices in SkColorSpace

We were effectively storing the transpose, which made all of our
operations on individual colors, and our concatenation of matrices
awkward and backwards.

I'm planning to push this further into Ganesh, where I had incorrectly
adjusted to the previous layout, treating colors as row vectors in the
shaders.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2324843003

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

8 years agoSkip adding coincident edges found
caryclark [Fri, 9 Sep 2016 16:37:57 +0000 (09:37 -0700)]
Skip adding coincident edges found
during curve intersection if their
ends are nearly the same.

Loosen conic/line intersection point
check.

Detect when coincident points are
unordered. This means that points
a/b/c on one curve may appear in
b/c/a order on the opposite curve.

Restructure addMissing to return
success and return if a coincidence
was added as a parameter.

With this, tiger part a works.
Tiger part b exposes bugs around
tight quads that are nearly coincident
with themselves, and are coincident
with something else.

The greedy coicident matcher
may cause the point order to be
out of sync.

Still working out what to do in
this case.

TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2321773002

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

8 years agoAdded in Radial Shadows
vjiaoblack [Fri, 9 Sep 2016 16:22:39 +0000 (09:22 -0700)]
Added in Radial Shadows

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2311223004

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

8 years agoDelete some LUTs from SkColorSpaceXform
msarett [Fri, 9 Sep 2016 14:48:05 +0000 (07:48 -0700)]
Delete some LUTs from SkColorSpaceXform

No need to keep these around.  In the rare case that these are
needed, we can just go ahead and build them.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2326043002

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

8 years agofix fuzzer
caryclark [Fri, 9 Sep 2016 14:41:36 +0000 (07:41 -0700)]
fix fuzzer

Earlier fix aborted coincident loop on wrong condition.
This aborts only when it reaches the end, and then
propagates the error out correctly.

TBR=reed@google.com
BUG=644680, 644684
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327053002

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

8 years agoFix issues in assets scripts
borenet [Fri, 9 Sep 2016 12:37:29 +0000 (05:37 -0700)]
Fix issues in assets scripts

- Delete unconditionally uses 'gsutil'
- args.gsutil not plumbed properly

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2326663002

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

8 years agoSkPDF: implement drawTextBlob()
halcanary [Fri, 9 Sep 2016 12:34:55 +0000 (05:34 -0700)]
SkPDF: implement drawTextBlob()

Pass new fields from https://skia.googlesource.com/skia/+/4f0a23a into
SkPDFDevice::internalDrawText() (a later CL will use
them for /ActualText.

No change in PDF output.

BUG=skia:5434

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2300393002

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

8 years agoSkPDF: hand SfntlyWrapper::SubsetFont() ttcIndex, not fontName.
halcanary [Thu, 8 Sep 2016 22:04:38 +0000 (15:04 -0700)]
SkPDF: hand SfntlyWrapper::SubsetFont() ttcIndex, not fontName.

Also, minor code refactoring.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2258233002

Committed: https://skia.googlesource.com/skia/+/fce190647285423bf36c44bca09db78a6af30f9f
Review-Url: https://codereview.chromium.org/2258233002

8 years agoFix strange failures on Android N
kjlubick [Thu, 8 Sep 2016 20:04:30 +0000 (13:04 -0700)]
Fix strange failures on Android N

We were seeing problems where dm ended with exit code 0, but the step still failed.
It seems they changed what N returns when a thing completes.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2319843003
TBR=bugsbunny

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

8 years agoBenchmarks for testing changes to GrResourceCache replacement policy when over budget.
bsalomon [Thu, 8 Sep 2016 19:35:32 +0000 (12:35 -0700)]
Benchmarks for testing changes to GrResourceCache replacement policy when over budget.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2317263002

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