Commit Graph

1419 Commits

Author SHA1 Message Date
commit-bot@chromium.org
d393b17cf3 Retract SkPicture::kOptimizeForClippedPlayback_RecordingFlag from public API
This CL sets the stage for retracting the SkPicture::kOptimizeForClippedPlayback_RecordingFlag flag
from the public API (more work needs to be done in Blink & Chrome). In the new world the only way
to set this flag (and thus instantiate an SkPicture-derived
class) is by passing a factory to the SkPictureRecorder class. This is to get all clients always using
factories so that we can then change the factory call used (i.e., so the factory just creates a BBH) and
do away with the SkPicture-derived classes.

BUG=skia:2315
R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14221 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-16 16:02:10 +00:00
commit-bot@chromium.org
c9b511f0e6 Revert of rebaseline_server: multithreaded loading/diffing of images (https://codereview.chromium.org/235923002/)
Reason for revert:
Caused https://code.google.com/p/skia/issues/detail?id=2423 ('"Deadline exceeded" error when connecting to live rebaseline_server').  Reverting until I can figure it out.

Original issue's description:
> rebaseline_server: multithreaded loading/diffing of images
>
> BUG=skia:2414
> NOTRY=True
>
> Committed: http://code.google.com/p/skia/source/detail?r=14184

R=rmistry@google.com
TBR=rmistry@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2414

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14207 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-15 18:50:12 +00:00
commit-bot@chromium.org
73cb15351f Make sure SkDrawLooper objects can only be allocated on the heap.
Make constructors of SkLayerDrawLooper and SkBlurDrawLooper non-public.
Remove addLayer* methods from SkLayerDrawLooper. SkLayerDrawLooper::Builder is
used to create new objects.
Provide factory method for creating SkBlurDrawLooper.

BUG=2141
R=scroggo@google.com, reed@google.com, djsollen@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14200 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-15 15:48:36 +00:00
commit-bot@chromium.org
280ea8296f rebaseline_server: multithreaded loading/diffing of images
BUG=skia:2414
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14184 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 18:15:29 +00:00
commit-bot@chromium.org
5d0b150257 resize canvas for GM + typo
This change resized the canvas for some GM cases. It is better to show the visual difference in viewer.html for these cases after the CL applied.

BUG=skia:2375
R=reed@google.com, djsollen@google.com

Author: yunchao.he@intel.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14177 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 15:02:19 +00:00
robertphillips@google.com
84b18c7e3e split SkPictureRecorder out of SkPicture
https://codereview.chromium.org/214953003/



git-svn-id: http://skia.googlecode.com/svn/trunk@14171 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-13 19:09:42 +00:00
commit-bot@chromium.org
e93a4c0fea rebaseline_server: fix sorting by perceptual diff column
(SkipBuildbotRuns)
BUG=skia:2410
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14167 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 21:45:41 +00:00
commit-bot@chromium.org
f7efa502d6 Implement intra-frame cacheing in image filters.
When image filters are processed within Skia, they simply do
a blind recursion. This has the side-effect of turning the
DAG into a tree. I.e., nodes visited more than once during
the traversal will be processed more than once.

This change implements a very simple cacheing scheme: a
cache is created before traversing the DAG, and handed
into the processing traversal. Before recursing into a child
in SkImageFilter::filterImage(), the cache is checked for a
hit, and early-out is performed. Otherwise, the node is
processed, and its result bitmap and location (offset) are
cached, but only if it contains two or more children and
thus will be visited again during the traversal.

Currently, the child count is approximated with the
refcount. This is good enough in most cases (and exactly
correct for the Chrome use case). We could add an exact
child count to the image filter, but this will require
violating the immutability of image filters slightly in
order to bump the child count as nodes are connected. I
leave it up to the reviewer to decide which is better.

R=reed@google.com

Author: senorblanco@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14160 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 18:57:00 +00:00
commit-bot@chromium.org
cae54f1f21 remove picture-backed surfaces
BUG=skia:
R=robertphillips@google.com, mtklein@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14159 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 18:34:35 +00:00
commit-bot@chromium.org
28fcae2ec7 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 17:15:40 +00:00
commit-bot@chromium.org
1f75ab9c66 add some .gitignores related to gm and tools
NOTREECHECKS=True
NOTRY=True
R=scroggo@google.com
TBR=scroggo

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14150 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 14:49:50 +00:00
commit-bot@chromium.org
96edc24598 Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 13:47:30 +00:00
commit-bot@chromium.org
d923288e50 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:49:20 +00:00
commit-bot@chromium.org
757ebd20ef Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:36:34 +00:00
reed@google.com
76b12b74ed when getClipBounds returns false, the out-param is uninitialized
BUG=skia:

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14141 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 21:15:30 +00:00
commit-bot@chromium.org
d0b8904521 rebaseline_server: eliminate meaningless 404 errors while waiting for content to load
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=jcgregorio@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14138 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 20:41:13 +00:00
commit-bot@chromium.org
defe6fdbc8 rebaseline_server: allow user to specify which builders to process
BUG=skia:1543,skia:1915
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14131 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 15:05:24 +00:00
commit-bot@chromium.org
149e9a107c Rename kPMColor_SkColorType to kN32_SkColorType.
The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 20:45:29 +00:00
commit-bot@chromium.org
c5d9bb0f67 Initial picture shader implementation
This CL adds an SkPictureShader class to support SkPicture-based
patterns.

The implementation renders the picture into an SkBitmap tile and then
delegates to SkBitmapProcShader for the actual operation.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Committed: http://code.google.com/p/skia/source/detail?r=14085

Author: fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14092 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-08 15:19:34 +00:00
commit-bot@chromium.org
8865d09cf8 Revert of Initial picture shader implementation (https://codereview.chromium.org/221923007/)
Reason for revert:
breaking the buildbots. Subsequent CL only addressed CompareGMs but GenerateGMs are also failing.

Original issue's description:
> Initial picture shader implementation
>
> This CL adds an SkPictureShader class to support SkPicture-based
> patterns.
>
> The implementation renders the picture into an SkBitmap tile and then
> delegates to SkBitmapProcShader for the actual operation.
>
> R=reed@google.com,robertphillips@google.com,bsalomon@google.com
>
> Committed: http://code.google.com/p/skia/source/detail?r=14085

R=bsalomon@google.com, reed@google.com, robertphillips@google.com, fmalita@chromium.org
TBR=bsalomon@google.com, fmalita@chromium.org, reed@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14087 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-07 23:45:31 +00:00
commit-bot@chromium.org
592b2d13c9 Initial picture shader implementation
This CL adds an SkPictureShader class to support SkPicture-based
patterns.

The implementation renders the picture into an SkBitmap tile and then
delegates to SkBitmapProcShader for the actual operation.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14085 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-07 23:11:45 +00:00
commit-bot@chromium.org
c5713e484a clear bitmap in texture domain gm
R=robertphillips@google.com
TBR=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14082 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-07 21:18:46 +00:00
commit-bot@chromium.org
cf2f00872c SkDiscardableMemoryPool to abstract class
Motivation - we want to keep our public headers small.

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

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14063 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-04 16:43:38 +00:00
commit-bot@chromium.org
3eb77e4d5a teach rebaseline_server how to compare results of multiple render_pictures runs
BUG=skia:2230,skia:1942
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14062 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-04 16:40:25 +00:00
commit-bot@chromium.org
6844958fff rebaseline_server: display as much info as possible if expected/actual image is missing
BUG=skia:2368
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14019 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-01 22:16:33 +00:00
commit-bot@chromium.org
58af0c895f Add show_gm_changes script: show change revisions and hashes for a GM
BUG=skia:1920
R=epoger@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14015 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-01 19:03:19 +00:00
commit-bot@chromium.org
9fbbcca1c9 SkPerlinNoiseShader::CreateTubulenceNoise() is misspelled
Add missing 'r'.

BUG=skia:2329
R=bsalomon@google.com, hcm@google.com, sugoi@chromium.org

Author: siglesias@igalia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14008 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-01 16:09:37 +00:00
bungeman@google.com
6eddc77f6a Pass the IDWriteFactory instead of relying on a global creator.
There are different variations or implementations of IDWriteFactory
with different behaviors. Allow the user to specify the factory to use.

R=scottmg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14000 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-31 19:18:07 +00:00
commit-bot@chromium.org
35c03fbf10 Remove scaleToFit from DashPathEffect
BUG=skia:
R=reed@google.com, bsalomon@google.com, scroggo@google.com

Author: egdaniel@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13999 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-31 18:52:51 +00:00
commit-bot@chromium.org
31d0b3d806 rebaseline_server: add --compare-configs option
This allows us to compare GMs between configs across all builders, so we can see the largest deviations between raster and GPU renderings.

BUG=skia:1919
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13991 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-31 15:17:52 +00:00
commit-bot@chromium.org
972f9cd7a0 SK_SUPPORT_LEGACY_GRTYPES to hide duplicate types from SkTypes.h
BUG=skia:
R=bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13982 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-28 17:58:28 +00:00
commit-bot@chromium.org
c0df2fb5d0 rebaseline_server: add option to read actuals from local disk
(SkipBuildbotRuns)
BUG=skia:1908
NOTREECHECKS=True
NOTRY=True
R=halcanary@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13971 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-28 14:28:04 +00:00
commit-bot@chromium.org
a54abdccbd Remove static bmp from shadertext3
R=mtklein@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13959 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-26 21:21:40 +00:00
commit-bot@chromium.org
da0ceb2299 rebaseline_server: delete invalid image files from local disk cache
BUG=skia:2247
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13951 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-26 13:38:29 +00:00
senorblanco@chromium.org
6aeabb1694 Speculative Mac 10.6 fix: disable medium & high filter quality tests.
BUG=skia:
TBR=mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13947 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 21:12:18 +00:00
senorblanco@chromium.org
afb26eef13 Speculative Mac 10.6 fix: remove useless code from matriximagefilter GM.
TBR=mtklein@google.com
BUG=skia:

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13944 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 20:47:29 +00:00
senorblanco@chromium.org
fd0ec2c76a Implement a generic matrix transform image filter.
This will be used in Blink to accommodate matrices that contain
rotation or shearing. This is a generalization of SkResizeImageFilter,
so I've replaced all uses of SkResizeImageFilter in Skia. (It might be
easier to review by diffing it with SkResizeImageFilter, too.)

R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13941 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 17:35:10 +00:00
commit-bot@chromium.org
26632630fd Add GM that tests GrTextureDomain and fix bug where kDecal_Mode gets incorrectly ignored.
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13933 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 15:13:18 +00:00
commit-bot@chromium.org
7b78981b4c gather GM tests which are disabled on Android
BUG=skia:2326
R=borenet@google.com, djsollen@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13922 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-24 20:07:44 +00:00
commit-bot@chromium.org
41056232e4 fix compare_to_expectations command line launch
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13921 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-24 19:51:57 +00:00
commit-bot@chromium.org
a723feec39 Fix 10.6 build: double -> float.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13906 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-24 14:54:04 +00:00
commit-bot@chromium.org
04eff72bf0 Add test cases for small radii to rrect GMs.
BUG=skia:2181
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13905 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-24 14:53:09 +00:00
commit-bot@chromium.org
08f6d86f8e update bitmapshader to avoid potential rendering error for kA8_Config
A local matrix is set to the shader, which will show the potential error for SkCanvas::drawBitmap when the bitmap is kA8_Config, as well as the potential error for drawing a geometry with a bitmapshader who's bitmap is kA8_Config.

A simple case is also added for SkCanvas::drawBitmap when the bitmap is kA8_Config, but there is not shader. Then the drawing area will be colorized by the solid color set in SkPaint.

BUG=skia:2278
BUG=skia:2293
R=reed@google.com, bsalomon@google.com

Author: yunchao.he@intel.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13904 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-24 02:49:48 +00:00
commit-bot@chromium.org
b463d5668a rebaseline_server: rename results.py to compare_to_expectations.py
BUG=skia:1919
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13894 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-21 17:54:14 +00:00
commit-bot@chromium.org
a25c4e4fef rebaseline_server: fix --editable mode
complete revert of https://skia.googlesource.com/skia/+/736be3527214ddbd3dd7e42a89a374c62d98f370

partial revert of https://skia.googlesource.com/skia/+/579942387bed9259b03419c593503022e1399931

and glue made necessary by the above.

(SkipBuildbotRuns)
BUG=skia:2319
NOTREECHECKS=True
NOTRY=True
R=senorblanco@google.com, senorblanco@chromium.org

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13893 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-21 17:30:12 +00:00
commit-bot@chromium.org
b659333bf6 Fixed double offset in resize filter
The fix is trivial, simply remove the extra offset

I added another case to the resizeimagefilter gm and made it so that it looks exactly like the one next to it, so that failure is easy to detect visually.

BUG=skia:
R=senorblanco@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13892 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-21 16:19:28 +00:00
commit-bot@chromium.org
736be35272 rebaseline_server: when first started, tell client results are still being generated
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=senorblanco@google.com, senorblanco@chromium.org

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13879 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-20 18:31:00 +00:00
commit-bot@chromium.org
579942387b rebaseline_server: serve JSON from static file, rather than generating it live
BUG=skia:1455, skia:2230
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13876 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-20 17:27:46 +00:00
commit-bot@chromium.org
b42105a4a2 rebaseline_server: image URLs are relative to JSON file's location
BUG=skia:1455, skia:2230
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13874 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-20 15:27:34 +00:00
commit-bot@chromium.org
e5957f67d0 update comment on setShader to clarify alpha-bitmap behavior in bitmapshaders
BUG=skia:2293
R=bsalomon@google.com, yunchao.he@intel.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13851 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 16:28:12 +00:00
commit-bot@chromium.org
2077427227 Put SimpleOffsetFilter on heap.
Effects want to live on the heap!

BUG=skia:
R=senorblanco@chromium.org, dominikg@chromium.org, scroggo@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13848 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 10:28:27 +00:00
commit-bot@chromium.org
d1c85d2920 rebaseline_server: make intermediate JSON specify base urls for diff images
BUG=skia:1919,skia:2230
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13830 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 14:22:02 +00:00
skia.committer@gmail.com
f0f9f5f904 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13820 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-15 03:02:32 +00:00
senorblanco@chromium.org
118252962f Implement support for expanding crop rects in image filters
NOTE: this patch set is based on https://codereview.chromium.org/189913021/,
and needs that patch to land first.

Until now, crop rects in Skia have only been able to reduce
the size of the destination bounds, but not expand them.
SVG semantics require the latter as well. The heart of
the change is in applyCropRect(), which now assigns each
edge, instead of doing an intersection with the crop rect.

In order to support this (and still work well with tiled
drawing) we need to clip the resulting crop rect to the
clipping region of the filters. This uses the Context struct
previously landed from https://codereview.chromium.org/189913021/.

Many of the pixel loops are not yet ready to handle a
destination rect larger than the source rect. So we provide
a convenience version of applyCropRect() which creates an
offscreen and pads it out with transparent black. Once the
pixel loops and shaders have been fixed to support larger
destination bounds, they should be switched back to the
non-drawing version of applyCropRect().

BUG=skia:
R=bsalomon@google.com, reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=13805

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13809 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 17:44:41 +00:00
senorblanco@chromium.org
29089179a6 Revert "Implement support for expanding crop rects in image filters"
Breaking ImageFilterTests unit test.

TBR=bsalomon@google.com
BUG=skia:

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13806 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 16:48:39 +00:00
senorblanco@chromium.org
0ef0501baf Implement support for expanding crop rects in image filters
NOTE: this patch set is based on https://codereview.chromium.org/189913021/,
and needs that patch to land first.

Until now, crop rects in Skia have only been able to reduce
the size of the destination bounds, but not expand them.
SVG semantics require the latter as well. The heart of
the change is in applyCropRect(), which now assigns each
edge, instead of doing an intersection with the crop rect.

In order to support this (and still work well with tiled
drawing) we need to clip the resulting crop rect to the
clipping region of the filters. This uses the Context struct
previously landed from https://codereview.chromium.org/189913021/.

Many of the pixel loops are not yet ready to handle a
destination rect larger than the source rect. So we provide
a convenience version of applyCropRect() which creates an
offscreen and pads it out with transparent black. Once the
pixel loops and shaders have been fixed to support larger
destination bounds, they should be switched back to the
non-drawing version of applyCropRect().

BUG=skia:
R=bsalomon@google.com, reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13805 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 16:35:08 +00:00
senorblanco@chromium.org
4cb543d605 Implement support for a Context parameter in image filters
Some upcoming work (support for expanding crop rects) requires
the clip bounds to be available during filter traversal. This change
replaces the SkMatrix parameter in the onFilterImage() traversals
with a Context parameter. It contains the CTM, as well as the clip
bounds.

BUG=skia:
R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13803 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 15:44:01 +00:00
reed@google.com
0d30c51c6c check for null-device pixels in onWritePixels, so we don't crash
https://code.google.com/p/chromium/issues/detail?id=352616

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13802 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 14:02:58 +00:00
commit-bot@chromium.org
1037d92bbc Added Z scale when X and Y scale to spot lights and point lights
Z scale is set as the average of X scale and Y scale.

BUG=skia:
R=senorblanco@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13798 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 19:45:41 +00:00
commit-bot@chromium.org
fa5edbe575 Add effect-based clip for nine-patch SkRRects.
BUG=skia:2181
R=jvanverth@google.com, robertphillips@google.com, rmistry@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13794 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 18:01:05 +00:00
commit-bot@chromium.org
addcddeda6 make rebaseline_server client check schema version number
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13792 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 17:44:01 +00:00
commit-bot@chromium.org
ea770f155e add schema version to rebaseline_server intermediate JSON
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13790 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 16:33:36 +00:00
commit-bot@chromium.org
b17ccc992d --dryRun flag for gm
Causes gm to not actually run any tests / create any directories, just print its normal output.  Useful for showing what tests would be run without actually taking the time to run them.

BUG=skia:2294
R=reed@google.com

Author: humper@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13785 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 16:16:36 +00:00
commit-bot@chromium.org
7498d95bde rebaseline_server: generate JSON that can be viewed without a live server
BUG=skia:1919
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13783 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 14:56:29 +00:00
skia.committer@gmail.com
affa77db64 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13782 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 03:02:23 +00:00
commit-bot@chromium.org
641e33b3f6 add gm to show bug in stroked-text in drawPosText
BUG=skia:
R=fmalita@google.com, bungeman@google.com, fmalita@chromium.org

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13777 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 20:31:24 +00:00
reed@google.com
9c135db83d support direct writing to top layer, and hide getTopLayer()
this should remove many of the chrome callers that today call
accessBitmap on the toplayer, so they can read/write those pixels.

The ultimate fix will be to support custom allocation of raster layers
(via GDI/cairo/mac) so we can remove PlatformDevice subclassing in
skia/ext

BUG=skia:
R=bsalomon@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13774 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 18:28:35 +00:00
commit-bot@chromium.org
84cd099704 Clean up SkImageFilter.
Rename more occurences of 'target' to 'kernelOffset'.
This is a follow-up patch to
https://codereview.chromium.org/182983003/

BUG=skia:2187
R=senorblanco@chromium.org

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13768 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 16:36:08 +00:00
commit-bot@chromium.org
8065ec50f1 Add new module for distance field generation.
This improves the speed over the previous method by 10x+, and makes using distance fields practical.

BUG=skia:2173

Committed: http://code.google.com/p/skia/source/detail?r=13729

R=bsalomon@google.com, robertphillips@google.com

Author: jvanverth@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13740 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 15:57:40 +00:00
commit-bot@chromium.org
c5c748c147 Handle rrects with one circular corner and three square corners in GrRRectEffect.
BUG=skia:2181
R=jvanverth@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13739 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 15:54:51 +00:00
commit-bot@chromium.org
b5f3b35645 Revert of Add new module for distance field generation. (https://codereview.chromium.org/178543007/)
Reason for revert:
multiple compile errors

Original issue's description:
> Add new module for distance field generation.
>
> This improves the speed over the previous method by 10x+, and makes using distance fields practical.
>
> BUG=skia:2173
>
> Committed: http://code.google.com/p/skia/source/detail?r=13729

R=bsalomon@google.com, robertphillips@google.com, jvanverth@google.com
TBR=bsalomon@google.com, jvanverth@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2173

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13732 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 20:37:54 +00:00
bsalomon@google.com
b0ba39d1ca Fix no GPU build after r13728
Review URL: https://codereview.chromium.org/193163002

git-svn-id: http://skia.googlecode.com/svn/trunk@13731 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:51:46 +00:00
reed@google.com
b93ba45b58 flag to make kClipToLayer_SaveFlag the default behavior
#define SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG to get the old behavior

The goal is to remove the feature of saveLayer that allows the canvas to draw outside of the top-most layer.

R=robertphillips@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13730 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:47:58 +00:00
commit-bot@chromium.org
bf99824083 Add new module for distance field generation.
This improves the speed over the previous method by 10x+, and makes using distance fields practical.

BUG=skia:2173
R=bsalomon@google.com, robertphillips@google.com

Author: jvanverth@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13729 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:38:51 +00:00
commit-bot@chromium.org
bfce48e0bc reorg iteration code in rrects GM, tightly pack rrects drawn in _effect version.
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13728 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:33:16 +00:00
commit-bot@chromium.org
6e3ee3339c rebaseline_server: disable image magnifier, for huge UI speedup
BUG=skia:2248
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13727 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:12:53 +00:00
commit-bot@chromium.org
5865ec5f3a rebaseline_server: add actual_repo and actual_revision command line options
So, if you want to see divergences from expectations as of https://code.google.com/p/skia-autogen/source/detail?r=29365 , specify --actuals-revision 29365

This is also handy for testing rebaseline_server performance improvements against a static set of results.

BUG=skia:2248
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com, bsalomon@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13726 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 18:09:25 +00:00
commit-bot@chromium.org
ed19107c1b rebaseline_server: fix reload delay when there is client/server clock skew
Currently, if there is >10 second clock skew between client and server, the
client will attempt to reload constantly while the server is still loading
results.

NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13725 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 18:05:15 +00:00
commit-bot@chromium.org
fadc749bd0 rebaseline_server: display how long it took to render the list
BUG=skia:2248
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13720 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 15:36:06 +00:00
commit-bot@chromium.org
cac5fd597f Factory methods for heap-allocated SkImageFilter objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkImageFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@chromium.org, reed@google.com, senorblanco@google.com, senorblanco@chromium.org, bsalomon@google.com, sugoi@chromium.org, zork@chromium.org

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13718 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 10:51:58 +00:00
commit-bot@chromium.org
61f1606236 rebaseline_server: add "show thumbnails" option, and skip display of nonexistent images
BUG=skia:2248,skia:2231
NOTRY=True
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13676 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 19:46:17 +00:00
commit-bot@chromium.org
cabf4b2f36 Unify edge type enums across GrEffect subclasses that clip rendering to a geometry.
BUG=skia:
R=egdaniel@google.com, robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13674 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 18:27:43 +00:00
skia.committer@gmail.com
f1f66c0c86 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13665 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 03:02:06 +00:00
commit-bot@chromium.org
e494dbdec3 The motivation for this CL is to de-clutter SkPicture's beginRecording method.
R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13658 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 19:08:57 +00:00
senorblanco@chromium.org
e09244d463 Apply the CTM to the offset in the slow SkOffsetImageFilter path.
This was being done in the fast path, but not the slow path.

Since I had to rebaseline the offsetimagefilter GM anyway (to accomodate
the new test case), I added a red border around the intersection
of the (transformed) crop rect and clip rect in each sample, beyond
which no pixels should be drawn.

Chrome bug: https://code.google.com/p/chromium/issues/detail?id=346362

BUG=skia:
R=sugoi@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13656 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 19:05:25 +00:00
bsalomon@google.com
707bd60203 Make rrects.cpp compile in no-gpu mode
TBR=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13655 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 16:52:20 +00:00
commit-bot@chromium.org
8cc39a6567 rebaseline_server: better reporting for bad URL fetch
context: https://codereview.chromium.org/183763025/ ('vm_run_skia_try/write_json_summary: run skpdiff within imagediffdb, not on its own')

NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13654 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 16:46:22 +00:00
commit-bot@chromium.org
fbde87f53d Add GM that directly tests GrRRectEffect and add inverse fill version of effect.
BUG=skia:
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13653 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 16:25:34 +00:00
commit-bot@chromium.org
3b98759529 rebaseline_server: keep going on exception in ImagePair.__init__()
BUG=skia:2247
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com
TBR=borenet

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13650 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 00:58:21 +00:00
senorblanco@chromium.org
47d98c8e85 Fix CTM scaling and clipping of SkRectShaderImageFilter.
Pass the CTM as part of the local matrix passed by
SkRectShaderImageFilter. Teach SkPerlinNoiseShader to respect the local
matrix. Embiggen imagefiltersscaled GM size to accommodate the new test
cases.

Note: will require rebaselines of imagefiltersscaled and imagefiltersclipped

R=sugoi@chromium.org
BUG=skia:

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13637 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 14:58:09 +00:00
commit-bot@chromium.org
d85f32ca40 Make GrConvexPolyEffect support inverse fills and non-AA rects
BUG=skia:2151
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13621 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 14:43:26 +00:00
commit-bot@chromium.org
2b3a204bf6 replace gm_fprintf() calls with SkDebugf()
BUG=skia:1221
R=bsalomon@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13613 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 18:45:26 +00:00
commit-bot@chromium.org
8dab8ecc93 rebaseline_server: fix "Results current as of <timestamp>" banner
(SkipBuildbotRuns)
BUG=skia:2232
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13612 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 18:13:07 +00:00
reed@google.com
48f31bdbb3 try to deprecate fFlagsMask from SkLayerDrawLooper
We think we want to move around how flags/fields like linearText and strikeThru
are specified. SkPaint has helpers for nearly all of these, but LayerInfo in
the draw looper just exposes the raw bitfield.

On survey of chrome/android, it appears that no one uses those, so it may be
safe to just remove the feature entirely from the looper.

R=bungeman@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13607 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 14:27:44 +00:00
commit-bot@chromium.org
38aeb0fd7a DM: also run benches once.
Also:
  - make GrMemoryPoolBenches threadsafe
  - some tweaks to various DM code
  - rename GM::shortName() to getName() to match benches and tests

On my desktop, (289 GMs, 617 benches) x 4 configs, 227 tests takes 46s in Debug, 14s in Release.  (Still minutes faster than running tests && bench && gm.)  GPU singlethreading is definitely the limiting factor again; going to reexamine whether that's helpful to thread it again.

BUG=skia:
R=reed@google.com, bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13603 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 23:01:57 +00:00
commit-bot@chromium.org
16f418080f rebaseline_server: use new intermediate JSON format as described in https://goto.google.com/ChangingRbsJson
There are still some places in the frontend (HTML+Javascript) code where
we assume we are handling expectations vs actuals, but there are just a few
and we should be able to remove them easily in a coming CL.
At that point, the frontend will work just as well for displaying any set
of image pairs.

BUG=skia:1919
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13598 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 19:05:20 +00:00
commit-bot@chromium.org
f792a1b207 Builder class for SkLayerRasterizer.
Provide builder class to make SkLayerRasterizer immutable. We have to keep the
addLayer() methods for now because they are used in Chrome. They will be removed
once this changed has been rolled into Chrome.
An added benefit of this is that this class can only be allocated on the heap.

BUG=skia:2187
R=reed@google.com, scroggo@google.com, mtklein@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13590 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 13:27:37 +00:00
commit-bot@chromium.org
d5f032d46b Do not define SK_SUPPORT_DEEPCOPYTO_CONFIG in Skia.
Clean up our callers who depend on the deprecated function.

R=scroggo@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13566 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 18:51:43 +00:00
commit-bot@chromium.org
8a2ad3cae7 add new copyTo version to SkBitmap, which takes SkColorType
BUG=skia:
R=scroggo@google.com, halcanary@google.com, bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-23 03:59:35 +00:00
commit-bot@chromium.org
cb3672ed7f Add effect-based clipping for circular "tab" style rrects.
BUG=skia:2181
R=jvanverth@google.com, robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13548 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 22:41:56 +00:00
commit-bot@chromium.org
727a352f74 Factory methods for heap-allocated SkColorFilter objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkColorFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@google.com, reed@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13539 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 18:46:30 +00:00
commit-bot@chromium.org
7c9d0f3104 Factory methods for heap-allocated SkMaskFilter objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkMaskFilter and its subclasses non-public
and instead provides factory methods for  creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.

BUG=skia:2187
R=scroggo@google.com, mtklein@google.com, reed@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13527 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 10:13:32 +00:00
skia.committer@gmail.com
25c7127c90 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13525 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 03:02:02 +00:00
commit-bot@chromium.org
ed9806f5c9 add SkCanvas::drawDRRect
BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, humper@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13524 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 02:32:36 +00:00
commit-bot@chromium.org
0a2bf90dcc Factory methods for heap-allocated SkPathEffect and SkXfermode objects.
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkPathEffect, SkXfermode and
their subclasses non-public and instead provides factory methods for
creating these objects on the heap. We temporarily keep the constructors
of the following classes public to not break Chrome/Blink:

SkXfermode
SkCornerPathEffect
SkDashPathEffect

BUG=skia:2187
R=scroggo@google.com, reed@google.com, mtklein@google.com, bungeman@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13519 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 20:40:19 +00:00
commit-bot@chromium.org
6285f4f766 Offer single-param version of deepCopyTo -- much easier to migrate to colortypes
BUG=skia:
R=reed@google.com

Author: reed@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13516 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 19:08:07 +00:00
senorblanco@chromium.org
d4d44f08d7 Re-enable imageresizetiled, but skip it in tilegrid and rtree.
This change makes kSkipTiled_Flag also skip --tileGrid and --rtree.
All GMs which were passing kSkipTiled_Flag before were also passing
kSkipPicture_Flag, which also skips tilegrid and rtree, so this should
have no effect on them, but provides a smaller hammer for GMs which
still want to test picture playback, but not tiling.

The exception is magnifier, which was passing only kSkipTiled_Flag,
but magnifier is an odd beast and not web-exposed, so I'm not worried
about reducing its coverage slightly.

R=scroggo@google.com
BUG=skia:

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13514 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 17:17:57 +00:00
senorblanco@chromium.org
897b73f62c Fix CTM application in SkResizeImagefilter; implement bounds traversals.
SkResizeImageFilter resizes all the pixels from its input (subject to
the input's crop rect), but the offset to be applied was incorrect.
It should take the CTM into account, so that the origin of the resize is
the world space origin, unaffected by whatever clipping is applied.

New GM imageresizetiled exercises the behaviour under
impl-side-painting-like conditions, and existing GMs now have resize
cases added.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13506 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-19 22:10:12 +00:00
commit-bot@chromium.org
f679e2b90d rebaseline_server: extract common unittest code, and rename tests/ -> testdata/
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13499 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-19 15:38:13 +00:00
commit-bot@chromium.org
c2f7824436 Analytic rrect clip for cicular corners, radius >= 0.5
BUG=skia:2181
R=robertphillips@google.com, jvanverth@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13498 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-19 15:18:05 +00:00
commit-bot@chromium.org
4d0f008895 rebaseline_server: fail fast if skpdiff binary is not available
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13484 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-18 14:38:22 +00:00
commit-bot@chromium.org
dac522589e replace SkBitmap::Config with SkColorType in gms
add helper installMaskPixels() to SkBitmap

BUG=skia:
R=halcanary@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13482 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-17 21:21:46 +00:00
commit-bot@chromium.org
e5b2af955b Store SkRRects in SkClipStack
BUG=skia:2181
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13465 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-16 13:25:24 +00:00
robertphillips@google.com
7fac718702 Fix valgrind suppressions (again)
https://codereview.chromium.org/166193003/



git-svn-id: http://skia.googlecode.com/svn/trunk@13449 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-14 14:08:05 +00:00
skia.committer@gmail.com
02d6f54616 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13447 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-14 03:02:05 +00:00
commit-bot@chromium.org
35d4872f9a Gyp flag to disable inlining.
To turn off all inlining, rebuild after running the command

$ GYP_DEFINES=skia_disable_inlining=1 ./gyp_skia

Provides an initial value in one GM to avoid an uninitialized variable warning.

BUG=skia:2126
R=scroggo@google.com, mtklein@google.com, tomhudson@google.com

Author: tomhudson@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13437 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 18:36:36 +00:00
commit-bot@chromium.org
536b15ffb0 rebaseline_server: create ImagePairSet-- holds a number of ImagePairs to examine
See https://goto.google.com/ChangingRbsJson and bug 1919 for additional context

BUG=skia:1919
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13434 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 17:17:05 +00:00
commit-bot@chromium.org
c3bd8af6d5 add peekPixels to SkCanvas and SkSurface
fix reference to SkBaseDevice, which was only a problem in no-gpu build

This reverts commit 4fa44a6bf73891b21917fb90d02beef9143bffa3.

R=reed@google.com

Author: reed@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13432 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 17:14:46 +00:00
commit-bot@chromium.org
bda591c739 Revert of add peekPixels to SkCanvas and SkSurface (https://codereview.chromium.org/161733002/)
Reason for revert:
compile issues with gm/xfermodes3

Original issue's description:
> add peekPixels to SkCanvas and SkSurface
>
> clone of https://codereview.chromium.org/159723006/
>
> Committed: https://code.google.com/p/skia/source/detail?r=13427

R=jvanverth@google.com
NOTREECHECKS=true
NOTRY=true

Author: reed@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13428 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 15:29:03 +00:00
mike@reedtribe.org
b2d93a9122 add peekPixels to SkCanvas and SkSurface
clone of https://codereview.chromium.org/159723006/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13427 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-13 15:11:11 +00:00
commit-bot@chromium.org
44546f85d9 Add the perceptual difference metric to the rebaseline server
* Finds the location of the skpdiff binary.
* Calculates the perceptual difference percentage using the skpdiff binary (treats -1 as 0% perceptual similarity).
* Replaces the weightedDiffMeasure in view.html with perceptualDifferent.

BUG=skia:2019
NOTRY=true

Committed: http://code.google.com/p/skia/source/detail?r=13398

R=epoger@google.com

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13410 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 18:21:26 +00:00
robertphillips@google.com
dd31ac470b Fix valgrind suppressions
https://codereview.chromium.org/158493004/



git-svn-id: http://skia.googlecode.com/svn/trunk@13403 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 15:23:21 +00:00
commit-bot@chromium.org
589bd3da34 Revert of Add the perceptual difference metric to the rebaseline server (https://codereview.chromium.org/147453003/)
Reason for revert:
Caused failure in RunGmSelfTests:
http://108.170.219.160:10117/builders/Housekeeper-PerCommit/builds/154/steps/RunGmSelfTests/logs/stdio

Filed:
https://code.google.com/p/skia/issues/detail?id=2160

Original issue's description:
> Add the perceptual difference metric to the rebaseline server
>
> * Finds the location of the skpdiff binary.
> * Calculates the perceptual difference percentage using the skpdiff binary.
> * Replaces the weightedDiffMeasure in view.html with perceptualDifferent.
>
> BUG=skia:2019
> NOTRY=true
>
> Committed: http://code.google.com/p/skia/source/detail?r=13398

R=epoger@google.com
TBR=epoger@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2019

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13399 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 13:30:33 +00:00
commit-bot@chromium.org
af34eb9b74 Add the perceptual difference metric to the rebaseline server
* Finds the location of the skpdiff binary.
* Calculates the perceptual difference percentage using the skpdiff binary.
* Replaces the weightedDiffMeasure in view.html with perceptualDifferent.

BUG=skia:2019
NOTRY=true
R=epoger@google.com

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13398 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 12:33:58 +00:00
commit-bot@chromium.org
9985ef5ed8 rebaseline_server: add ImagePair class, a step towards new intermediate JSON schema
See https://goto.google.com/ChangingRbsJson and bug 1919 for additional context

BUG=skia:1919
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13385 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-10 18:19:30 +00:00
skia.committer@gmail.com
f0b0cda76f Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13376 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-09 03:02:01 +00:00
commit-bot@chromium.org
f053980016 Specialize GrConvexPolyEffect for AA rects, use for AA clip rects.
BUG=skia:2051
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13375 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-08 19:31:05 +00:00
commit-bot@chromium.org
b21fac156d Make GMs aware of what tool they're being run in.
Add a saveLayer set of draws to convex_poly_clip and fix GPU bug where polygon clips don't account for the translation between clip and device space.

BUG=skia:2051
R=robertphillips@google.com, reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13371 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 21:13:11 +00:00
commit-bot@chromium.org
e6af4fb34b rebaseline_server: properly handle unexpected GETs
BUG=skia:2147
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13366 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 18:21:59 +00:00
commit-bot@chromium.org
5e0995e4b3 Revert of Revert "Serialization of SkPictureImageFilter" (https://codereview.chromium.org/153583007/)
Reason for revert:
New SKPs with version20 are in Google Storage due to http://108.170.219.160:10117/builders/Housekeeper-Nightly-RecreateSKPs/builds/22

Original issue's description:
> Revert "Serialization of SkPictureImageFilter"
>
> This reverts commit 227321b30106e57942929eb96fa5bc22544f6c9e.
>
> Revert "Sanitizing source files in Housekeeper-Nightly"
>
> This reverts commit baf28584b7636c01355f8d8d972e06aa7fb66d77.
>
> TBR=robertphillips@google.com,sugoi@google.com
>
> Committed: https://code.google.com/p/skia/source/detail?r=13356

R=robertphillips@google.com, sugoi@google.com, fmalita@google.com, fmalita@chromium.org
TBR=fmalita@chromium.org, fmalita@google.com, robertphillips@google.com, sugoi@google.com
NOTREECHECKS=true
NOTRY=true

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13357 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 12:20:04 +00:00
fmalita@google.com
7713c38dc0 Revert "Serialization of SkPictureImageFilter"
This reverts commit 227321b30106e57942929eb96fa5bc22544f6c9e.

Revert "Sanitizing source files in Housekeeper-Nightly"

This reverts commit baf28584b7636c01355f8d8d972e06aa7fb66d77.

TBR=robertphillips@google.com,sugoi@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13356 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 05:55:39 +00:00
skia.committer@gmail.com
c5acc6c827 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13355 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 03:02:05 +00:00
commit-bot@chromium.org
6f0ba479a8 rebaseline_server: add "show only"/"show all" buttons to some columns
BUG=skia:2143
NOTRY=True
R=bsalomon@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13349 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 20:22:25 +00:00
reed@google.com
d5808bd35a add inital gm for colorfilters
BUG=skia:
R=djsollen@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13346 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 16:53:25 +00:00
commit-bot@chromium.org
1c188ed9fa rebaseline_server: get "image size" working again
BUG=skia:2134
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13343 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 15:17:28 +00:00
senorblanco@chromium.org
67117808ee Fix memory leak in imagefiltersclipped GM (found by valgrind).
TBR=robertphillips

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13334 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-06 00:36:01 +00:00
commit-bot@chromium.org
ae761f7545 Make SkImageFilter methods const.
SkImageFilter had some non-const methods that could all be made const.
This is a first step towards making SkImageFilter immutable.

BUG=skia:2097
R=mtklein@google.com, reed@google.com, robertphillips@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13330 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 22:32:02 +00:00
commit-bot@chromium.org
ceba079e3b rebaseline_server: add bgcolor slider for pixelDiff column
BUG=skia:1904
NOTRY=True
R=robertphillips@google.com, rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13325 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 19:49:17 +00:00
commit-bot@chromium.org
c69b0d0ee5 gm self-test: stop checking stdout and stderr
BUG=skia:1568
NOTRY=True
R=bsalomon@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13324 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 18:44:31 +00:00
senorblanco@chromium.org
c4b12f19a4 Implement correct clipping for image filters.
Image filters in Skia currently clip the size of the the offscreen
bitmap used for filtering to the device clip bounds. This means that
any pixel-moving filter (e.g., blur) has edge artifacts at the clip
boundaries. This is problematic for tiling, where a single SkPicture
is played back with a clip set to the tile boundaries.

By implementing the onFilterBounds() traversal, and using it in
saveLayer() when a filter is present, we can clip the layer to the
expanded clip rect. Note that this requires that the traversal be
performed in reverse as compared to computeFastBounds().  (It's also
done in device space, unlike computeFastBounds()).

New test imagefiltersclipped tests pixel-moving filters when clipped
by various clip rects.
New test imageblurtiled tests tiled (compositor-style) rendering of
blurred text. There should be no artifacts at the tile boundaries.

BUG=337831
R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13323 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 17:51:22 +00:00
reed@google.com
76f10a3bd9 remove SkCanvas::createCompatibleDevice, and add SkCanvas::newSurface
BUG=skia:
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13319 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 15:32:21 +00:00
skia.committer@gmail.com
1dab403e44 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13316 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 03:01:48 +00:00
commit-bot@chromium.org
076f078a5e Add magnifier to rebaseline server.
NOTRY=true
BUG=skia:1917
R=epoger@google.com

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13315 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 22:45:40 +00:00
reed@google.com
11db6fa9b9 convert gm tool to use surfaces instead of devices
BUG=skia:
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13301 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 15:30:57 +00:00
commit-bot@chromium.org
b511be5a9b Add rect clip to convex_poly_clip GM
BUG=skia:2051
R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13300 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 15:09:16 +00:00
commit-bot@chromium.org
6adce6783c Allow GMs to be used as benchmarks. Make convex_poly_clip opt in.
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13279 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-03 14:48:17 +00:00
commit-bot@chromium.org
a343c844ec Add GM with convex polygon clips
BUG=skia:2051
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13262 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-31 14:48:58 +00:00
skia.committer@gmail.com
4c18e9fbb6 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13258 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-31 03:01:59 +00:00
commit-bot@chromium.org
8b0e8ac5f5 Refactor read and write buffers.
Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer
a step each in the hierarchy.

What used to be this:

SkFlattenableWriteBuffer -> SkOrderedWriteBuffer
SkFlattenableReadBuffer  -> SkOrderedReadBuffer
SkFlattenableReadBuffer  -> SkValidatingReadBuffer

is now

SkWriteBuffer
SkReadBuffer -> SkValidatingReadBuffer

Benefits:
  - code is simpler, names are less wordy
  - the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed
  - write buffers are completely devirtualized, important for record speed

This refactoring was mostly mechanical.  You aren't going to find anything
interesting in files with less than 10 lines changed.

BUG=skia:
R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 18:58:24 +00:00
robertphillips@google.com
5fbccb35eb Suppress new valgrind complaint
https://codereview.chromium.org/144853006/



git-svn-id: http://skia.googlecode.com/svn/trunk@13244 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 18:51:29 +00:00