Commit Graph

275 Commits

Author SHA1 Message Date
junov@chromium.org
66070a527c Changing SkDeferredCanvas to use factories for creation
The objective of this change is to remove all calls to 
SkCanvas::setDevice. The factory API is hidden behind
a build flag in order to ease the roll into chromium.

A side-effect of the factory pattern is that it will
no longer be possible to allocate a SkDeferredCanvas on
the stack.  This changes nothing for chrome, but it
impacts skia test programs.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9298 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 17:39:08 +00:00
scroggo@google.com
ccd7afb6fb Reland 'Add path utils, plus a test for it.'
Build SkPathJoin and SkBasename on windows also.

Previous CL did not build on Windows because the two functions were
accidentally placed inside an ifdef that did not include windows.
Move the functions to the top of the file, and add a comment by the
endif for clarity.

Previously reviewed at https://codereview.chromium.org/15747004/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9295 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 16:45:07 +00:00
scroggo@google.com
dbbcaa8983 Revert "Add path utils, plus a test for it."
This reverts commit d172374b46cae0bd5d7c024b9848f5bdafcc6a16.

This CL broke on Windows.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9278 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:28:57 +00:00
scroggo@google.com
1bee037044 Add path utils, plus a test for it.
SkOSFile:
Added class SkOSPath with functions for
modifying strings representing path names.

OSPathTest.cpp:
Test of the new utilities.

factory.cpp:
Use SkPathJoin.

gmmain and gm_expectations:
Use SkOSPath::SkPathJoin instead of a local version.

skimage_main.cpp:
Use the new location of SkPathJoin and SkBasename.

R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9277 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 18:12:17 +00:00
epoger@google.com
d4993ff360 GM: create GmResultDigest that encapsulates digest type ("bitmap-64bitMD5") and value (12345)
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9271 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 14:33:28 +00:00
epoger@google.com
659c8c06cd GM: make behavior of make_filename() more late-binding
This will be needed to add the option of writing out files with
checksum-based filenames.

R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9215 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-21 15:45:45 +00:00
epoger@google.com
ce057fec92 GM: include filename extension (.png) of each output file in JSON summary
Doing this so that, once we *do* start writing PDF checksums into the JSON
summary, we'll be able to distinguish those from the PNG checksums.
Otherwise, we could have naming collisions.

R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9119 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-14 15:17:46 +00:00
caryclark@google.com
512c9b65fc add wildcard test name matching to gm and bench.
This adds the same set of options in unit tests, i.e:

--match [~][^]match[$] [~][^]match[$] ...
~ causes a matching test to always be skipped
^ requires the start of the test to match
$ requires the end of the test to match
^ and $ requires an exact match

If a test does not match any list entry,
it is skipped unless some list entry starts with ~
Review URL: https://codereview.chromium.org/14746017

git-svn-id: http://skia.googlecode.com/svn/trunk@9096 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-10 15:16:13 +00:00
bungeman@google.com
1ca36ecfd9 Don't use writeData to write the document in GM.
https://codereview.chromium.org/14824003/


git-svn-id: http://skia.googlecode.com/svn/trunk@9013 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-06 14:28:43 +00:00
epoger@google.com
fdea3259d0 GM: fix --mismatchPath option
(currently, it doesn't actually write any files!)

TBR=rmistry

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8963 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 18:24:03 +00:00
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
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
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
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
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
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
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
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
epoger@google.com
da8db9837e gm: report ExpectationsMismatch and RenderModeMismatch results separately
Review URL: https://codereview.chromium.org/13650002

git-svn-id: http://skia.googlecode.com/svn/trunk@8535 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 18:11:31 +00:00
epoger@google.com
310478e72c re-land r8514 without breaking 32-bit Mac compilers
Review URL: https://codereview.chromium.org/13427004

git-svn-id: http://skia.googlecode.com/svn/trunk@8518 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:00:39 +00:00
epoger@google.com
2212c2e35c roll out r8514
Review URL: https://codereview.chromium.org/13503003

git-svn-id: http://skia.googlecode.com/svn/trunk@8515 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 17:12:42 +00:00
epoger@google.com
f60494ba0b gm: display summary of all results by ErrorType
as discussed in https://codereview.chromium.org/12825005/#msg14
Review URL: https://codereview.chromium.org/12851022

git-svn-id: http://skia.googlecode.com/svn/trunk@8514 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 17:02:53 +00:00
skia.committer@gmail.com
041e2dbc06 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8503 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 07:01:14 +00:00
robertphillips@google.com
5a7d029fd6 Add tile rendering to GM
https://codereview.chromium.org/13165011/



git-svn-id: http://skia.googlecode.com/svn/trunk@8485 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 15:18:41 +00:00
bsalomon@google.com
123ac1d4ea Make GM render to render targets that are also textures.
Review URL: https://codereview.chromium.org/13211002

git-svn-id: http://skia.googlecode.com/svn/trunk@8438 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-28 19:18:12 +00:00
epoger@google.com
6f6568b27e gm: change ErrorBitfield to ErrorType/ErrorCombination
This will enable future GM changes to report errors more completely/consistently, like skdiff.
Review URL: https://codereview.chromium.org/12992003

git-svn-id: http://skia.googlecode.com/svn/trunk@8344 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-22 17:29:46 +00:00
scroggo@google.com
d9ba9a05d6 Change the name of SkFlags to SkCommandLineFlags.
This name is more specific to what it actually does.

Also move the code into tools/flags, to (slightly) better organize
the massive tools folder.

Update the programs that use it to use the new names.

No functionality changes.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-21 19:43:15 +00:00
epoger@google.com
80724dfeb3 Re-land r8269, fixing build errors/warnings
Review URL: https://codereview.chromium.org/12886037

git-svn-id: http://skia.googlecode.com/svn/trunk@8290 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-21 13:49:54 +00:00
epoger@google.com
b8210f20ce Revert r8269 to fix BuildGM. Warnings-as-errors problem, dunno why I didn't see it locally.
git-svn-id: http://skia.googlecode.com/svn/trunk@8271 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 18:46:34 +00:00
epoger@google.com
0b62b3dd1c gm refactor: extract run_multiple_configs() and run_multiple_modes()
Review URL: https://codereview.chromium.org/12536007

git-svn-id: http://skia.googlecode.com/svn/trunk@8269 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 17:59:28 +00:00
scroggo@google.com
0f567c6cb6 Write the config options in place in the help string.
Fixes for gm.

Builds on https://codereview.chromium.org/12955002/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8256 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 15:35:08 +00:00
scroggo@google.com
09fd4d2169 Reland r8235 "Switch gm to use SkFlags."
This time, using #if guards for gpuCacheSize consistently.

Also fix some warnings.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8254 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 14:20:18 +00:00
bsalomon@google.com
4c75f241cb Reland MSAA changes to GM now that Linux/ATI driver bug has been worked around.
git-svn-id: http://skia.googlecode.com/svn/trunk@8240 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 18:58:43 +00:00
scroggo@google.com
0b735631b7 Revert "Make gm use SkFlags."
Fix the build.

This reverts commit 6f1fe2aee39308fc56854b062be244a904c209e7.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8236 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 17:38:50 +00:00
scroggo@google.com
7d519305bb Make gm use SkFlags.
Make flag parser its own project. It is still in the tools folder,
but can now be used by other projects.

Some changes to behavior in order to work with SkFlags:
enable-missing-warning and disable-missing-warning have become
enableMissingWarning and noenableMissingWarning.

exclude-config is now excludeConfig

--config now can only be listed once, but all configs listed
after it will be included (same with excludeConfig and match).

In addition, writeJsonSummary has been changed to
writeJsonSummaryPath for consistency with other path flags.

Provide an option to SkFlags to provide a short name, and use
it for the flags which have short names.

--tileGridReplayScales now takes space separated arguments,
like other inputs.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8235 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 17:28:10 +00:00
bsalomon@google.com
f315451f78 Revert changes to GM MSAA configs, hopefully fixes linux bot gm failures.
git-svn-id: http://skia.googlecode.com/svn/trunk@8232 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 16:43:40 +00:00
bsalomon@google.com
a83d3d8865 fix angle gmmain build
git-svn-id: http://skia.googlecode.com/svn/trunk@8226 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 15:19:41 +00:00
bsalomon@google.com
14687813ea Fix build break in gmmain.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@8222 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 14:35:41 +00:00
bsalomon@google.com
40deeadf6f Add config msaa4 to gm (not run by default) and make MSAA configs not run unless
sample count is <= the max.
Review URL: https://codereview.chromium.org/12554012

git-svn-id: http://skia.googlecode.com/svn/trunk@8221 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 14:28:36 +00:00
scroggo@google.com
5159153840 In gm, install drawFilter for pipe and tiledPipe.
Fixes bugs in drawing un-antialiased text in gm.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8173 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-15 15:29:02 +00:00
epoger@google.com
5efdd0cb9c gm: write all messages to stdout/stderr with "GM:" preamble to distinguish from various debug messages coming from elsewhere
Review URL: https://codereview.chromium.org/12691009

git-svn-id: http://skia.googlecode.com/svn/trunk@8126 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-13 14:18:40 +00:00
bsalomon@google.com
e3613cefe2 Fix sign/unsigned warnings in benchmain.cpp and gmmain.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@8079 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-11 20:33:45 +00:00
bsalomon@google.com
8a8fcba5b6 Make GPU cache size cmd line configurable in GM.
Review URL: https://codereview.chromium.org/12717002

git-svn-id: http://skia.googlecode.com/svn/trunk@8076 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-11 20:22:31 +00:00
reed@google.com
1f19b7f15b add flag to skip gpu test
git-svn-id: http://skia.googlecode.com/svn/trunk@8036 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 13:31:02 +00:00
epoger@google.com
eb06636133 re-land r8028 without "special" Microsoft compiler warnings
TBR=borenet
Review URL: https://codereview.chromium.org/12685002

git-svn-id: http://skia.googlecode.com/svn/trunk@8035 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 09:39:36 +00:00
epoger@google.com
526db494c9 Revert r8028... warnings-as-errors broke some builders
(I'm developing on Linux, which does not treat warnings as errors.)

git-svn-id: http://skia.googlecode.com/svn/trunk@8031 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-07 21:02:50 +00:00
sugoi@google.com
9c55f801a3 Fixing some warnings on Linux
There were only a few warnings left, so I fixed them and enabled the unused variable warning by removing the "-Wno-unused" flag. Only the -Wno-unused-parameter remains for now (could be removed later).
Review URL: https://codereview.chromium.org/12480002

git-svn-id: http://skia.googlecode.com/svn/trunk@8030 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-07 20:52:59 +00:00
epoger@google.com
f7dba02e12 cleanup: fix gm's use of ErrorBitfield to be consistent (it's a bitfield, not an enum)
Review URL: https://codereview.chromium.org/12640004

git-svn-id: http://skia.googlecode.com/svn/trunk@8028 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-07 20:28:37 +00:00
junov@chromium.org
29b19e53cf Change SkTileGride geometry calculations to match the Chromium compositor.
This patch changes the semantics of tileWidth/Height to include the border region, and
uses an offset to take into account the fact that there is no outer border for outer
tiles. This patch also fixes a previous bug where the right column and bottom row were
considered to be included in bounds that are expressed as an SkIRect.

Companion Chromium CL required for roll: https://codereview.chromium.org/12221077/

TEST=TileGrid unit test
Review URL: https://codereview.appspot.com/7350050

git-svn-id: http://skia.googlecode.com/svn/trunk@7885 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-27 18:35:16 +00:00
borenet@google.com
a904ea1b2a Fix ignored errors in GM when no reference images are provided
Review URL: https://codereview.appspot.com/7400044

git-svn-id: http://skia.googlecode.com/svn/trunk@7813 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-21 18:34:14 +00:00
epoger@google.com
d271d245e9 gm: Add ability to compare against checksums (as opposed to image files)
Review URL: https://codereview.appspot.com/7306071

git-svn-id: http://skia.googlecode.com/svn/trunk@7724 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-13 18:14:48 +00:00
bsalomon@google.com
fec0bc3fc1 Remove legacy names no longer referenced in Chrome and WebKit.
Review URL: https://codereview.appspot.com/7311055

git-svn-id: http://skia.googlecode.com/svn/trunk@7640 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 14:43:04 +00:00
epoger@google.com
84a1802b07 gm: report max-pixel-error if comparing against PNG files (not checksums)
Review URL: https://codereview.appspot.com/7241064

git-svn-id: http://skia.googlecode.com/svn/trunk@7526 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-01 20:39:15 +00:00
epoger@google.com
5f6a007755 gm: force all pixels opaque earlier in the process
Review URL: https://codereview.appspot.com/7251043

git-svn-id: http://skia.googlecode.com/svn/trunk@7493 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-31 16:30:55 +00:00
epoger@google.com
666c5cf3af Fix bugs in r7291
TBR=reed
Review URL: https://codereview.appspot.com/7129057

git-svn-id: http://skia.googlecode.com/svn/trunk@7292 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-19 04:56:36 +00:00
epoger@google.com
3726960733 re-land r7258 with fixes and tests
BUG=http://code.google.com/p/skia/issues/detail?id=1079
TBR=reed
Review URL: https://codereview.appspot.com/7132060

git-svn-id: http://skia.googlecode.com/svn/trunk@7291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-19 04:21:27 +00:00
epoger@google.com
9ef89ce8b7 Roll out r7258
BUG=http://code.google.com/p/skia/issues/detail?id=1079
TBR=robertphillips
Review URL: https://codereview.appspot.com/7138065

git-svn-id: http://skia.googlecode.com/svn/trunk@7289 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-18 21:45:42 +00:00
epoger@google.com
a243b22422 Reapply r7198 with Mac/Windows fixes
BUG=https://code.google.com/p/skia/issues/detail?id=1067
Review URL: https://codereview.appspot.com/7138056

git-svn-id: http://skia.googlecode.com/svn/trunk@7258 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 17:54:28 +00:00
junov@chromium.org
20bd04e365 Turn on the kUsePathBoundsForClip_RecordingFlag in bench, gm and tools that use class PictureRenderer
Chrome uses this flag for recording to skpicture in order to improve performance.
Therefore, skai benchmarks should run with this flag enabled, and we need 
gm and render_pictures test coverage to validate it.  In gm, the vanilla 
SkPicture test step will still run without the flag to ensure that case still gets test
coverage, while the SkPicture test steps that use rtree and tileGrid will now run with
the flag enabled.
Review URL: https://codereview.appspot.com/7111043

git-svn-id: http://skia.googlecode.com/svn/trunk@7234 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 18:43:36 +00:00
bsalomon@google.com
4e23068b37 Re-enable inst counting in debug builds.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7098066

git-svn-id: http://skia.googlecode.com/svn/trunk@7206 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 20:37:04 +00:00
epoger@google.com
bc159bdcd0 Revert r7198 until I can fix https://code.google.com/p/skia/issues/detail?id=1067
Review URL: https://codereview.appspot.com/7124043

git-svn-id: http://skia.googlecode.com/svn/trunk@7203 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 20:24:03 +00:00
epoger@google.com
06b8a19b56 gm: use new Expectations struct instead of comparison bitmaps
Review URL: https://codereview.appspot.com/7088044

git-svn-id: http://skia.googlecode.com/svn/trunk@7198 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 19:10:16 +00:00
junov@chromium.org
ff06af20fd Changing imageFilter GM tests to use drawBitmap instead of drawSprite
The motivation is be able to test the filters with scaled SkPicture playback in isolation from the issues that surround usage of drawSprite
Review URL: https://codereview.appspot.com/7060071

git-svn-id: http://skia.googlecode.com/svn/trunk@7152 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 16:27:50 +00:00
junov@chromium.org
95146ebc43 Adding commandline option to gm to make it write image results for tests that fails due to pixel mismatches.
Review URL: https://codereview.appspot.com/7100043

git-svn-id: http://skia.googlecode.com/svn/trunk@7143 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-11 21:04:40 +00:00
epoger@google.com
3499f3c0d9 gm: if no readPath is given, report all tests as "missing reference image" instead of "passed"
Review URL: https://codereview.appspot.com/7070066

git-svn-id: http://skia.googlecode.com/svn/trunk@7119 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-10 17:11:27 +00:00
bsalomon@google.com
50c79d886b Enable warnings-as-errors on Windows.
Review URL: https://codereview.appspot.com/7066054

git-svn-id: http://skia.googlecode.com/svn/trunk@7094 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-08 20:31:53 +00:00
epoger@google.com
15655b241b gm: remove --diffPath option and all other pixel diff functionality.
If you want pixel diffs, you need to run skdiff instead; from now on,
gm will only tell you WHETHER the images differed (not HOW they differed).
Review URL: https://codereview.appspot.com/7064047

git-svn-id: http://skia.googlecode.com/svn/trunk@7093 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-08 18:47:31 +00:00
reed@google.com
fb2cd425c2 add --exclude-config to opt out of 1 or more configs. This always is respected,
regardless of the ordering of --config and --exclude-config.

add --verbose [-v] to dump extra info, e.g. what configs are being run

changed --config to enforce a unique set of configs to be run, such that
--config 8888 --config 8888 results in just 1 run of 8888.
Review URL: https://codereview.appspot.com/7027053

git-svn-id: http://skia.googlecode.com/svn/trunk@7013 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 14:43:03 +00:00
epoger@google.com
9c56a8dea6 Make gm's json results include checksums even if run without --readPath
Review URL: https://codereview.appspot.com/6979043

git-svn-id: http://skia.googlecode.com/svn/trunk@6917 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 18:34:29 +00:00
skia.committer@gmail.com
d8b279926e Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6911 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 02:01:41 +00:00
junov@chromium.org
706ff2f4f6 Fixing picture recording scale bug in gm
Review URL: https://codereview.appspot.com/6965047

git-svn-id: http://skia.googlecode.com/svn/trunk@6901 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-19 15:55:40 +00:00
junov@chromium.org
c938c48bf4 Adding tileGrid scaled playback capability to gm.
BUG=http://code.google.com/p/skia/issues/detail?id=1021
Review URL: https://codereview.appspot.com/6937077

git-svn-id: http://skia.googlecode.com/svn/trunk@6898 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-19 15:24:38 +00:00
junov@chromium.org
58be1015a0 Adding gm test steps for rtree and tileGrid
The new passes are enabled by default, and can be disabled with --nortree and --notileGrid.
With this change, the skia buildbots will begin continuously testing rtree and tileGrid.

BUG=http://code.google.com/p/skia/issues/detail?id=1014
TEST=gm
Review URL: https://codereview.appspot.com/6941072

git-svn-id: http://skia.googlecode.com/svn/trunk@6886 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-18 21:09:45 +00:00
epoger@google.com
ee8a8e3931 Re-land r6843 with copied gyp file to (hopefully) fix Windows build
BUG=https://code.google.com/p/skia/issues/detail?id=1023
Review URL: https://codereview.appspot.com/6943073

git-svn-id: http://skia.googlecode.com/svn/trunk@6880 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-18 19:13:49 +00:00
epoger@google.com
33352d9623 Roll out r6843 to hopefully fix Windows builds
BUG=https://code.google.com/p/skia/issues/detail?id=1023
TBR=borenet
Review URL: https://codereview.appspot.com/6942061

git-svn-id: http://skia.googlecode.com/svn/trunk@6849 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 18:23:58 +00:00
epoger@google.com
6c0e5225a0 Add --writeJsonSummary option to gm
This writes out a JSON file containing expected and actual checksum values for every test.
Next step: allow the same checksum file to be compared against, instead of PNG files.
Review URL: https://codereview.appspot.com/6940053

git-svn-id: http://skia.googlecode.com/svn/trunk@6843 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 15:27:30 +00:00
junov@chromium.org
3cb834bd27 Modifying SkTileGrid to support arbitrary query rectangles.
Exposing SkTileGrid functionality in the public API through SkTileGridPicture.
This patch also makes TileGrid and Rtree testable in gm, which revealed errors.

TEST=gm with '--tileGrid'
BUG=http://code.google.com/p/chromium/issues/detail?id=164636
Review URL: https://codereview.appspot.com/6933044

git-svn-id: http://skia.googlecode.com/svn/trunk@6783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:39:53 +00:00
junov@google.com
dbfac8a723 Defining new color constat for transparent color
Review URL: https://codereview.appspot.com/6901044

git-svn-id: http://skia.googlecode.com/svn/trunk@6696 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-06 21:47:40 +00:00
reed@google.com
69dc4ffa6f remove 4444 support (for now) form gm -- not used (afaik) and slows us down
Review URL: https://codereview.appspot.com/6782137

git-svn-id: http://skia.googlecode.com/svn/trunk@6622 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-29 21:21:54 +00:00
reed@google.com
971aca7557 change SkDrawFilter::filter to return a bool, where false means don't-draw
Review URL: https://codereview.appspot.com/6851111

git-svn-id: http://skia.googlecode.com/svn/trunk@6551 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-26 20:26:54 +00:00
reed@google.com
aef73617d1 flag the GM if we're in deferred-canvas mode, to work-around bug trying to
get the context from its device.



git-svn-id: http://skia.googlecode.com/svn/trunk@6452 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-16 13:41:45 +00:00
epoger@google.com
57f7abc865 Maintain failedTests list within GMMain object
Review URL: https://codereview.appspot.com/6819121

git-svn-id: http://skia.googlecode.com/svn/trunk@6390 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 03:41:55 +00:00
skia.committer@gmail.com
453995e01d Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-10 02:01:26 +00:00
reed@google.com
ce7ffaccc4 report max pixel error on failure, rather than the hex of the first mismatched pixel
Review URL: https://codereview.appspot.com/6826080

git-svn-id: http://skia.googlecode.com/svn/trunk@6365 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-09 14:51:18 +00:00
bsalomon@google.com
c7a24d23f7 Check modulo values passed to GM.
R=reed@google.com
Review URL: https://codereview.appspot.com/6820073

git-svn-id: http://skia.googlecode.com/svn/trunk@6248 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 18:03:48 +00:00
borenet@google.com
7158e6acca Improve NaCl support
- Add nacl_make script to build Skia targets for NaCl using gyp
- Add nacl_interface for command-line apps
- Add nacl_sample as front-end for SampleApp
- Add freetype to DEPS
- Various gyp tweaks for NaCl

TODO:
- Implement GL interface
- Implement font host
- Fix plumbing so that SampleApp works properly
Review URL: https://codereview.appspot.com/6671044

git-svn-id: http://skia.googlecode.com/svn/trunk@6245 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 17:43:44 +00:00
epoger@google.com
82cb65ba18 Alphabetize gm options (in usage message and option parser).
Also add long-form option names for all options.
Review URL: https://codereview.appspot.com/6817050

git-svn-id: http://skia.googlecode.com/svn/trunk@6173 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-29 18:59:17 +00:00
epoger@google.com
e8ebeb1f8f Add option to gm: write out images into a hierarchy, rather than a flat set of files
BUG=https://code.google.com/p/skia/issues/detail?id=743
Review URL: https://codereview.appspot.com/6810047

git-svn-id: http://skia.googlecode.com/svn/trunk@6167 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-29 16:42:11 +00:00
epoger@google.com
de96163a80 object-ify gmmain.cpp (no functional change) to ease planned changes later
Review URL: https://codereview.appspot.com/6801043

git-svn-id: http://skia.googlecode.com/svn/trunk@6147 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 18:56:36 +00:00
djsollen@google.com
ebce16d21b Refactor gm to minimize wasted passes through picture and pipe code paths.
Testing this CL shows around a 40% time reduction when running gm on a mac debug build.

Review URL: https://codereview.appspot.com/6791043

git-svn-id: http://skia.googlecode.com/svn/trunk@6140 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 14:07:13 +00:00