Commit Graph

678 Commits

Author SHA1 Message Date
scroggo@google.com
74b7ffda68 Fixes for piping bitmaps with encoded data.
Similar goals as https://codereview.chromium.org/14437012.

Builds on patch set 1 from that issue
(https://codereview.chromium.org/14437012/#ps1).

Instead of the changes in patch set 2 from that issue, this
changes SkOrderedWriteBuffer::writeBitmap to store whether an
SkBitmapHeap was used when to store the index of the SkBitmap.
SkOrderedReadBuffer::readBitmap now uses that information to
distinguish between using the heap and unflattening.

In addition, writeBitmap now records the width/height first in
all cases. If now SkBitmapHeapReader is attached, but an
SkBitmapHeap was used to record the bitmap, reading will fail
and provide the same red SkBitmap as in the case where the
SkBitmap was encoded but could not be decoded.

Updates the PICTURE_VERSION as well.

The key differences in this CL to look at are in:
SkOrderedWriteBuffer,
SkOrderedReadBuffer,
and SkPicture.

BUG=
R=djsollen@google.com

Review URL: https://codereview.chromium.org/14230022

git-svn-id: http://skia.googlecode.com/svn/trunk@8917 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-30 02:32:41 +00:00
robertphillips@google.com
6f5abddf89 add 90 degree test case to rects GM
https://codereview.chromium.org/13844017/



git-svn-id: http://skia.googlecode.com/svn/trunk@8911 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-29 17:44:45 +00:00
epoger@google.com
0cc99cf793 GM self-tests: always run all tests (don't stop at first failure)
and make rebaseline.sh rebaseline all tests in one go.
(RunBuilders:Skia_PerCommit_House_Keeping)

Review URL: https://codereview.chromium.org/13979017

git-svn-id: http://skia.googlecode.com/svn/trunk@8881 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-26 17:45:06 +00:00
epoger@google.com
76c913db20 GM: specify that currently used checksums are CityHashes of SkBitmaps
(distinct from other hash algorithms we may switch to, or hashes of
files such as PDFs that cannot be read into an SkBitmap)

Review URL: https://codereview.chromium.org/14284018

git-svn-id: http://skia.googlecode.com/svn/trunk@8877 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-26 15:06:44 +00:00
caryclark@google.com
45a75fb4d0 path ops : make it real
Add an option to SkCanvas to turn on path
ops when combining clips. 

Allow Op() to use one of the input paths
as an output path.

Fix a bug in Op() when the minuend is empty
and the subtrahend is not (for difference).

Change the build to allow core to depend on pathops.
Review URL: https://codereview.chromium.org/14474002

git-svn-id: http://skia.googlecode.com/svn/trunk@8855 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 13:34:40 +00:00
commit-bot@chromium.org
9711e44667 Move MMap to SkData.
R=reed@google.com

Author: bungeman@google.com

Review URL: https://chromiumcodereview.appspot.com/14336003

git-svn-id: http://skia.googlecode.com/svn/trunk@8848 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 20:03:00 +00:00
scroggo@google.com
58104a9c25 Treat default command line argument properly.
In SkCommandLineFlags, if the client sets a default value
of multiple arguments (e.g. "arg0 arg1 ..."), set
the actual defaults to all of those arguments separately
(i.e. an array with [0] == "arg0", [1] == "arg1", ...),
rather than as one string (i.e. [0] == "arg0 arg1 ...").

Remove the hack that worked around this bug.

Also move the increasingly complicated implementation of
SkFlagInfo::CreateStringFlag into the cpp file.

BUG=https://code.google.com/p/skia/issues/detail?id=1237

Review URL: https://codereview.chromium.org/14366034

git-svn-id: http://skia.googlecode.com/svn/trunk@8845 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 19:25:26 +00:00
reed@google.com
5111648cef show fontstyle values for each style
git-svn-id: http://skia.googlecode.com/svn/trunk@8843 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 19:14:39 +00:00
bsalomon@google.com
dd8e353bef Add option to specify defaults configs to --config flag in gm. This makes it easier to run gm defaults configs with a delta. Also make ~ exclude a config.
Review URL: https://codereview.chromium.org/13842014

git-svn-id: http://skia.googlecode.com/svn/trunk@8842 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 18:07:11 +00:00
edisonn@google.com
d9dfa18372 Encode images with DCTDecode (JPEG) in PDFs if it makes sense. Fallback to FlateDecode (zip) if it makes sense. Otherewise include uncompressed stream.
This change will reduce the size of PDFs to 50% (in the case of the existing SKPs, we reduce the total size of PDFs from 105MB to 50MB) 
Review URL: https://codereview.appspot.com/7068055

git-svn-id: http://skia.googlecode.com/svn/trunk@8835 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 13:01:01 +00:00
scroggo@google.com
b7dbf633a6 Fix an SkCommandLineFlags bug.
Previously I was storing an SkTDArray of const char*,
which fails if the strings go out of scope.

Instead, store an SkTArray of SkString, and copy the
strings, so we do not depend on the strings sticking
around. Using an SkTArray because it is smart enough
to call the destructors, so the copies can be destroyed
on program exit.

BUG=https://code.google.com/p/skia/issues/detail?id=1237

Review URL: https://codereview.chromium.org/14414008

git-svn-id: http://skia.googlecode.com/svn/trunk@8829 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 15:38:09 +00:00
skia.committer@gmail.com
e36a168d13 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8819 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 07:01:29 +00:00
caryclark@google.com
4eedae6f72 path ops -- crap, I checked in the wrong file
this has the changes Brian suggested

git-svn-id: http://skia.googlecode.com/svn/trunk@8812 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-22 20:12:47 +00:00
commit-bot@chromium.org
a534b84237 Add new roundrect GM
R=bsalomon@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/14348022

git-svn-id: http://skia.googlecode.com/svn/trunk@8806 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-22 18:05:19 +00:00
caryclark@google.com
7dfbb0720a path ops : add support for inverse fill
add inverse fill, reverse diff, and gm tests
cleaned up some interfaces
Review URL: https://codereview.chromium.org/14371011

git-svn-id: http://skia.googlecode.com/svn/trunk@8798 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-22 14:37:05 +00:00
jvanverth@google.com
051be8e062 Fix for segmentation fault in xfermodes2 GM.
Reviewed offline by bsalomon.


git-svn-id: http://skia.googlecode.com/svn/trunk@8766 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-19 13:59:52 +00:00
skia.committer@gmail.com
cb6dc75228 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8759 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-19 07:01:00 +00:00
reed@google.com
f707adc4f8 augmenting fix in 8700 and 8701, be careful NOT to "sort" the result of mapRect
when we only want to proceed if the matrix is nearly identity. Hence we manually
apply the matrix to the two "points" of the rect.



git-svn-id: http://skia.googlecode.com/svn/trunk@8743 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-18 15:37:14 +00:00
jvanverth@google.com
cabd0ed14f Reset shader in ovals GM
Not resetting the shader for the paints produces interesting 
results on the following configs...

Review URL: https://codereview.chromium.org/13947042/


git-svn-id: http://skia.googlecode.com/svn/trunk@8740 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-18 14:48:35 +00:00
jvanverth@google.com
8e2962fbb5 Add a GM to test ovals with a variety of paint settings, matrices and sizes.
Review URL: https://codereview.chromium.org/14329008/


git-svn-id: http://skia.googlecode.com/svn/trunk@8737 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-18 13:59:04 +00:00
skia.committer@gmail.com
cbbdab5513 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8732 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-18 07:01:48 +00:00
bsalomon@google.com
8c463b02d9 Add xfermodes2 GM. Tests all xfer modes with two gradient bitmaps
Review URL: https://codereview.chromium.org/13912017

git-svn-id: http://skia.googlecode.com/svn/trunk@8721 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-17 14:19:44 +00:00
sugoi@google.com
4775cba7b3 Perlin noise adjustments
1 ) Added GPU simplex noise as a comparison to GPU Perlin noise. It can be enabled simply by using a #define (SK_USE_SIMPLEX_NOISE)
2 ) Enabled GPU Perlin noise tests
3 ) Added a small benchmark for noise
4 ) Disabled GPU Perlin noise on Android based on benchmarks

Review URL: https://codereview.chromium.org/14087002

git-svn-id: http://skia.googlecode.com/svn/trunk@8719 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-17 13:46:56 +00:00
skia.committer@gmail.com
45fb8b6013 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8714 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-17 07:00:56 +00:00
scroggo@google.com
7fd2d70ad3 Delete gm after use.
Fixes a memory leak when using the --modulo flag. Instead of deleting
manually in each case we are done with it (which led to missing one
case), use an SkAutoTDelete.

Review URL: https://codereview.chromium.org/13929019

git-svn-id: http://skia.googlecode.com/svn/trunk@8707 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-16 19:11:14 +00:00
reed@google.com
8f6f67efb6 change shortName to match filename
git-svn-id: http://skia.googlecode.com/svn/trunk@8705 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-16 17:58:38 +00:00
reed@google.com
0a6465949e fix new gm to actually trigger the bug
git-svn-id: http://skia.googlecode.com/svn/trunk@8699 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-16 17:04:43 +00:00
reed@google.com
d638233cbe add gm to test edge case in drawBitmapRectToRect
git-svn-id: http://skia.googlecode.com/svn/trunk@8698 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-16 16:55:38 +00:00
borenet@google.com
d2ef088ea3 Move resource dir from gm to trunk
git-svn-id: http://skia.googlecode.com/svn/trunk@8684 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-15 17:36:08 +00:00
skia.committer@gmail.com
4bb50b22fc Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8670 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-13 07:01:15 +00:00
scroggo@google.com
ab02627ae7 GM::height() now returns the height, not the width.
Fortunately, the only current caller has a width and height that
match, so this should not change any existing GMs.

Review URL: https://codereview.chromium.org/14234022

git-svn-id: http://skia.googlecode.com/svn/trunk@8669 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 22:14:03 +00:00
junov@chromium.org
5ee449af74 Fixing viral copy/paste typo Shapshot -> Snapshot
Unreviewed

git-svn-id: http://skia.googlecode.com/svn/trunk@8667 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 20:20:50 +00:00
epoger@google.com
318a059a0c GM: add self-test that sets --readPath to a nonexistent directory path
Review URL: https://codereview.chromium.org/13844011

git-svn-id: http://skia.googlecode.com/svn/trunk@8664 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 19:05:57 +00:00
robertphillips@google.com
ad7d481ea9 Add testing of optimizations to GM
https://codereview.chromium.org/12843028/



git-svn-id: http://skia.googlecode.com/svn/trunk@8658 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 15:13:35 +00:00
robertphillips@google.com
07a8ea0002 Reverting r8654
git-svn-id: http://skia.googlecode.com/svn/trunk@8655 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 14:59:02 +00:00
robertphillips@google.com
c10531b502 Add testing of optimizations to GM
https://codereview.chromium.org/12843028/



git-svn-id: http://skia.googlecode.com/svn/trunk@8654 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 14:53:29 +00:00
epoger@google.com
5079d2c2a0 GM: allow caller to specify which result types trigger an error
Review URL: https://codereview.chromium.org/14187007

git-svn-id: http://skia.googlecode.com/svn/trunk@8652 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 14:11:21 +00:00
epoger@google.com
908f583662 rename SkBitmapChecksummer as SkBitmapHasher, and prepare for it to possibly use
some algorithm other than CityHash
Review URL: https://codereview.chromium.org/14170010

git-svn-id: http://skia.googlecode.com/svn/trunk@8639 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 02:23:55 +00:00
epoger@google.com
bcbf5aa77d GM: print list of GMs run, even in non-verbose mode (rolls back part of r8600)
Review URL: https://codereview.chromium.org/14052003

git-svn-id: http://skia.googlecode.com/svn/trunk@8638 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-12 02:11:54 +00:00
commit-bot@chromium.org
63150afcc0 Use blitframebuffer to implement copySurface.
Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13910009

git-svn-id: http://skia.googlecode.com/svn/trunk@8633 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-11 22:00:22 +00:00
epoger@google.com
07947d9565 GM: signal error if the total number of tests run was less than expected
Review URL: https://codereview.chromium.org/13863009

git-svn-id: http://skia.googlecode.com/svn/trunk@8614 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-11 15:41:02 +00:00
epoger@google.com
b0f8b430de GM: remove enableMissingWarning in favor of verbose flag, and trim output in nonverbose mode
Review URL: https://codereview.chromium.org/14080003

git-svn-id: http://skia.googlecode.com/svn/trunk@8600 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-10 18:46:25 +00:00
scroggo@google.com
aef2d3b14e Run mixedxfermodes GM through the pipe.
Pass the size of the GM to SkGPipeWriter.startRecording(), so that
calls to getDeviceSize() on the returned SkCanvas return a reasonable
result. This allows removing the flag to skip mixedxfermodes.

BUG=https://code.google.com/p/skia/issues/detail?id=1199

Review URL: https://codereview.chromium.org/13814023

git-svn-id: http://skia.googlecode.com/svn/trunk@8598 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-10 18:10:41 +00:00
epoger@google.com
51dbabee67 gm: hide list of tests with ignored errors, by default
Review URL: https://codereview.chromium.org/13811031

git-svn-id: http://skia.googlecode.com/svn/trunk@8591 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-10 15:24:53 +00:00
epoger@google.com
c8263e7041 gm: record IntentionallySkipped tests
Review URL: https://codereview.chromium.org/13663003

git-svn-id: http://skia.googlecode.com/svn/trunk@8586 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-10 12:17:34 +00:00
scroggo@google.com
604e0c249e SkFlags now follows proper dashing convention.
Two dashes are used for flags with multiple characters, and one
dash is used for flags with single characters.

In GM, changed '-wp' to '-p' (the command to choose a directory
for writing SKPs) to fit with the convention.

In render_pictures and bench_pictures, changed the flag for
read and write path to have full names (which are consistent)
and use the old single character names as their shortcuts.

SkCommandLineFlags: Updated the documentation, and only allow
-h or --help for help (again, to match the convention).
Also enforce the single character limit for the short name, and
require the full name to be at least two characters.

Provide full names for skhello.

BUG=https://code.google.com/p/skia/issues/detail?id=1174

Review URL: https://codereview.chromium.org/12521019

git-svn-id: http://skia.googlecode.com/svn/trunk@8582 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 21:25:46 +00:00
skia.committer@gmail.com
cff0243b0f Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8548 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-06 07:01:10 +00:00
sugoi@google.com
e3b4c5097a New SVG turbulence in Skia
This cl contains the code for CPU generation of noise.

TEST:Added 'perlinnoise' gm
Review URL: https://codereview.chromium.org/13094003

git-svn-id: http://skia.googlecode.com/svn/trunk@8541 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-05 13:47:09 +00:00
epoger@google.com
caac3db48f re-land r8535, now that src.chromium.org is back up
Review URL: https://codereview.chromium.org/13662002

git-svn-id: http://skia.googlecode.com/svn/trunk@8538 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 19:23:11 +00:00
epoger@google.com
67caaf8792 Revert r8535
git-svn-id: http://skia.googlecode.com/svn/trunk@8536 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 18:21:48 +00:00