Commit Graph

5722 Commits

Author SHA1 Message Date
sugoi@google.com
5f74cf8c49 Follow up on the previous patch :
- Moved the SkStrokeRec class in its own file
- Replaced SkStroke by SkStrokeRec in Ganesh
- Moved path stroking to the Ganesh level in some cases (everytime it isn't required to do it directly in SkGpuDevice). PathEffect and MaskFilter still require path stroking at the SkGpuDevice for now.
- Renamed static functions in SkPath with proper names

* No functionality shold have changed with this patch. This is a step towards enabling Ganesh Path Renderers to decide whether or not to stroke the path rather than always receiving the stroked path as an input argument.

BUG=chromium:135111
TEST=Try path rendering tests from the gm
Review URL: https://codereview.appspot.com/6946072

git-svn-id: http://skia.googlecode.com/svn/trunk@6861 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 21:16:45 +00:00
bsalomon@google.com
9f6a557548 Remove unused type GrCacheKey
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6947074

git-svn-id: http://skia.googlecode.com/svn/trunk@6858 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 20:44:22 +00:00
reed@google.com
bada64428a Make all colorfilter methods const, in preparation for declaring them
to be immutable and reentrant-safe

git-svn-id: http://skia.googlecode.com/svn/trunk@6856 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 20:21:44 +00:00
reed@google.com
30da745bbf Mark all methods on SkXfermode as const, in preparation for declaring all
xfermodes as immutable/reentrant-safe
Review URL: https://codereview.appspot.com/6941065

git-svn-id: http://skia.googlecode.com/svn/trunk@6855 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 19:55:24 +00:00
scroggo@google.com
82ec0b00f3 Allow setting a scaleFactor in bench_pictures (and render_pictures).
In TiledPictureRenderer and CopyTilesRenderer, do a postTranslate so
the translate is not affected by the scale factor.

Likewise, use clipRegion for tiled renderer so it will be
unaffected by the scale factor.

Respect the viewport for record, playbackCreation, and pipe renderers.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6853 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 19:25:54 +00:00
robertphillips@google.com
6d87557278 3on/3off dashing optimization
https://codereview.appspot.com/6891046/



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

git-svn-id: http://skia.googlecode.com/svn/trunk@6849 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 18:23:58 +00:00
borenet@google.com
3b98bfd402 Address comments for r6822: https://codereview.appspot.com/6946052/
Review URL: https://codereview.appspot.com/6943059

git-svn-id: http://skia.googlecode.com/svn/trunk@6847 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 17:21:04 +00:00
junov@chromium.org
5f8c8f4486 Adding missing oval and roundedRect primitives to SkBBoxRecord
BUG=http://code.google.com/p/skia/issues/detail?id=1014
TEST=gm with --tileGrid
Review URL: https://codereview.appspot.com/6937066

git-svn-id: http://skia.googlecode.com/svn/trunk@6846 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 16:29:34 +00:00
fmalita@google.com
6b18d2471f Limit the maximum number of dash segments per path
https://crbug.com/165432

In order to avoid trivial out-of-memory exploits, cap path dashing at 1000000 segments per path.

R=reed@google.com

BUG=

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6843 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 15:27:30 +00:00
bsalomon@google.com
2882c57910 Fix SampleApp busted images with --picture on windows.
Review URL: https://codereview.appspot.com/6942060

git-svn-id: http://skia.googlecode.com/svn/trunk@6842 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 15:28:56 +00:00
junov@chromium.org
b3470c8c42 Fix line rendering with TileGrid and Rtree
BUG=http://code.google.com/p/skia/issues/detail?id=1014
TEST=gm hairmodes with --tileGrid and --rtree
Review URL: https://codereview.appspot.com/6947056

git-svn-id: http://skia.googlecode.com/svn/trunk@6841 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 14:38:59 +00:00
reed@google.com
9be5727d96 detect out-of-memory when we try to create a mask offscreen
git-svn-id: http://skia.googlecode.com/svn/trunk@6839 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 14:21:38 +00:00
caryclark@google.com
d0deb4fa61 shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@6837 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 13:58:08 +00:00
reed@google.com
ec93bf9233 add 4th test
git-svn-id: http://skia.googlecode.com/svn/trunk@6835 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 13:39:25 +00:00
mike@reedtribe.org
5138638143 change delta to 5, to better show the inset trend
git-svn-id: http://skia.googlecode.com/svn/trunk@6834 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 03:48:12 +00:00
mike@reedtribe.org
c3442d53da move inset out of SkRRect.h for now, and add experimental versions to gm
git-svn-id: http://skia.googlecode.com/svn/trunk@6833 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 02:34:28 +00:00
mike@reedtribe.org
37071640f6 add gm for rrect, and rrect.inset/outset
git-svn-id: http://skia.googlecode.com/svn/trunk@6832 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 02:10:42 +00:00
mike@reedtribe.org
5bff6ec39f if CG fails to decode an image, check to see if it was a problem in the colorspace
git-svn-id: http://skia.googlecode.com/svn/trunk@6830 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-15 12:35:17 +00:00
skia.committer@gmail.com
a7aedfec9e Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6829 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-15 02:03:10 +00:00
junov@chromium.org
4ef4f4a596 Improving comment in SkTileGrid::search
TBR=reed

git-svn-id: http://skia.googlecode.com/svn/trunk@6828 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 22:23:49 +00:00
robertphillips@google.com
12310e42f1 Add new "aarects" bench to establish baseline for aa rect drawing
https://codereview.appspot.com/6941057/



git-svn-id: http://skia.googlecode.com/svn/trunk@6827 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 22:10:30 +00:00
junov@chromium.org
d4a1567c17 Replacing alloca call in SkTileGrid with SkAutoSMalloc
Review URL: https://codereview.appspot.com/6946054

git-svn-id: http://skia.googlecode.com/svn/trunk@6824 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 20:12:51 +00:00
junov@chromium.org
54cae70415 Build fix for windows chromium bots.
git-svn-id: http://skia.googlecode.com/svn/trunk@6823 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 15:57:45 +00:00
borenet@google.com
ddf36e73ac Fix bench_pictures.cfg and add sanity check
Review URL: https://codereview.appspot.com/6946052

git-svn-id: http://skia.googlecode.com/svn/trunk@6822 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 14:56:37 +00:00
robertphillips@google.com
441a005810 Fix r6808 fix & some compiler warnings
https://codereview.appspot.com/6948047/



git-svn-id: http://skia.googlecode.com/svn/trunk@6820 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 13:55:06 +00:00
reed@google.com
f7ef56d910 call lock-pixels once we know we're a sprite
Review URL: https://codereview.appspot.com/6938058

git-svn-id: http://skia.googlecode.com/svn/trunk@6819 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 13:46:53 +00:00
bsalomon@google.com
b68addd39f Use the stencil buffer to avoid temporary alpha clip masks.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6935048

git-svn-id: http://skia.googlecode.com/svn/trunk@6818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 13:36:53 +00:00
reed@google.com
ea033606a0 add per-draw checks for lockcounts
Review URL: https://codereview.appspot.com/6943056

git-svn-id: http://skia.googlecode.com/svn/trunk@6815 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 13:13:55 +00:00
borenet@google.com
8234e5448b Only run bench_pictures once for debug builds
git-svn-id: http://skia.googlecode.com/svn/trunk@6814 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 13:04:24 +00:00
reed@google.com
de1fc47dff use DEF_GM
git-svn-id: http://skia.googlecode.com/svn/trunk@6813 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 12:59:07 +00:00
skia.committer@gmail.com
61b05dcc7e Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 02:02:06 +00:00
robertphillips@google.com
ffbe903bc8 Fix compiler warning as error bug
Unreviewed



git-svn-id: http://skia.googlecode.com/svn/trunk@6808 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-14 00:34:28 +00:00
shawnsingh@chromium.org
f81f97e75b Optimized implementation of SkMatrix44::preScale
preScale() does not need to do a general matrix multiply.  It can do 4x less
arithmetic by directly scaling the columns of the input matrix.
Review URL: https://codereview.appspot.com/6923048

git-svn-id: http://skia.googlecode.com/svn/trunk@6807 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:21:36 +00:00
reed@google.com
a641f3f18e reland 6798 w/ fix for bitmap-as-mask pixel-locking
git-svn-id: http://skia.googlecode.com/svn/trunk@6806 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:16:30 +00:00
scroggo@google.com
cbcef70891 Provide an option to bench drawing individual tiles in bench_pictures.
Provides output like the following:
running bench [1236 12045] androidpolice.skp
  tile_256x256: tile [0,0] out of [5,48]: msecs =   1.00
  tile_256x256: tile [1,0] out of [5,48]: msecs =   1.50
  tile_256x256: tile [2,0] out of [5,48]: msecs =   1.00
  tile_256x256: tile [3,0] out of [5,48]: msecs =   1.50
  tile_256x256: tile [4,0] out of [5,48]: msecs =   2.50
  tile_256x256: tile [0,1] out of [5,48]: msecs =   2.00
  tile_256x256: tile [1,1] out of [5,48]: msecs =   3.50
  tile_256x256: tile [2,1] out of [5,48]: msecs =   3.50
  tile_256x256: tile [3,1] out of [5,48]: msecs =   6.00
  tile_256x256: tile [4,1] out of [5,48]: msecs =   2.50
  tile_256x256: tile [0,2] out of [5,48]: msecs =   2.00

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:09:28 +00:00
scroggo@google.com
c4013c199c In the config name, report the viewport, if one is provided.
Review URL: https://codereview.appspot.com/6942048

git-svn-id: http://skia.googlecode.com/svn/trunk@6804 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:07:08 +00:00
reed@google.com
135e16cd8e revert 6798 (assert in GM)
git-svn-id: http://skia.googlecode.com/svn/trunk@6802 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:53:41 +00:00
reed@google.com
2a3f08b0a7 add debugging flag SK_IGNORE_PIXELREF_SETPRELOCKED for pixelref locks (disabled)
git-svn-id: http://skia.googlecode.com/svn/trunk@6800 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:41:00 +00:00
scroggo@google.com
c0d5e549ab Allow bench_pictures to have its viewport set on the command line.
Instead of drawing the entire (potentially very large) picture, only
draw one viewport's worth.

example:

bench_pictures <skp directory> --viewport 640 480

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6799 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:40:48 +00:00
reed@google.com
1adcf8859c Goal: ensure we always balance lock/unlock pixels calls.
A big caller of lockPixels is setContext in the bitmapshader.

This change replaces beginSession/endSession with adding endContext(), and
adds debugging code to ensure that
1. setContext calls are never nested
2. endContext is always called after each setContext call.
Review URL: https://codereview.appspot.com/6937046

git-svn-id: http://skia.googlecode.com/svn/trunk@6798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:39:56 +00:00
bsalomon@google.com
9f13174da5 Fix oversights in r6793.
git-svn-id: http://skia.googlecode.com/svn/trunk@6794 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:43:56 +00:00
bsalomon@google.com
8d67c0711b Use GrDrawTarget::AutoClipRestore to set temporary irect clips.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6937048

git-svn-id: http://skia.googlecode.com/svn/trunk@6793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:38:14 +00:00
djsollen@google.com
04b5468957 Fix Android SampleApp
Review URL: https://codereview.appspot.com/6949046

git-svn-id: http://skia.googlecode.com/svn/trunk@6792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:07:21 +00:00
bsalomon@google.com
cf939ae548 Add a state bit to GrDrawState that forces coverage to be blended.
Use this mode in GrClipMaskManager.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6945048

git-svn-id: http://skia.googlecode.com/svn/trunk@6790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:59:23 +00:00
jvanverth@google.com
8ffb7046cb Add the original path renderer files and some support files from Android.
Renamed PathRenderer.{cpp,h} to AndroidPathRenderer.{cpp,h} to avoid name
collisions.

http://codereview.appspot.com/6938050/



git-svn-id: http://skia.googlecode.com/svn/trunk@6789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:53:18 +00:00
caryclark@google.com
e7bd5f4041 shape ops work in progress
things work pretty well up to this point
it's time to apply recent deletion of binary code
algorithms to the unary code path

git-svn-id: http://skia.googlecode.com/svn/trunk@6788 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:47:53 +00:00
reed@google.com
dd335aeb5d Change to BDS license (as we did with all the other files that were Apache)
Review URL: https://codereview.appspot.com/6948045

git-svn-id: http://skia.googlecode.com/svn/trunk@6787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:24:05 +00:00
djsollen@google.com
4d3f3cd4f2 Fix android build by removing references to the old sampleApp
Review URL: https://codereview.appspot.com/6949045

git-svn-id: http://skia.googlecode.com/svn/trunk@6786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 18:27:44 +00:00