skia2/gm
scroggo@google.com f1754ec691 Replace SkPicture(SkStream) constructors with a factory.
SkPicture:
Remove the constructors which take an SkStream as an argument. Rather
than having to check a variable for success, the factory will return
NULL on failure.
Add a protected function for determining if an SkStream is an SKP
to share code with SkTimedPicture.
In the factory, check for a NULL SkStream.
Use a default decoder (from BUG:
https://code.google.com/p/skia/issues/detail?id=1325)

SkDebuggerGUI:
Call SkPicture::CreateFromStream when necessary.
Write a factory for creating SkTimedPictures and use it.

Use the factory throughout tools.

Add include/lazy to utils and effects gyp include_dirs so SkPicture.h
can reference SkImageDecoder.h which references SkBitmapFactory.h (in
include/lazy).

Changes code Chromium uses, so this will require a temporary Skia
and then a change to Chromium to use the new Skia code.

TODO: Create a decoder that does nothing to be used by pinspect,
lua pictures, etc, and allow it to not assert in SkOrderedReadBuffer.

R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@9822 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-28 21:32:00 +00:00
..
tests GM: add --missingExpectationsPath option, similar to --mismatchPath 2013-06-21 18:16:47 +00:00
__init__.py rebaseline.py: if --tests is not specified, get test list from actual-results.json 2013-06-05 15:43:37 +00:00
aaclip.cpp test thick stroking of conics 2013-06-12 17:46:41 +00:00
aarectmodes.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
alphagradients.cpp Sanitizing source files in Housekeeper-Nightly 2013-05-25 07:01:12 +00:00
arithmode.cpp Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff(). 2013-05-29 20:55:09 +00:00
bicubicfilter.cpp (Relanding r7275 with assert fix, plus fixes from r7276, r7280, r7283.) 2013-01-18 20:48:20 +00:00
bigmatrix.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
bigtext.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-06 07:01:37 +00:00
bitmapcopy.cpp Make gms use getTopDevice() rather than getDevice(). 2013-05-10 14:12:08 +00:00
bitmapfilters.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
bitmapmatrix.cpp Added additional case to GM:drawbitmapmatrix 2012-09-28 17:24:44 +00:00
bitmaprect.cpp Fixed remaining clang compiler warnings 2012-12-03 17:35:19 +00:00
bitmaprecttest.cpp augmenting fix in 8700 and 8701, be careful NOT to "sort" the result of mapRect 2013-04-18 15:37:14 +00:00
bitmapscroll.cpp fix warning from scalar --> int32 conversion 2013-01-07 19:54:40 +00:00
blend.cpp revert name changes to SkBlendImageFilter. It (correctly) named its enum kMultiply_Mode, 2013-02-01 14:35:09 +00:00
blurrect.cpp Remove the non-separable blur because it is no longer used. 2013-06-11 15:23:42 +00:00
blurs.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
circles.cpp Add file missing from r3682 checkin 2012-04-16 14:19:32 +00:00
cmykjpeg.cpp Sanitizing source files in Housekeeper-Nightly 2013-05-30 07:01:29 +00:00
colorfilterimagefilter.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
colormatrix.cpp Add transparent source bitmap to colormatrix GM. 2012-10-16 17:50:48 +00:00
colortype.cpp if we can't load Times, use default font 2013-06-03 17:45:29 +00:00
complexclip2.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
complexclip.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
composeshader.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
conicpaths.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-21 07:00:53 +00:00
convexpaths.cpp Make GrAAConvexPathRender support paths with > 64K verts. 2013-05-14 14:20:28 +00:00
cubicpaths.cpp Sanitizing source files in Housekeeper-Nightly 2013-05-24 07:01:26 +00:00
dashcubics.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
dashing.cpp Fix minor memory leaks 2013-03-27 21:31:21 +00:00
degeneratesegments.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
deviceproperties.cpp Mask orientation and layout correctly. 2013-05-06 22:23:08 +00:00
displacement.cpp Fix for displacement mapping 2013-03-19 15:07:30 +00:00
display_json_results.py gm_json.py: add ability to load JSON file from a string, not just a local file 2013-06-04 17:50:36 +00:00
distantclip.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2012-09-18 02:01:09 +00:00
drawbitmaprect.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
drawlooper.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
emptypath.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
extractbitmap.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
factory.cpp Reland 'Add path utils, plus a test for it.' 2013-05-28 16:45:07 +00:00
fatpathfill.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
filltypes.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
filltypespersp.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
filterbitmap.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-01 07:01:39 +00:00
fontmgr.cpp Add FontMgr to DirectWrite. 2013-05-01 14:21:20 +00:00
fontscaler.cpp speculative fix for broken android bots : disable gm/fontscaler 2013-03-08 13:31:26 +00:00
gammatext.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
getpostextpath.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
giantbitmap.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm_error.h GM: allow caller to specify which result types trigger an error 2013-04-12 14:11:21 +00:00
gm_expectations.cpp Reland r9682, using new SkString::appendU64() 2013-06-19 18:28:31 +00:00
gm_expectations.h Reland r9682, using new SkString::appendU64() 2013-06-19 18:28:31 +00:00
gm_json.py gm_json.py: add ability to load JSON file from a string, not just a local file 2013-06-04 17:50:36 +00:00
gm.cpp add onOnceBeforeDraw() virtual, so gm's can easily perform lazy initialization 2012-11-27 15:15:58 +00:00
gm.h Add an option to create unpremultiplied bitmaps. 2013-06-14 15:33:20 +00:00
gmmain.cpp Replace SkPicture(SkStream) constructors with a factory. 2013-06-28 21:32:00 +00:00
gradient_matrix.cpp add SkIntToScalar and SkFloatToScalar to stop build errors on Mac10.6 2013-06-12 23:36:50 +00:00
gradients.cpp GM : Unused parameters cleanup 2013-02-27 15:41:12 +00:00
gradtext.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
hairlines.cpp Fix degenerate and near-degenerate hairlines on the gpu 2013-05-24 18:51:55 +00:00
hairmodes.cpp add onOnceBeforeDraw() virtual, so gm's can easily perform lazy initialization 2012-11-27 15:15:58 +00:00
hittestpath.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
image.cpp Reland 'Add path utils, plus a test for it.' 2013-05-28 16:45:07 +00:00
image.h check-point for image/surface work 2012-07-29 20:38:16 +00:00
imageblur.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
imagefiltersbase.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
imagefiltersgraph.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
imagemagnifier.cpp Skip tiled drawing in GM for magnifier image filter. 2012-08-15 16:32:19 +00:00
internal_links.cpp PDF: add support for named destinations. 2013-03-08 09:09:10 +00:00
lcdtext.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
lerpmode.cpp Sanitizing source files in Housekeeper-Nightly 2013-05-22 07:01:13 +00:00
lighting.cpp Changing imageFilter GM tests to use drawBitmap instead of drawSprite 2013-01-14 16:27:50 +00:00
linepaths.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
matrixconvolution.cpp Changing imageFilter GM tests to use drawBitmap instead of drawSprite 2013-01-14 16:27:50 +00:00
megalooper.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-04 07:00:53 +00:00
mixedxfermodes.cpp Finish mixed_xfermodes GM. 2013-05-15 13:10:18 +00:00
modecolorfilters.cpp Work around stack overflow 2013-03-14 17:24:16 +00:00
morphology.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
ninepatchstretch.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
nocolorbleed.cpp Import all GMs as Samples. 2011-10-31 14:18:20 +00:00
optimizations.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-13 07:01:15 +00:00
ovals.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-19 07:01:00 +00:00
patheffects.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
pathfill.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
pathinterior.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
pathopsinverse.cpp path ops -- crap, I checked in the wrong file 2013-04-22 20:12:47 +00:00
pathopsskpclip.cpp path ops : make it real 2013-04-25 13:34:40 +00:00
pathreverse.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
perlinnoise.cpp *** Perlin noise GM needs to be rebaselined *** 2013-06-17 14:19:01 +00:00
points.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
poly2poly.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-22 07:00:58 +00:00
quadpaths.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:14:13 +00:00
rects.cpp First pass at Comment API 2013-05-29 13:24:23 +00:00
roundrects.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-23 07:01:29 +00:00
rrect.cpp GM : Unused parameters cleanup 2013-02-27 15:41:12 +00:00
rrects.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
samplerstress.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
selftest.cpp gm: record IntentionallySkipped tests 2013-04-10 12:17:34 +00:00
shaderbounds.cpp Fix some fixed-point bugs. 2012-04-17 21:46:18 +00:00
shadertext2.cpp Defining new color constat for transparent color 2012-12-06 21:47:40 +00:00
shadertext3.cpp Minor cleanup 2012-12-12 15:58:25 +00:00
shadertext.cpp GM : Unused parameters cleanup 2013-02-27 15:41:12 +00:00
shadows.cpp Fix type errors and a few warnings for Visual Studio 2010 64-bit build. 2012-05-17 15:38:00 +00:00
shallowgradient.cpp Fix minor memory leaks 2013-03-27 21:31:21 +00:00
simpleaaclip.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2012-12-15 02:03:10 +00:00
spritebitmap.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-17 07:06:06 +00:00
srcmode.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
strokefill.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
strokerect.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
strokerects.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
strokes.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
system_preferences_default.cpp Set LCD font smoothing to "medium" for gm on Mac, regardless of system settings 2012-02-14 14:53:59 +00:00
system_preferences_mac.mm gm: Include system_preferences.h in mac file. 2012-09-26 15:41:42 +00:00
system_preferences.h Set LCD font smoothing to "medium" for gm on Mac, regardless of system settings 2012-02-14 14:53:59 +00:00
tablecolorfilter.cpp Defining new color constat for transparent color 2012-12-06 21:47:40 +00:00
techtalk1.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
testimagefilters.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
texdata.cpp Change undefined SkGpuRenderTarget and SkGpuTexture forward declares to GrRenderTarget and GrTexture. 2013-06-26 19:18:23 +00:00
texteffects.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
thinrects.cpp Sanitizing source files in Housekeeper-Nightly 2013-05-15 07:01:09 +00:00
thinstrokedrects.cpp Add a new GM for very thin stroke widths 2013-06-26 17:06:45 +00:00
tilemodes.cpp remove dst/rendertarget support for kARGB_4444_Config 2013-06-21 18:30:53 +00:00
tinybitmap.cpp add onOnceBeforeDraw() virtual, so gm's can easily perform lazy initialization 2012-11-27 15:15:58 +00:00
twopointradial.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
typeface.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-02-27 07:10:10 +00:00
valgrind.supp Close an (incidental) memory leak in gmmain. 2012-03-15 13:39:51 +00:00
verttext2.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
verttext.cpp Fix vertical text scaling and clipping on Mac. 2013-05-15 15:07:32 +00:00
verylargebitmap.cpp Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:19:56 +00:00
xfermodeimagefilter.cpp Implement SkXfermode image filter. This required changing the signature of SkXfermode::asNewEffectOrCoeffs(), to add an optional background texture. 2013-05-31 17:49:12 +00:00
xfermodes2.cpp Fix for segmentation fault in xfermodes2 GM. 2013-04-19 13:59:52 +00:00
xfermodes.cpp Added support for non-separable blending modes. 2013-03-05 16:23:59 +00:00