Commit Graph

16135 Commits

Author SHA1 Message Date
fmalita
93957f4e80 Initial SVG backend stubbing
This adds SkSVGDevice and a small utility for converting SKP files to SVG (skp2svg).

R=reed@google.com,jcgregorio@google.com
BUG=skia:3368

Review URL: https://codereview.chromium.org/892533002
2015-01-30 09:03:29 -08:00
scroggo
1872ad0fe9 Remove unused globalRef/globalUnref.
BUG=skia:1482

Review URL: https://codereview.chromium.org/887993003
2015-01-30 07:34:48 -08:00
halcanary
fc37ad1680 dm: allow multiple --skp flags, allow single files
Review URL: https://codereview.chromium.org/885353002
2015-01-30 07:31:19 -08:00
scroggo
5d2fd4465b Remove unused hasLocalMatrix.
This method is not called anywhere on Android or Chrome, and it
has a FIXME that it may not be correct.

A client can still getLocalMatrix().isIdentity() if they need this
information. (It has the same FIXME, and perhaps we should revisit
it. In the meantime, this convenience method is not needed.)

Review URL: https://codereview.chromium.org/882443007
2015-01-30 07:14:04 -08:00
halcanary
c387966343 documentation: Writing Unit and Rendering Tests
Review URL: https://codereview.chromium.org/885133002
2015-01-30 07:00:42 -08:00
scroggo
803a49dfcf Define SK_OVERRIDE when building for Android framework.
Review URL: https://codereview.chromium.org/868243003
2015-01-30 06:19:44 -08:00
skia.buildbots
f4ee92eebd Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=

Review URL: https://codereview.chromium.org/893513002
2015-01-29 22:57:53 -08:00
herb
e4e01b8608 Start SampleApp documentation
BUG=skia:359

Review URL: https://codereview.chromium.org/883203003
2015-01-29 20:31:04 -08:00
qiankun.miao
06fb35fe07 Remove always true if statement and commented out code in GrBitmapTextContext
BUG=skia:

Review URL: https://codereview.chromium.org/873473008
2015-01-29 18:36:52 -08:00
qiankun.miao
16a3f1758b Clean up commented out code in GrDistanceFieldTextContext
SkCLZ isn't used any more. Just remove it.

BUG=skia:

Review URL: https://codereview.chromium.org/888533004
2015-01-29 18:35:25 -08:00
scroggo
527b28732d Update comment for SkMallocPixelRef::NewWithProc.
Add a comment about using a NULL ReleaseProc.

BUG=skia:2185

Review URL: https://codereview.chromium.org/885573005
2015-01-29 13:52:13 -08:00
reed
c778904a5b share code between arcTo and addArc, update dox
BUG=skia:

Review URL: https://codereview.chromium.org/863123005
2015-01-29 12:59:11 -08:00
fmalita
f9a40723f5 Conservative blob bounds cleanup
* drop SK_SUPPORT_LEGACY_BLOB_BOUNDS
* remove horizontal & fully position tight bounds support (always using
  conservative bounds now)
* special-case horizontal run bounds logic to avoid unnecessary vertical
  min-maxing

R=reed@google.com,mtklein@google.com

Review URL: https://codereview.chromium.org/858153007
2015-01-29 12:24:25 -08:00
reed
f90ea01522 reorg some path routines, preparing to switch arcs to conics
BUG=skia:

Review URL: https://codereview.chromium.org/887783002
2015-01-29 12:03:58 -08:00
mtklein
4f358fc269 Make SkWriter32::snapshotAsData() a dumb copy.
SkWriter32::snapshotAsData() is no longer performance critical.
It's only used when we're serializing to disk.

BUG=skia:2289

Review URL: https://codereview.chromium.org/875403005
2015-01-29 12:03:53 -08:00
scroggo
648238cc90 Remove SkProxyCanvas.
SkProxyCanvas is redundant with SkNWayCanvas, and means another class
we have to keep in sync with the SkCanvas interface.

Remove tests which use an SkProxyCanvas.

Requires a change to chromium.

BUG=skia:3279
BUG=skia:500

Review URL: https://codereview.chromium.org/886813002
2015-01-29 11:58:51 -08:00
scroggo
65df6edf63 SkStream::read() only returns 0 at end.
All implementations behave this way, so respect it.

BUG=skia:2936

Review URL: https://codereview.chromium.org/888703002
2015-01-29 11:58:45 -08:00
reed
19d8f9f173 add new gm for SkPath::addArc()
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/888663002
2015-01-29 10:48:16 -08:00
caryclark
416e394379 remove experimental pixman files
these files have never worked, and contain nother of value

R=reed@google.com

Review URL: https://codereview.chromium.org/890703002
2015-01-29 10:44:35 -08:00
caryclark
17a2b5473d The original instantiation of pathops was in the experimental/Intersection directory. Anything of value has been copied into the mainline.
The obsolete gyp files are also included, along with a pixman test that never functioned but accidentally referenced some of these deleted files.

Review URL: https://codereview.chromium.org/867213004
2015-01-29 10:43:09 -08:00
humper
f75a130c45 enable subpixel text on the subpixel translate sample
BUG=skia:

Review URL: https://codereview.chromium.org/885783006
2015-01-29 10:26:37 -08:00
bsalomon
e702d9743a Use draws instead of clears as temporary workaround for Qualcomm stencil clear bug
Review URL: https://codereview.chromium.org/885863003
2015-01-29 10:07:32 -08:00
caryclark
c7a84fa10a fix bit rotted code to create test font
BUG=skia:3080
R=reed@google.com

Review URL: https://codereview.chromium.org/884873007
2015-01-29 09:59:53 -08:00
jcgregorio
879140da74 Add docs for running docserver locally.
BUG=skia:3346

Review URL: https://codereview.chromium.org/891483002
2015-01-29 09:55:14 -08:00
caryclark
52ee813990 fix parsing SVG strings to paths with comma delimiters
BUG=skia:583
R=reed@google.com

Review URL: https://codereview.chromium.org/885103002
2015-01-29 09:45:44 -08:00
bsalomon
54443932e8 Apply prePathMatrix in SkGpuDevice as view matrix preconcat when possible
BUG=skia:3055

Review URL: https://codereview.chromium.org/886713006
2015-01-29 09:34:18 -08:00
fmalita
5d8388b667 More win64 warning fixes.
TBR=bsalomon@google.com
NOTREECHECKS=true

Review URL: https://codereview.chromium.org/887713002
2015-01-29 07:44:24 -08:00
bsalomon
81aca547ca Fix win64 warnings.
TBR=joshualitt@google.com

NOTREECHECKS=true

Review URL: https://codereview.chromium.org/884253004
2015-01-29 07:13:20 -08:00
mlee
402448d681 skia: blend32_16_row for neon version
This includes blend32_16_row neon implementation
for aarch32 and aarch64.

For performance,
blend32_16_row is called in following tests in nanobench.
 - Xfermode_SrcOver
 - tablebench
 - rotated_rects_bw_alternating_transparent_and_opaque_srcover
 - rotated_rects_bw_changing_transparent_srcover
 - rotated_rects_bw_same_transparent_srcover
 - luma_colorfilter_large
 - luma_colorfilter_small
 - chart_bw

I can see perf increase in following two tests, especially. For others, looks
similar.
For each, I tried to run two times.

1) Xfermode_SrcOver
<org>
 - D/skia    ( 2000):    3M        57      17.3µs  17.4µs  17.4µs  17.7µs  1%
  █▃▂▃▂▂▂▁▃▂      565     Xfermode_SrcOver
 - D/skia    ( 1915):    3M        70      13.5µs  16.9µs  16.7µs  18.8µs  9%
  ▆█▄▅█▁▅▅▆▄      565     Xfermode_SrcOver

<new>
 - D/skia    ( 2000):    3M        8       11.6µs  11.8µs  12.1µs  14.4µs  7%
  ▃█▁▁▂▁▁▁▂▂      565     Xfermode_SrcOver
 - D/skia    ( 2004):    3M        62      10.3µs  12.9µs  13µs    15.2µs  11%
  █▅▅▆▁▅▅▅▇▃      565     Xfermode_SrcOver

2)
luma_colorfilter_large
<org>
 - D/skia    ( 2000):  159M        8       136µs   136µs   136µs   139µs   1%
  █▃▁▂▁▁▁▁▁▁      565     luma_colorfilter_large
 - D/skia    ( 1915):  158M        2       135µs   177µs   182µs   269µs   22%
  ▆▃█▁▁▃▃▃▃▃      565     luma_colorfilter_large

<new>
 - D/skia    ( 2000):  157M        5       84.2µs  85.3µs  87.5µs  110µs   9%
  █▁▂▁▁▁▁▁▁▁      565     luma_colorfilter_large
 - D/skia    ( 2004):  159M        6       84.7µs  110µs   112µs   144µs   18%
  █▄▇▁▁▄▃▄▄▆      565     luma_colorfilter_large

Review URL: https://codereview.chromium.org/847363002
2015-01-29 06:22:41 -08:00
robertphillips
9cc2f2613a Revert of Add device space "nudge" to gpu draws (patchset #5 id:70001 of https://codereview.chromium.org/877473005/)
Reason for revert:
Chrome pixel test :(

Original issue's description:
> Add device space "nudge" to gpu draws
>
> This CL nudges all the GPU draws and clips slightly to match raster's round behavior for BW draws. We assume the effect will be negligible and do it for AA draws too.
>
> BUG=423834
>
> Committed: https://skia.googlesource.com/skia/+/2d55d07501c56310f97d2092d789a2bc9fa01b78

TBR=bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=423834

Review URL: https://codereview.chromium.org/890433003
2015-01-28 17:37:33 -08:00
robertphillips
e79d7b7929 Revert of Remove 'f' from 0.05f in shader code (patchset #1 id:1 of https://codereview.chromium.org/888483002/)
Reason for revert:
Chrome pixel test

Original issue's description:
> Remove 'f' from 0.05f in shader code
>
> TBR=bsalomon@google.com
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://skia.googlesource.com/skia/+/1726997861fac8daa8213d1a51d5c8fbe44428d1

TBR=bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/890433002
2015-01-28 17:33:45 -08:00
mtklein
f4ba3219c2 Revert of DM::SKPSrc::size() reports correct size. (patchset #3 id:40001 of https://codereview.chromium.org/863243005/)
Reason for revert:
Still no good on Chrome OS bot:

http://build.chromium.org/p/client.skia/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/628/steps/dm/logs/stdio

Original issue's description:
> DM::SKPSrc::size() reports correct size.
>
> Also, DM::GPUSink and DM::RasterSink crop DM::Src::size() to 2048x2048.
>
> Motivation:
>   Improve PDF testing by printing the entire SKP.
>
> Source: http://crrev.com/863243004
>
> BUG=skia:3365
>
> Committed: https://skia.googlesource.com/skia/+/441b10eac09a1f44983e35da827a6b438a409e63
>
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Release-Trybot,Test-ChromeOS-Alex-GMA3150-x86-Release-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/d4dd58e43ca4551531ad6a9f54bfc5632ea45a80

TBR=halcanary@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3365

Review URL: https://codereview.chromium.org/886543005
2015-01-28 15:32:24 -08:00
robertphillips
1726997861 Remove 'f' from 0.05f in shader code
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/888483002
2015-01-28 15:19:53 -08:00
robertphillips
2d55d07501 Add device space "nudge" to gpu draws
This CL nudges all the GPU draws and clips slightly to match raster's round behavior for BW draws. We assume the effect will be negligible and do it for AA draws too.

BUG=423834

Review URL: https://codereview.chromium.org/877473005
2015-01-28 14:41:57 -08:00
hcm
45453c2acf authors update- add herb and reorganize
BUG=skia:

TBR=reed@google.com

NOTRY=true

Review URL: https://codereview.chromium.org/881993002
2015-01-28 14:16:43 -08:00
herb
f8dd0765c0 Make char hash dynamic when needed.
BUG=skia:

Review URL: https://codereview.chromium.org/880383002
2015-01-28 14:12:12 -08:00
mtklein
d4dd58e43c DM::SKPSrc::size() reports correct size.
Also, DM::GPUSink and DM::RasterSink crop DM::Src::size() to 2048x2048.

Motivation:
  Improve PDF testing by printing the entire SKP.

Source: http://crrev.com/863243004

BUG=skia:3365

Committed: https://skia.googlesource.com/skia/+/441b10eac09a1f44983e35da827a6b438a409e63

CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu12-ShuttleA-GTX660-x86-Release-Trybot

Review URL: https://codereview.chromium.org/863243005
2015-01-28 13:59:42 -08:00
reed
40dab98de1 Use murmur3 finisher to improve font hash efficiency.
Add dump() method to inspect glyphcache strikes.

Murmur addition improves hash efficient roughly 50%

BUG=skia:

Review URL: https://codereview.chromium.org/877113002
2015-01-28 13:28:53 -08:00
sugoi
6af314724f Fixed clusterfuzz issue
BUG=448423

Review URL: https://codereview.chromium.org/881423002
2015-01-28 13:15:32 -08:00
jvanverth
5a3d92fca1 Use distance fields for glyphs > 256 pt, before switching to paths.
BUG=452313

Review URL: https://codereview.chromium.org/862403004
2015-01-28 13:08:41 -08:00
joshualitt
4d8da81562 GrBatchPrototype
BUG=skia:

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

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

Review URL: https://codereview.chromium.org/845103005
2015-01-28 12:53:54 -08:00
mtklein
52f401ee7b Revert of DM::SKPSrc::size() reports correct size. (patchset #1 id:1 of https://codereview.chromium.org/863243005/)
Reason for revert:
OOM on 32-bit machines.

Original issue's description:
> DM::SKPSrc::size() reports correct size.
>
> Also, DM::GPUSink and DM::RasterSink crop DM::Src::size() to 2048x2048.
>
> Motivation:
>   Improve PDF testing by printing the entire SKP.
>
> Source: http://crrev.com/863243004
>
> BUG=skia:3365
>
> Committed: https://skia.googlesource.com/skia/+/441b10eac09a1f44983e35da827a6b438a409e63

TBR=halcanary@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3365

Review URL: https://codereview.chromium.org/884743003
2015-01-28 12:04:08 -08:00
halcanary
fd4a993f8b DM::PDFSink::draw excercises multi-page pdf
BUG=skia:3365

Review URL: https://codereview.chromium.org/881343002
2015-01-28 11:45:58 -08:00
reed
9d91eb3136 add more checks for computing clamp counts, remove dead code
BUG=448299

Review URL: https://codereview.chromium.org/886473003
2015-01-28 11:44:48 -08:00
bsalomon
3bd12efdcf Fix wrapped content keys for npot textures.
Review URL: https://codereview.chromium.org/879193002
2015-01-28 11:39:48 -08:00
mtklein
9c3f17d6e8 Fold gmtoskp into DM, as --src gm --config skp.
BUG=skia:

Review URL: https://codereview.chromium.org/885733002
2015-01-28 11:35:18 -08:00
mtklein
441b10eac0 DM::SKPSrc::size() reports correct size.
Also, DM::GPUSink and DM::RasterSink crop DM::Src::size() to 2048x2048.

Motivation:
  Improve PDF testing by printing the entire SKP.

Source: http://crrev.com/863243004

BUG=skia:3365

Review URL: https://codereview.chromium.org/863243005
2015-01-28 11:12:25 -08:00
joshualitt
5ce33c17af dstread gm
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/883053002
2015-01-28 11:08:01 -08:00
senorblanco
772604c214 Add a flag to flush the canvases during SkMultiPictureDraw::draw().
This is necessary for multisampling, so that each multisampled render
target resolves before Chrome's compositor attempts to draw the
texture.

BUG=skia:

Review URL: https://codereview.chromium.org/878653004
2015-01-28 11:01:06 -08:00
fmalita
3dc40ac9f9 Conservative SkTextBlob bounds.
Compute cheaper/more conservative text blob bounds based on the typeface
maximum glyph bbox.

BUG=chromium:451401
R=reed@google.com,bungeman@google.com

Review URL: https://codereview.chromium.org/886473002
2015-01-28 10:56:06 -08:00