skia2/gm
lsalzman 40254c2c2d SkBlendARGB32 and S32[A]_Blend_BlitRow32 are currently formulated as: SkAlphaMulQ(src, src_scale) + SkAlphaMulQ(dst, dst_scale), which boils down to ((src*src_scale)>>8) + ((dst*dst_scale)>>8). In particular, note that the intermediate precision is discarded before the two parts are added together, causing the final result to possibly inaccurate.
In Firefox, we use SkCanvas::saveLayer in combination with a backdrop that initializes the layer to the background. When this is blended back onto background using transparency, where the source and destination pixel colors are the same, the resulting color after the blend is not preserved due to the lost precision mentioned above. In cases where this operation is repeatedly performed, this causes substantially noticeable differences in color as evidenced in this downstream Firefox bug report:  https://bugzilla.mozilla.org/show_bug.cgi?id=1200684

In the test-case in the downstream report, essentially it does blend(src=0xFF2E3338, dst=0xFF2E3338, scale=217), which gives the result 0xFF2E3237, while we would expect to get back 0xFF2E3338.

This problem goes away if the blend is instead reformulated to effectively do (src*src_scale + dst*dst_scale)>>8, which keeps the intermediate precision during the addition before shifting it off.

This modifies the blending operations thusly. The performance should remain mostly unchanged, or possibly improve slightly, so there should be no real downside to doing this, with the benefit of making the results more accurate. Without this, it is currently unsafe for Firefox to blend a layer back onto itself that was initialized with a copy of its background.

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

[mtklein adds...]
No public API changes.
TBR=reed@google.com

Review-Url: https://codereview.chromium.org/2097883002
2016-08-05 11:48:45 -07:00
..
aaclip.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
aarectmodes.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
aaxfermodes.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
addarc.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
all_bitmap_configs.cpp Reorder colorspaces in GM to match previous behavior 2016-06-20 14:43:00 -07:00
alphagradients.cpp use Make instead of Create to return a shared shader 2016-03-08 18:50:00 -08:00
anisotropic.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
annotated_text.cpp Move off SK_SUPPORT_LEGACY_DATA_FACTORIES. 2016-08-02 14:40:46 -07:00
arcofzorro.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
arcto.cpp Reland of "switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )" 2016-03-18 11:22:57 -07:00
arithmode.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
badpaint.cpp use Make instead of Create to return a shared shader 2016-03-08 18:50:00 -08:00
beziereffects.cpp Move GrPipelineBuilder out of gms & reduce use of GrPipelineBuilder.h 2016-06-23 14:07:00 -07:00
beziers.cpp Use DEF_GM everywhere 2015-12-10 13:31:59 -08:00
bigblurs.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
bigmatrix.cpp partial switch over to sp usage of shaders 2016-03-09 09:50:50 -08:00
bigrrectaaeffect.cpp Move GrPipelineBuilder out of gms & reduce use of GrPipelineBuilder.h 2016-06-23 14:07:00 -07:00
bigtext.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
bigtileimagefilter.cpp Update TileImageFilter to sk_sp 2016-04-15 07:57:40 -07:00
bitmapcopy.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
bitmapfilters.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
bitmapimage.cpp Fix SkImage::asLegacyBitmap() to respect color space info 2016-06-13 11:25:03 -07:00
bitmappremul.cpp Cleanup: Remove unnecessary double-semicolons. 2015-04-27 07:01:45 -07:00
bitmaprect.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
bitmaprecttest.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
bitmapshader.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
bleed.cpp Update bleed-downscale GM to use power of 2 texture 2016-07-26 08:26:46 -07:00
blend.cpp SkBlendARGB32 and S32[A]_Blend_BlitRow32 are currently formulated as: SkAlphaMulQ(src, src_scale) + SkAlphaMulQ(dst, dst_scale), which boils down to ((src*src_scale)>>8) + ((dst*dst_scale)>>8). In particular, note that the intermediate precision is discarded before the two parts are added together, causing the final result to possibly inaccurate. 2016-08-05 11:48:45 -07:00
blurcircles2.cpp Make blurcircles2 run as a benchmark. 2016-05-16 09:36:44 -07:00
blurcircles.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
blurquickreject.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
blurrect.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
blurredclippedcircle.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
blurroundrect.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
blurs.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
bmpfilterqualityrepeat.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
bug5252.cpp fix hairline clip 2016-05-12 07:07:05 -07:00
bug530095.cpp Reland of "switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )" 2016-03-18 11:22:57 -07:00
bug615686.cpp always compute a cubic tangent 2016-06-01 04:42:02 -07:00
cgm.c Propagate SkSurfaceProps to more call sites 2015-06-23 06:26:08 -07:00
cgms.cpp C API: remove dead code, simplify boilerplate 2015-07-31 15:16:23 -07:00
circles.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
circularclips.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
clip_strokerect.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
clipdrawdraw.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
clippedbitmapshaders.cpp partial switch over to sp usage of shaders 2016-03-09 09:50:50 -08:00
color4f.cpp Change SkColor4f to RGBA channel order 2016-06-24 06:31:47 -07:00
colorcube.cpp Reland of [2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o… (patchset #1 id:1 of https://codereview.chromium.org/1821103004/ ) 2016-03-22 10:17:23 -07:00
coloremoji.cpp Fix SkScalerContext_FreeType::generateFontMetrics. 2016-07-21 13:32:09 -07:00
colorfilterimagefilter.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
colorfilters.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
colormatrix.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
colortype.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
colortypexfermode.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
colorwheel.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
complexclip2.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
complexclip3.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
complexclip_blur_tiled.cpp Update SkBlurImageFilter to sk_sp 2016-04-04 04:31:25 -07:00
complexclip.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
composeshader.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
concavepaths.cpp Tessellator: stop copying vertices into Polys and Monotones. 2016-06-02 11:36:48 -07:00
conicpaths.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
constcolorprocessor.cpp Just pass the draw context to paint conversion 2016-07-25 12:31:51 -07:00
convex_all_line_paths.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
convexpaths.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
convexpolyclip.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
convexpolyeffect.cpp Move GrPipelineBuilder out of gms & reduce use of GrPipelineBuilder.h 2016-06-23 14:07:00 -07:00
copyTo4444.cpp Remove uses of SkImageDecoder from gms 2016-03-18 12:13:47 -07:00
croppedrects.cpp Pre-crop filled rects to avoid scissor 2016-07-13 13:37:08 -07:00
cubicpaths.cpp cubic stroke fix 2016-04-06 08:54:06 -07:00
dashcircle.cpp Make some GMs animate 2016-04-08 13:35:14 -07:00
dashcubics.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
dashing.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
dcshader.cpp Bundle SkShader::asFragmentProcessor arguments in a struct 2016-07-22 11:04:53 -07:00
deferredtextureimagedata.cpp Actually fix leak in deferred_texture_image_data 2016-06-15 09:00:21 -07:00
degeneratesegments.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
dftext.cpp Remove SkSurfaceProps gamma-correctness flag entirely. 2016-07-26 11:36:05 -07:00
discard.cpp move setshader to sk_sp, re-using SK_SUPPORT_LEGACY_CREATESHADER_PTR 2016-03-25 09:08:00 -07:00
displacement.cpp Update DisplacementMapEffect to sk_sp 2016-04-15 07:17:36 -07:00
distantclip.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
downsamplebitmap.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
draw_bitmap_rect_skbug4374.cpp Comments Style: s/skbug.com/bug.skia.org/ 2015-11-07 05:29:00 -08:00
drawable.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
drawatlas.cpp center glyphs for text-on-path-via-rsxform 2016-07-12 15:06:33 -07:00
drawatlascolor.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
drawbitmaprect.cpp Stop testing texture-backed bitmaps in drawbitmaprect GM 2016-07-14 09:33:42 -07:00
drawfilter.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
drawlooper.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
drawminibitmaprect.cpp SkLeanWindows.h: #include "Windows.h" fewer places 2016-06-07 17:21:10 -07:00
dropshadowimagefilter.cpp Update DropShadowImageFilter to sk_sp 2016-04-06 08:40:59 -07:00
drrect.cpp C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
dstreadshuffle.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
emboss.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
emptypath.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
extractbitmap.cpp Rein in the use of SkDevice.h 2016-04-20 05:29:51 -07:00
factory.cpp Move off SK_SUPPORT_LEGACY_DATA_FACTORIES. 2016-08-02 14:40:46 -07:00
fadefilter.cpp Update SkColorFilterImageFilter to sk_sp 2016-04-05 11:50:42 -07:00
fatpathfill.cpp switch surface to sk_sp 2016-03-23 18:59:25 -07:00
filltypes.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
filltypespersp.cpp partial switch over to sp usage of shaders 2016-03-09 09:50:50 -08:00
filterbitmap.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
filterfastbounds.cpp Update TileImageFilter to sk_sp 2016-04-15 07:57:40 -07:00
filterindiabox.cpp Remove uses of SkImageDecoder from gms 2016-03-18 12:13:47 -07:00
fontcache.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
fontmgr.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
fontscaler.cpp Factor code to rotate a canvas about a point. 2016-07-12 15:01:19 -07:00
fontscalerdistortable.cpp Factor code to rotate a canvas about a point. 2016-07-12 15:01:19 -07:00
gamma.cpp More removal of SkColorProfileType... 2016-06-20 08:25:02 -07:00
gammacolorfilter.cpp Add SkGammaColorFilter 2016-07-28 09:20:33 -07:00
gammatext.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
getpostextpath.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
giantbitmap.cpp partial switch over to sp usage of shaders 2016-03-09 09:50:50 -08:00
glyph_pos_align.cpp partial switch over to sp usage of shaders 2016-03-09 09:50:50 -08:00
glyph_pos.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
gm_expectations.h Delete dead code. SkBitmapHasher has not been used since gm. 2016-02-16 18:38:15 -08:00
gm.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
gm.h Revert of Disable tail calls inside Simple GM functions. (patchset #1 id:1 of https://codereview.chromium.org/2050473006/ ) 2016-06-09 12:20:25 -07:00
gradient_matrix.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
gradientDirtyLaundry.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
gradients_2pt_conical.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
gradients_no_texture.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
gradients.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
gradtext.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
grayscalejpg.cpp update callsites for Make image factories 2016-03-17 10:51:11 -07:00
hairlines.cpp add hairline with caps gm 2015-12-04 11:08:42 -08:00
hairmodes.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
hardstop_gradients.cpp Update hardstop_gradients GM to include more special cases 2016-08-03 07:58:06 -07:00
hittestpath.cpp remove unused SkCullPoints 2015-12-21 18:37:16 -08:00
image_pict.cpp Adding an SkColorSpace to SkImage_Gpu 2016-07-20 13:55:39 -07:00
image_shader.cpp Fail gracefully if MakeRenderTarget fails 2016-05-12 06:19:37 -07:00
image.cpp Convert SkAutoTUnref<SkData> to sk_sp<SkData>. 2016-08-03 13:32:32 -07:00
image.h
imagealphathreshold.cpp Switch AlphaThresholdFilter over to new onFilterImage interface 2016-04-12 11:02:25 -07:00
imageblur2.cpp Update SkBlurImageFilter to sk_sp 2016-04-04 04:31:25 -07:00
imageblur.cpp Update SkBlurImageFilter to sk_sp 2016-04-04 04:31:25 -07:00
imageblurtiled.cpp Update SkBlurImageFilter to sk_sp 2016-04-04 04:31:25 -07:00
imagefilters.cpp Update MatrixConvolutionImageFilter to sk_sp 2016-04-08 08:01:20 -07:00
imagefiltersbase.cpp remove DownSample imagefilter 2016-06-25 14:30:44 -07:00
imagefiltersclipped.cpp Update DisplacementMapEffect to sk_sp 2016-04-15 07:17:36 -07:00
imagefilterscropexpand.cpp Image filters: fix filtering of transparent black in CFIF. 2016-05-18 07:00:08 -07:00
imagefilterscropped.cpp remove DownSample imagefilter 2016-06-25 14:30:44 -07:00
imagefiltersgraph.cpp remove DownSample imagefilter 2016-06-25 14:30:44 -07:00
imagefiltersscaled.cpp Update DisplacementMapEffect to sk_sp 2016-04-15 07:17:36 -07:00
imagefiltersstroked.cpp Update DropShadowImageFilter to sk_sp 2016-04-06 08:40:59 -07:00
imagefilterstransformed.cpp Factor code to rotate a canvas about a point. 2016-07-12 15:01:19 -07:00
imagefromyuvtextures.cpp Retract GrRenderTarget from GrTestTarget 2016-05-20 11:14:33 -07:00
imagemagnifier.cpp Switch SkMagnifierImageFilter over to new onFilterImage interface 2016-04-14 07:54:04 -07:00
imagemakewithfilter.cpp Adjust size of imagemakewithfilter GM. 2016-05-20 07:59:09 -07:00
imageresizetiled.cpp Update SkMatrixImageFilter to sk_sp 2016-04-05 15:09:00 -07:00
imagescalealigned.cpp switch surface to sk_sp 2016-03-23 18:59:25 -07:00
imagesource2.cpp Update SkImageSource to sk_sp 2016-04-01 09:28:51 -07:00
imagesource.cpp Update SkImageSource to sk_sp 2016-04-01 09:28:51 -07:00
imagetoyuvplanes.cpp switch surface to sk_sp 2016-03-23 18:59:25 -07:00
internal_links.cpp Move off SK_SUPPORT_LEGACY_DATA_FACTORIES. 2016-08-02 14:40:46 -07:00
inversepaths.cpp Extend inverse_paths GM to test dashing 2016-06-10 12:09:59 -07:00
largeglyphblur.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
lattice.cpp Add drawImageLattice() and drawBitmapLattice() APIs 2016-08-02 08:05:56 -07:00
lcdblendmodes.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
lcdoverlap.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
lcdtext.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
lighting.cpp Update LightingImageFilter to sk_sp 2016-04-08 16:28:09 -07:00
lightingshader2.cpp Fixed GM:lightingshader2 size 2016-07-21 12:19:54 -07:00
lightingshader.cpp Changed SkLightingShader API to take in a shader as color source 2016-07-10 18:38:34 -07:00
lightingshaderbevel.cpp Added API for Bevel NormalSource. 2016-07-28 08:58:19 -07:00
linepaths.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
localmatriximagefilter.cpp Update SkMorphology ImageFilters to sk_sp 2016-04-05 09:09:37 -07:00
lumafilter.cpp Reland of [2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o… (patchset #1 id:1 of https://codereview.chromium.org/1821103004/ ) 2016-03-22 10:17:23 -07:00
matrixconvolution.cpp Update MatrixConvolutionImageFilter to sk_sp 2016-04-08 08:01:20 -07:00
matriximagefilter.cpp Update SkMatrixImageFilter to sk_sp 2016-04-05 15:09:00 -07:00
megalooper.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
mipmap.cpp Add new GM that exercises Gray 8 mipmapping and sRGB-ness 2016-06-21 13:40:12 -07:00
mixedtextblobs.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
modecolorfilters.cpp Reland of [2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o… (patchset #1 id:1 of https://codereview.chromium.org/1821103004/ ) 2016-03-22 10:17:23 -07:00
morphology.cpp Update SkMorphology ImageFilters to sk_sp 2016-04-05 09:09:37 -07:00
multipicturedraw.cpp Remove GrLayerHoister 2016-07-13 13:27:16 -07:00
nested.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
ninepatchstretch.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
nonclosedpaths.cpp C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
occludedrrectblur.cpp Minor clean up related to blur mask filters 2016-08-05 07:51:30 -07:00
offsetimagefilter.cpp Update SkImageSource to sk_sp 2016-04-01 09:28:51 -07:00
ovals.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
OverStroke.cpp Add Overstroke gm 2016-08-02 10:35:57 -07:00
patch.cpp Fix lazy coding in ViaSingletonPictures. 2016-04-06 15:01:57 -07:00
patchgrid.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
path_stroke_with_zero_length.cpp path_stroke_with_zero_length: turn off drawFat() by default. 2016-04-06 14:25:35 -07:00
pathcontourstart.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
patheffects.cpp Reland of "switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )" 2016-03-18 11:22:57 -07:00
pathfill.cpp add gm for distance field bug 2016-03-01 09:42:03 -08:00
pathinterior.cpp Use DEF_GM everywhere 2015-12-10 13:31:59 -08:00
pathopsinverse.cpp make tests portable by using 565 compatible colors 2015-07-29 05:27:47 -07:00
pathopsskpclip.cpp Rein in the use of SkDevice.h 2016-04-20 05:29:51 -07:00
pathreverse.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
pdf_never_embed.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
perlinnoise.cpp move setshader to sk_sp, re-using SK_SUPPORT_LEGACY_CREATESHADER_PTR 2016-03-25 09:08:00 -07:00
perspshaders.cpp switch surface to sk_sp 2016-03-23 18:59:25 -07:00
picture.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
pictureimagefilter.cpp Fix bug & add code to catch ImageFilter clearing bugs 2016-05-12 10:46:40 -07:00
pictureimagegenerator.cpp return pictures as sk_sp 2016-03-18 07:25:55 -07:00
pictureshader.cpp move setshader to sk_sp, re-using SK_SUPPORT_LEGACY_CREATESHADER_PTR 2016-03-25 09:08:00 -07:00
pictureshadertile.cpp return pictures as sk_sp 2016-03-18 07:25:55 -07:00
pixelsnap.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
plus.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
points.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
poly2poly.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
polygons.cpp C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
quadpaths.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
recordopts.cpp Change loop bounds to be correct (and much less confusing) 2016-06-23 11:40:14 -07:00
rectangletexture.cpp Retract GrRenderTarget from GrTestTarget 2016-05-20 11:14:33 -07:00
rects.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
repeated_bitmap.cpp update callsites for Make image factories 2016-03-17 10:51:11 -07:00
resizeimagefilter.cpp Update SkMatrixImageFilter to sk_sp 2016-04-05 15:09:00 -07:00
roundrects.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
rrect.cpp make tests portable by using 565 compatible colors 2015-07-29 05:27:47 -07:00
rrects.cpp Move GrPipelineBuilder out of gms & reduce use of GrPipelineBuilder.h 2016-06-23 14:07:00 -07:00
samplerstress.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
scaledstrokes.cpp Fix scaledstrokes GM 2016-04-08 14:03:00 -07:00
shaderbounds.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
shadertext2.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
shadertext3.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
shadertext.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
shadowmaps.cpp Making a sample for shadow maps for more intensive development 2016-08-05 07:55:01 -07:00
shadows.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
shallowgradient.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
shapes.cpp Don't use complex blend mode for shapes gm 2016-06-03 11:56:51 -07:00
showmiplevels.cpp respect srgb gamma when building mips 2016-06-10 11:41:47 -07:00
simpleaaclip.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
SkAnimTimer.h Add blurcircles2 GM 2016-05-13 13:48:48 -07:00
skbug1719.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
skbug_257.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
skbug_4868.cpp SkPDF: fix scalar serialization 2016-02-24 15:46:46 -08:00
skbug_5321.cpp SkPDF: Always give a default advance for glyphs. 2016-07-15 12:54:30 -07:00
SkLinearBitmapPipelineGM.cpp More removal of SkColorProfileType... 2016-06-20 08:25:02 -07:00
smallarc.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
smallimage.cpp work in progress 2014-12-02 14:01:46 -08:00
smallpaths.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
spritebitmap.cpp Update SkBlurImageFilter to sk_sp 2016-04-04 04:31:25 -07:00
srcmode.cpp Retract SkDevice a bit more 2016-04-22 10:57:16 -07:00
stlouisarch.cpp IWYU: 'core' target, files starting A-C. 2015-08-05 13:57:49 -07:00
stringart.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
stroke_rect_shader.cpp Add gm that tests shaded stroked rectangles. 2016-07-06 11:54:59 -07:00
strokedlines.cpp Add new GM to exercise stroked line special case 2016-05-31 06:59:18 -07:00
strokefill.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
strokerect.cpp Enlarge strokerect GM size to reveal hidden content 2016-07-06 06:30:36 -07:00
strokerects.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
strokes.cpp Factor code to rotate a canvas about a point. 2016-07-12 15:01:19 -07:00
stroketext.cpp Reland of "switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )" 2016-03-18 11:22:57 -07:00
subsetshader.cpp SkPDF: properly dedup bitmaps in shaders 2016-04-01 11:51:00 -07:00
surface.cpp Remove SkSurfaceProps gamma-correctness flag entirely. 2016-07-26 11:36:05 -07:00
tablecolorfilter.cpp Update SkColorFilterImageFilter to sk_sp 2016-04-05 11:50:42 -07:00
tallstretchedbitmaps.cpp adjust gm bounds for better content fit 2016-04-11 07:46:38 -07:00
texdata.cpp Introduce GrColorSpaceXform, for gamut conversion on textures 2016-07-18 10:53:52 -07:00
textblob.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
textblobblockreordering.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
textblobcolortrans.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
textblobgeometrychange.cpp Remove SkSurfaceProps gamma-correctness flag entirely. 2016-07-26 11:36:05 -07:00
textbloblooper.cpp switch maskfilters to sk_sp 2016-04-04 10:02:58 -07:00
textblobmixedsizes.cpp Remove SkSurfaceProps gamma-correctness flag entirely. 2016-07-26 11:36:05 -07:00
textblobrandomfont.cpp Remove SkSurfaceProps gamma-correctness flag entirely. 2016-07-26 11:36:05 -07:00
textblobshader.cpp Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )" 2016-03-13 14:13:58 -07:00
textblobtransforms.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
textblobuseaftergpufree.cpp GM: replace boilerplate with macros 2015-09-09 08:16:41 -07:00
texteffects.cpp SkPaint intercept API for SkTextBlob and horizontal text 2016-07-28 09:47:24 -07:00
texturedomaineffect.cpp Introduce GrColorSpaceXform, for gamut conversion on textures 2016-07-18 10:53:52 -07:00
thinrects.cpp C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
thinstrokedrects.cpp Style Change: SkNEW->new; SkDELETE->delete 2015-08-26 13:07:49 -07:00
tiledscaledbitmap.cpp Remove uses of SkImageDecoder from gms 2016-03-18 12:13:47 -07:00
tileimagefilter.cpp Update TileImageFilter to sk_sp 2016-04-15 07:57:40 -07:00
tilemodes_scaled.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
tilemodes.cpp spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
tinybitmap.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
transparency.cpp switch surface to sk_sp 2016-03-23 18:59:25 -07:00
typeface.cpp Disable aliased font test on iOS. 2016-07-13 14:00:39 -07:00
variedtext.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
vertices.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
verttext2.cpp SkTypeface::MakeFromName to take SkFontStyle. 2016-05-31 11:42:37 -07:00
verttext.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
verylargebitmap.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
xfermodeimagefilter.cpp Update SkXfermodeImageFilter to sk_sp 2016-04-05 12:48:34 -07:00
xfermodes2.cpp switch xfermodes over to sk_sp 2016-03-29 11:32:50 -07:00
xfermodes3.cpp More removal of SkColorProfileType... 2016-06-20 08:25:02 -07:00
xfermodes.cpp remove avoid and pixelxor xfermodes 2016-04-05 06:25:14 -07:00
yuvtorgbeffect.cpp Move GrPipelineBuilder out of gms & reduce use of GrPipelineBuilder.h 2016-06-23 14:07:00 -07:00