Commit Graph

24576 Commits

Author SHA1 Message Date
drott
1c7805bb1c Remove restrictive format pattern for Fontconfig matching
This pattern pushes CFF fonts too far low in the list. Instead
it is enough to rely on the isValidPattern function to skip
Type 1 fonts.

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

Review-Url: https://codereview.chromium.org/2410063002
2016-10-11 09:03:46 -07:00
ethannicholas
ccb1dd8f26 Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c
Review-Url: https://codereview.chromium.org/2288033003
2016-10-11 08:47:06 -07:00
Robert Phillips
568c98606f Add new GM to demonstrates SkGaussianEdgeShader
This would've caught the incorrect distances in the center bug

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

Change-Id: I9461a8865b561cc139a18a5e779e933d7979ee0d
Reviewed-on: https://skia-review.googlesource.com/3111
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2016-10-11 15:46:59 +00:00
mtklein
4824cf4c1e Revert of Turned on SkSL->GLSL compiler (patchset #48 id:1220001 of https://codereview.chromium.org/2288033003/ )
Reason for revert:
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/26798

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
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
> Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
> Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@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/2408053002
2016-10-10 19:41:32 -07:00
lsalzman
9d2b0fea05 fix 'GrClip::quickContains was hidden' warning in GrNoClip
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394113002

Review-Url: https://codereview.chromium.org/2394113002
2016-10-10 15:36:24 -07:00
Mike Klein
3831242a33 GN: build dump_record
BUG=skia:

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

Change-Id: I447ef9a880e5b13103bac76d41e176c7940c8512
Reviewed-on: https://skia-review.googlesource.com/3021
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-10 21:44:18 +00:00
borenet
7535867371 More fixes for webpages_playback
BUG=skia:5843
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2409753002

Review-Url: https://codereview.chromium.org/2409753002
2016-10-10 13:20:49 -07:00
scroggo
ff9f7bbef6 Simplify rowsDecoded returned by incrementalDecode
When sampling, we previously had to figure out the number of rows that
were written to the output based on the value reported by
incrementalDecode. (We also messed up the first time - see the fix in
crrev.com/2343153003.)

Instead, make incrementalDecode report the actual number of rows
written to. This can be provided directly to fill.

Make SkPngCodec report the correct number of rows, by incrementing its
count when it actually writes to the destination.

This also will simplify my in progress GIF change.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2407543002

Review-Url: https://codereview.chromium.org/2407543002
2016-10-10 11:35:01 -07:00
borenet
76bcd4f189 RecreateSKPs: Don't download and use the .boto file
It's not needed for the new bucket.

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

Review-Url: https://codereview.chromium.org/2408793002
2016-10-10 10:37:30 -07:00
borenet
e178818894 Specify the Android build number as a swarming dimension
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2403103002

Review-Url: https://codereview.chromium.org/2403103002
2016-10-10 10:17:49 -07:00
ethannicholas
dcfe6dba4a Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
Review-Url: https://codereview.chromium.org/2288033003
2016-10-10 10:09:00 -07:00
Robert Phillips
95304e395c Update AndroidShadows slide with new stroking offset
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3080

Change-Id: I0a60e99b357f930a5215201d8bb8b5f3c91819b1
Reviewed-on: https://skia-review.googlesource.com/3080
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2016-10-10 16:32:26 +00:00
jvanverth
15341a284e Revert of Turned on SkSL->GLSL compiler (patchset #47 id:1200001 of https://codereview.chromium.org/2288033003/ )
Reason for revert:
Looks like it introduces new static initializers, and it's failing the Chrome roll.

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
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
> Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@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/2403083002
2016-10-10 09:18:23 -07:00
Brian Osman
e75c19f638 Update comment, move constant inside helper struct
BUG=skia:

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

Change-Id: Ife8a2434ff591bd77be1cd0fbcce50430e18c86c
Reviewed-on: https://skia-review.googlesource.com/3109
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-10 15:47:05 +00:00
borenet
1cebf7b450 webpages_playback: Fix GS path with extra '/'
BUG=skia:5843
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2409593002

Review-Url: https://codereview.chromium.org/2409593002
2016-10-10 08:14:11 -07:00
stephana
f79d6a1a2b Add description to Gold
BUG=skia:
R=hcm,jcgregorio
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2406753002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=2406753002

Review-Url: https://codereview.chromium.org/2406753002
2016-10-10 07:59:08 -07:00
jvanverth
38c7215157 Fix iOS surface creation for SampleApp
BUG=skia:5810
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394843003
TBR=bsalomon@google.com

Review-Url: https://codereview.chromium.org/2394843003
2016-10-10 07:39:38 -07:00
Mike Klein
42f4b42e83 Revert "SkRasterPipeline: 8x pipelines, attempt 2"
This reverts commit Id0ba250037e271a9475fe2f0989d64f0aa909bae.

crbug.com/654213 
Looks like Chrome Canary's picking up Haswell code on non-Haswell machines.

Change-Id: I16f976da24db86d5c99636c472ffad56db213a2a
Reviewed-on: https://skia-review.googlesource.com/3108
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-10 14:32:01 +00:00
scroggo
e61b3b4018 Report 0 rowsDecoded for no rows (SkPngCodec interlaced)
incrementalDecode is supposed to report the number of rows decoded. It
failed to if none were decoded (for an interlaced png). Fix the bug and
add a test.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2402063002

Review-Url: https://codereview.chromium.org/2402063002
2016-10-10 07:17:32 -07:00
scroggo
c46cdd48eb Fix an assert statement in SkPngCodec
allRowsCallback was asserting that
    rowNum - fFirstRow == fLinesDecoded

But it was expecting fFirstRow to be 0 (logically, it is, since we are
decoding all rows), and it never set it (because it doesn't really need
to, except for this assert). This is only a problem if we reuse an
SkPngCodec after previously scaling with it. Add a test that triggers
the assert, and fix it.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2401133002

Review-Url: https://codereview.chromium.org/2401133002
2016-10-10 06:45:33 -07:00
Joe Gregorio
bc4cc336d5 Update Perf docs and add a couple screenshots.
BUG=skia:

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

Change-Id: Ic2d1743b2dc42701202ff316277db4c944d969d3
Reviewed-on: https://skia-review.googlesource.com/3121
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2016-10-10 13:42:06 +00:00
ethannicholas
08b2ccf398 Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Review-Url: https://codereview.chromium.org/2288033003
2016-10-10 06:40:24 -07:00
Brian Osman
3f748606d8 Convert gradient params test helper to a struct
Much less copy-pasted code, fewer implementation details leaking out,
and going to be easier to extend for 4f and color space testing.

BUG=skia:

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

Change-Id: Icc468c606aa35fbe82c64bcc398e7e348e0faa20
Reviewed-on: https://skia-review.googlesource.com/2900
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-10 13:17:35 +00:00
borenet
644638c037 webpages_playback: use gsutil instead of API, no shell_utils
BUG=skia:5843
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2406863002

Review-Url: https://codereview.chromium.org/2406863002
2016-10-10 05:57:18 -07:00
borenet
0a8f702c6b Roll recipe DEPS
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2402313002

Review-Url: https://codereview.chromium.org/2402313002
2016-10-10 04:51:02 -07:00
caryclark
0871401538 fix another fuzz
Add one more early exit.

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

Review-Url: https://codereview.chromium.org/2401673004
2016-10-07 12:57:47 -07:00
caryclark
221a4bb55b fix fuzz busters
When fuzz is hit
just quit

TBR=reed@google.com
BUG=skia:5837, skia:5838, skia:5839
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2404483002

Review-Url: https://codereview.chromium.org/2404483002
2016-10-07 11:15:16 -07:00
Mike Klein
a71e151c6f SkRasterPipeline: 8x pipelines, attempt 2
Original review here: https://skia-review.googlesource.com/c/2990/

Changes since:
  - simpler implementations of load_tail() / store_tail(): slower, but more obviously correct to all compilers
  - fleshed out math ops on Sk8i and Sk8u to make unit tests happy on -Fast bot (where we always have AVX2)
  - now storing stage functions as void(*)() to avoid undefined behavior and/or linker problems.  This restores 32-bit Windows.
  - all AVX2 Sk8x methods are marked always-inline, to avoid linking the "wrong" version on Debug builds.

CQ_INCLUDE_TRYBOTS=master.client.skia:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-GN,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot;master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-Trybot

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

Change-Id: Id0ba250037e271a9475fe2f0989d64f0aa909bae
Reviewed-on: https://skia-review.googlesource.com/3064
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-07 16:28:16 +00:00
senorblanco
49df8d17c5 GrTessellator: refactor Line out of Edge.
There are cases where we need only a line equation, and not a full
Edge. Create a Line struct for this, and refactor Edge to use it.

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

Review-Url: https://codereview.chromium.org/2397963003
2016-10-07 08:36:56 -07:00
Ben Wagner
55865a26bf Whitespace change to kick build. 2016-10-07 10:30:01 -04:00
jvanverth
6ca4882040 Reduce geometry size for circles to help fill rate.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2391133004

Review-Url: https://codereview.chromium.org/2391133004
2016-10-07 06:57:32 -07:00
stephana
7fbacbb1e8 Disable svgs on nanobench when running on Valgrind
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2398173002

Review-Url: https://codereview.chromium.org/2398173002
2016-10-07 06:36:17 -07:00
Mike Klein
9428587748 Revert "SkRasterPipeline: 8x pipelines"
This reverts commit I1c82e5755d8e44cc0b9c6673d04b117f85d71a3a.

Reason for revert: lots of failing bots.

TBR=mtklein@chromium.org,msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I653bed3905187f43196504f19424985fa2a765b5
Reviewed-on: https://skia-review.googlesource.com/3063
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-07 13:16:54 +00:00
Robert Phillips
3786c7716c Disable antialiasing on interior of filled RRects that need distance vectors
The interior antialiasing was causing a small transparent rectangle in the middle of filled rects

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

Change-Id: If0bf26b96c8969af6d81f3a3d6fee59e8c1d747e
Reviewed-on: https://skia-review.googlesource.com/3062
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2016-10-07 13:09:23 +00:00
Mike Klein
1aebdaee0e SkRasterPipeline: 8x pipelines
Bench runtime changes:
sRGB: 7194 -> 3735  = 1.93x faster 
F16:  6531 -> 2559  = 2.55x faster

Instead of building 4x and 1-3x pipelines and then maybe 8x and 1-7x, instead build either the short ones or the long ones, but not both.  If we just take care to use a compatible run_pipeline(), there's some cross-module type disagreement but everything works out in the end.

Oddly, a few places that looked like they'd be faster using SkNx_fma() or Sk4f_round()/Sk8f_round() are actually faster the long way, e.g. multiply, add 0.5, truncate.  Curious!  In all the other places you see here that I've used SkNx_fma(), it's been a significant speedup.

This folds in a couple refactors and cleanups that I've been meaning to do.  Hope you don't mind... if find the new code considerably easier to read than the old code.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2990
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I1c82e5755d8e44cc0b9c6673d04b117f85d71a3a
Reviewed-on: https://skia-review.googlesource.com/2990
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-07 12:52:29 +00:00
fmalita
2766cc567d Assorted Android fixes
Ran into these while trying to follow https://skia.org/user/quick/android.

R=reed@google.com,djsollen@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2395273002

Review-Url: https://codereview.chromium.org/2395273002
2016-10-06 14:37:24 -07:00
Ben Wagner
388faa0fb9 Auto re-gen for gn cmake generator.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3028

Change-Id: I73c6ce9e852c280bbb2017c30717809b4cb44046
Reviewed-on: https://skia-review.googlesource.com/3028
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2016-10-06 21:12:21 +00:00
Robert Phillips
79839d45f8 Add distance values to interior of filled RRects
This doesn't compute the correct distance vector but it suffices for gaussian edges.

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

Change-Id: I8bd9e37b0f3788c30d85c95a3c0845d093f22554
Reviewed-on: https://skia-review.googlesource.com/2986
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2016-10-06 19:42:34 +00:00
fmalita
d87bd7cfd1 Harden SkPicturePlayback::handleOp() skips
SkValidatingReadBuffer::skip() may return null - tread more carefully
around it.

BUG=skia:5828
R=reed@google.com,mtklein@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2399043002

Review-Url: https://codereview.chromium.org/2399043002
2016-10-06 12:09:50 -07:00
Greg Daniel
e897b97471 Fix Vulkan orientation during screne rotations
This will fix the Vulkan orientation when the screen is rotated by having
the compositor do the corrections for us. However, it is suggested in the
Android Vulkan docs that for power reasons it may be better for the app
to get the needed rotation off of the VkAndroidSurface and then manually
adjust for this rotation in the rendering without the compositor doing any
corrections. This is something we can look into a later date as it would
require sending some info back from the VulkanWindowContext back to Skia
about what Matrix should be applied.

BUG=skia:

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

Change-Id: I4d3d620ffcc77e607fce8d06b869c2912a61400c
Reviewed-on: https://skia-review.googlesource.com/3052
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2016-10-06 18:57:23 +00:00
Herb Derby
1356978f15 Fix SkDeferredCanvas for use on android.
BUG=skia:

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

Change-Id: Ie55023257736a12360a233d01096462ba2eb3e74
Reviewed-on: https://skia-review.googlesource.com/3030
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-10-06 18:52:32 +00:00
caryclark
8f18643867 remove sprintf
Most uses of sprintf are
in pathops testing.

Replace them with
SkString::appendf

and replace the remaining
with snprintf

R=scroggo@google.com
BUG=skia:2716
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2391133005

Review-Url: https://codereview.chromium.org/2391133005
2016-10-06 11:46:25 -07:00
Mike Klein
33cbfd75af Make load4 and store4 part of SkNx properly.
Every type now nominally has Load4() and Store4() methods.
The ones that we use are implemented.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3046
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I7984f0c2063ef8acbc322bd2e968f8f7eaa0d8fd
Reviewed-on: https://skia-review.googlesource.com/3046
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-06 17:13:59 +00:00
Cary Clark
40f23780e7 fuzzer fix
Error out when fuzzing
conditions are met.

Also, make degenerate
input line ends consistent.

TBR=reed@google.com
BUG=653452, 626164, skia:5829

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

Change-Id: I23a01adde9dec07b54d66ab2418b3ea0b96e4456
Reviewed-on: https://skia-review.googlesource.com/3048
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2016-10-06 16:22:51 +00:00
reed
b55ebf071d fix other printf warning for SkBlendMode
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2393253003

Review-Url: https://codereview.chromium.org/2393253003
2016-10-06 07:14:39 -07:00
caryclark
f114a9bb4e fix mac all build
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394943002

Review-Url: https://codereview.chromium.org/2394943002
2016-10-06 07:06:00 -07:00
xidachen
6069ddabd8 Fix SkPath::arcTo when sweepAngle is tiny and radius is big
In this function, it first check whether this arc is a lone point
or not. If not, it converts angles to unit vectors. The problem
here is that when the radius is huge and the sweepAngle is small,
the function angles_to_unit_vectors() could return a startV ==stopV.
When that happens, it will draw a dot at the point that corresponding
to the startAngle. This CL adds a special branch for this case, and
draw a connecting line between the points at startAngle and endAngle.

BUG=640031, skia:5807
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2388833002

Review-Url: https://codereview.chromium.org/2388833002
2016-10-06 05:42:23 -07:00
Mike Reed
d207884bf5 fix printf warning in dumpcanvas
BUG=skia:

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

Change-Id: I850609e499a670cda0fd09941345fe221fbeeffb
Reviewed-on: https://skia-review.googlesource.com/3040
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2016-10-06 02:34:59 +00:00
reed
374772bd61 Revert[8] "replace SkXfermode obj with SkBlendMode enum in paints"
This reverts commit c245574ba3.

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

TBR=

Review-Url: https://codereview.chromium.org/2396953002
2016-10-05 17:33:03 -07:00
caryclark
61c21cdcc3 tight bounds optimization
Add support for tight bounds to detect and return moveTo
followed by close or zero-length lineTo.

Also short circuit so that hard work is avoided when
the path bounds is also the tight bounds.

Avoid doing work if the bounds can be trivially computed.
Include naked moveTo coordinates in the tight bounds.

R=fmalita@chromium.org
BUG=skia:5555, skia:5553
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394443004

Review-Url: https://codereview.chromium.org/2394443004
2016-10-05 13:23:00 -07:00