Commit Graph

729 Commits

Author SHA1 Message Date
bsalomon@google.com
30c174b9ce Make SkPath cache the result of cheapComputeDirection.
Review URL: https://codereview.appspot.com/6810111

git-svn-id: http://skia.googlecode.com/svn/trunk@6394 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 14:36:42 +00:00
reed@google.com
20fb0c7f22 add tests for degenerate serifs to computeDirection
git-svn-id: http://skia.googlecode.com/svn/trunk@6391 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 13:47:39 +00:00
skia.committer@gmail.com
453995e01d Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-10 02:01:26 +00:00
reed@google.com
1ea95be560 add explicit mapScalars and mapMScalars entry-points, instead of just map()
git-svn-id: http://skia.googlecode.com/svn/trunk@6373 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-09 21:39:48 +00:00
reed@google.com
80b577eba6 add quick-n-dirty test for concat on matrix44
Review URL: https://codereview.appspot.com/6827069

git-svn-id: http://skia.googlecode.com/svn/trunk@6371 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-09 21:25:06 +00:00
skia.committer@gmail.com
d9f7503e0c Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6362 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-09 02:01:24 +00:00
reed@google.com
6898d52c37 add centerX() and centerY() to SkIRect (because they made me)
Review URL: https://codereview.appspot.com/6826078

git-svn-id: http://skia.googlecode.com/svn/trunk@6360 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-08 22:36:19 +00:00
skia.committer@gmail.com
72b2e6fff3 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6344 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-08 02:03:56 +00:00
bsalomon@google.com
e8ca6c6e3a Combine multiple intersecting rects in SkClipStack::Iter.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6816104

git-svn-id: http://skia.googlecode.com/svn/trunk@6339 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 21:19:10 +00:00
junov@chromium.org
adc58e4f48 Unit testing for SkTileGrid
Review URL: https://codereview.appspot.com/6827053

git-svn-id: http://skia.googlecode.com/svn/trunk@6331 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 17:38:38 +00:00
reed@google.com
bb094b947b fix SkRegion::intersects(rect) where the part of the rgn that we intersect is
the last run. The old bug was that we did an early exit from the loop because
we were comparing against the next rgn.bottom, instead of the current one.

inspired and fixed by danakj http://code.google.com/p/skia/issues/detail?id=958
Review URL: https://codereview.appspot.com/6812099

git-svn-id: http://skia.googlecode.com/svn/trunk@6327 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 14:23:42 +00:00
mike@reedtribe.org
796a1753d9 fix SkRegion::contains(rect), thanks to danakj and http://code.google.com/p/skia/issues/detail?id=958
git-svn-id: http://skia.googlecode.com/svn/trunk@6324 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 03:39:46 +00:00
mike@reedtribe.org
5a7ae4f5e5 add SkRegion tests, inspired by http://code.google.com/p/skia/issues/detail?id=958
git-svn-id: http://skia.googlecode.com/svn/trunk@6323 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 01:57:32 +00:00
bsalomon@google.com
dbe49f7354 Remove default texture coords / texture matrix
Review URL: https://codereview.appspot.com/6775100

git-svn-id: http://skia.googlecode.com/svn/trunk@6293 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-05 16:36:02 +00:00
epoger@google.com
4adfab8745 Split off SkConsistentChecksum from SkChecksum
as part of https://goto.google.com/ImprovingTheSkiaRebaseliningProcess
Review URL: https://codereview.appspot.com/6820074

git-svn-id: http://skia.googlecode.com/svn/trunk@6270 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-02 18:35:04 +00:00
bsalomon@google.com
b9086a0268 Replace GrMatrix with SkMatrix.
Review URL: https://codereview.appspot.com/6814067

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6245 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 17:43:44 +00:00
bsalomon@google.com
d8b5faca04 Reland r6233 with fix.
git-svn-id: http://skia.googlecode.com/svn/trunk@6241 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 17:02:46 +00:00
bsalomon@google.com
115b06f3d5 Re-revert r6233.
git-svn-id: http://skia.googlecode.com/svn/trunk@6239 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 15:47:55 +00:00
bsalomon@google.com
c3a58f345d Reland r6233 with fix for config conversion texture matrices.
git-svn-id: http://skia.googlecode.com/svn/trunk@6238 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 15:40:47 +00:00
bsalomon@google.com
4b2e1c8807 Rebase gpu_dev up to r5182
git-svn-id: http://skia.googlecode.com/svn/branches/gpu_dev@6187 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-29 20:13:42 +00:00
bsalomon@google.com
2eaaefd7e6 Pass GrCustomStage to key-generation functions and emitCode().
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6819046

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6167 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-29 16:42:11 +00:00
bsalomon@google.com
08283afc26 Rename GrSamplerState to GrEffectStage.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6777053

git-svn-id: http://skia.googlecode.com/svn/trunk@6135 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 13:01:20 +00:00
bsalomon@google.com
46fba0d793 Rename StageKey and related stuff.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6785049

git-svn-id: http://skia.googlecode.com/svn/trunk@6130 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 21:42:05 +00:00
scroggo@google.com
93897637bc Add a callback to cleanup TLS data on Windows.
Add a test to ensure that it works.

BUG: http://code.google.com/p/skia/issues/detail?id=939

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6126 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 19:12:40 +00:00
bsalomon@google.com
396e61fe44 Rename GrProgramStageFactory to GrBackendEffectFactory.
Review URL: https://codereview.appspot.com/6773044

git-svn-id: http://skia.googlecode.com/svn/trunk@6125 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 19:00:29 +00:00
bsalomon@google.com
16e3ddea6a Platform/Engine -> Backend
createPlatform -> wrapBackend

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6123 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 18:43:28 +00:00
bsalomon@google.com
021fc736f8 GrCustomStage Renaming Part 5
Stuff found by searching for "stage".

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6089 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 12:47:42 +00:00
skia.committer@gmail.com
8b0e2340e1 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6088 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 02:01:20 +00:00
reed@google.com
a8790debaa If a path is known to be nonfinite, don't forget that in our autobounds
helper. "Once a non-finite, always a non-finite".

Inspired by crbug/157157
Review URL: https://codereview.appspot.com/6764047

git-svn-id: http://skia.googlecode.com/svn/trunk@6087 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 21:04:04 +00:00
bsalomon@google.com
f271cc7183 GrCustomStage Renaming Part 3
Rename all things *CUSTOM_STAGE*, customStage*, and other miscellany

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6081 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 19:35:13 +00:00
bsalomon@google.com
a469c28c3c CustomStage Renaming Part 1
Search and replace:
GrCustomStage->GrEffect
GrCustomStageTestFactory->GrEffectTestFactory

renamed the cpp/h files from customStage->effect

reordered gypi, #includes, forward decls to maintain alphabetical sort.

manually fixed up some whitespace and linewraps

deleted a commented out #include

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6076 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 18:28:34 +00:00
robertphillips@google.com
158618ec62 Removed degenerate quads from zero radius Chrome-style round rects
https://codereview.appspot.com/6737059/



git-svn-id: http://skia.googlecode.com/svn/trunk@6053 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-23 16:56:56 +00:00
skia.committer@gmail.com
6a748ad8d8 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6013 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 02:01:19 +00:00
robertphillips@google.com
c7a37c7bb2 Place r5997 (make arcto's convex) behind a compiler flag to delay day of reckoning with Webkit baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@6012 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 01:26:18 +00:00
edisonn@google.com
7790912e6e Update CanvasTest to do elementary tests for PDF too.
Review URL: https://codereview.appspot.com/6709053

git-svn-id: http://skia.googlecode.com/svn/trunk@5998 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 15:58:23 +00:00
robertphillips@google.com
b95eaa8d08 Altered arcTo's canonical points to (usually) be convex
https://codereview.appspot.com/6709051/

This will require rebaselining of: degeneratesegments, shadertext & shadertext2



git-svn-id: http://skia.googlecode.com/svn/trunk@5997 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 15:26:12 +00:00
skia.committer@gmail.com
989a95ea77 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 02:01:23 +00:00
junov@chromium.org
ce65f385a0 Fixing refcount leak in SkBitmapHeap caused by collisions in SkFlatDictionary
BUG=http://code.google.com/p/chromium/issues/detail?id=155875
TEST=DeferredCanvas unit test, subtest TestDeferredCanvasBitmapShaderNoLeak
Review URL: https://codereview.appspot.com/6713048

git-svn-id: http://skia.googlecode.com/svn/trunk@5982 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-17 19:36:09 +00:00
bsalomon@google.com
67e78c9e47 Use GrCustomStage to implement color matrix.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6716044

git-svn-id: http://skia.googlecode.com/svn/trunk@5975 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-17 13:36:14 +00:00
skia.committer@gmail.com
f57c01bdcf Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5943 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-13 02:01:56 +00:00
reed@google.com
223d81d882 add experimental test for different 8888->565 blends (disabled)
git-svn-id: http://skia.googlecode.com/svn/trunk@5916 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 14:43:28 +00:00
reed@google.com
97cd69ca23 Fix matrix type in setRectToRect
Review URL: https://codereview.appspot.com/6655055

git-svn-id: http://skia.googlecode.com/svn/trunk@5913 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 14:35:48 +00:00
bsalomon@google.com
3768853169 Revert r3219. r3219 was a revert of r3036. r3036 made extractSubset copy the opaque bit but was reverted because of a partally-loaded jpeg issue in WK which has since been fixed:
https://bugs.webkit.org/show_bug.cgi?id=78239

Related chrome bug: http://code.google.com/p/chromium/issues/detail?id=114107



git-svn-id: http://skia.googlecode.com/svn/trunk@5911 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 13:42:36 +00:00
robertphillips@google.com
ba998f2ddc Turn on GPU AA clipping
https://codereview.appspot.com/6638048/



git-svn-id: http://skia.googlecode.com/svn/trunk@5909 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 11:33:56 +00:00
skia.committer@gmail.com
5b6f91643d Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5908 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 02:01:15 +00:00
junov@chromium.org
8cef67aada Fixing SkDeferredCanvas to not consider paint as opaque when xfermode source coeff depends
on destination pixel value

TEST=DeferredCanvas unit test
BUG=http://code.google.com/p/chromium/issues/detail?id=154748



git-svn-id: http://skia.googlecode.com/svn/trunk@5907 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 20:19:15 +00:00
bsalomon@google.com
0e354aacd8 Remove external matrix feature.
We haven't been testing this for nearly two years.

R=reed@google.com
Review URL: https://codereview.appspot.com/6640044

git-svn-id: http://skia.googlecode.com/svn/trunk@5857 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-08 20:44:25 +00:00
bsalomon@google.com
2fc2359aaa Fix test_small_segments3 path measure test.
Review URL: https://codereview.appspot.com/6601050

git-svn-id: http://skia.googlecode.com/svn/trunk@5792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 19:10:31 +00:00
skia.committer@gmail.com
52c2437c73 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5780 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 02:01:13 +00:00
caryclark@google.com
5987f58036 build iOS with 'make all'
This builds all skia tests by treating iOS tools
as executable applications. A few warnings were
fixed as well.

Removed old trace draw code and remnants.
Review URL: https://codereview.appspot.com/6597063

git-svn-id: http://skia.googlecode.com/svn/trunk@5776 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 18:33:14 +00:00
reed@google.com
21b519d56f catch empty stack in restorefixup called by clipRect
write stress-test for save/clip/restore peephole optimization



git-svn-id: http://skia.googlecode.com/svn/trunk@5774 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 17:42:15 +00:00
reed@google.com
44a42ea8b2 1. remove references to (deprecated) SkGpuCanvas
2. remove references to setDevice (soon to be deprecated)
Review URL: https://codereview.appspot.com/6597055

git-svn-id: http://skia.googlecode.com/svn/trunk@5751 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 17:54:05 +00:00
junov@google.com
52a00cac51 Adding virtual method to SkDeferredCanvas::NotificationClient for signaling when commands are skipped due to the skip on clear optimization.
TEST=DeferredCanvas unit test
BUG=http://code.google.com/p/chromium/issues/detail?id=116840 
Review URL: https://codereview.appspot.com/6590050

git-svn-id: http://skia.googlecode.com/svn/trunk@5747 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 15:27:14 +00:00
bsalomon@google.com
373ebc6345 Suppress some warnings on linux.
R=reed@google.com
Review URL: https://codereview.appspot.com/6572046

git-svn-id: http://skia.googlecode.com/svn/trunk@5687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:08:56 +00:00
bsalomon@google.com
ccaa002dd8 Fix some linux build warnings
Review URL: https://codereview.appspot.com/6571050

git-svn-id: http://skia.googlecode.com/svn/trunk@5675 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 19:55:07 +00:00
scroggo@google.com
a0c2bc2438 Make flattenables no longer depend on global static initializers.
Instead, force all builds to call InitializeFlattenables.

Remove the make_debugger script, which was created to force
rebuilding without global static initializers so that all flattenables
would be linked. It is no longer necessary since all flattenables
will be linked thanks to InitializeFlattenables, which now can (and
must) be called when global static initializers are turned on.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 17:54:46 +00:00
vandebo@chromium.org
251a7667d2 [PDF] Fix name generation - / needs to be escaped.
BUG=chromium 148422

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5641 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 17:50:50 +00:00
reed@google.com
c544325fdb disable experiemental hack to try to speedup floor
git-svn-id: http://skia.googlecode.com/svn/trunk@5636 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 12:15:13 +00:00
skia.committer@gmail.com
4c5ea44803 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5635 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 02:01:01 +00:00
junov@chromium.org
fb10389403 Adding a silent playback option to SkGPipeRead
Testing state consistency after silent playback in CanvasTest indirectly
through SkDeferredCanvas.

BUG=http://code.google.com/p/chromium/issues/detail?id=146178
TEST=CanvasTest unit test, and bench with --mode deferredSilent
Review URL: https://codereview.appspot.com/6542047

git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 19:35:43 +00:00
skia.committer@gmail.com
c1ad022608 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5594 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-19 02:01:47 +00:00
robertphillips@google.com
972bfc4944 Fix for r5587 compiler error (removed ../src/gpu in HashCacheTest.cpp)
git-svn-id: http://skia.googlecode.com/svn/trunk@5588 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 17:30:47 +00:00
robertphillips@google.com
3b57dedc4b Added functor to GrTHashCache to allow discovery of un-reffed resources
http://codereview.appspot.com/6503126/



git-svn-id: http://skia.googlecode.com/svn/trunk@5587 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 17:16:33 +00:00
robertphillips@google.com
968c17ddda fixed compiler complaints
http://codereview.appspot.com/6499124/



git-svn-id: http://skia.googlecode.com/svn/trunk@5565 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-17 12:05:40 +00:00
skia.committer@gmail.com
055c7c299c Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5561 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-15 02:01:41 +00:00
scroggo@google.com
d614c6a4e0 For a picture playback with nothing written, use an empty SkData.
This prevents crashing when attempting to access fOpData.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5550 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 17:26:37 +00:00
reed@google.com
8cae8358f7 fix fragile cubic stepper, where we want to assert that each tesselated segment
is monotonically going down, but the finite math we use cannot ensure that...
so we explicitly pin the y-value after it is calculated.

add unittest that exercises the bug/assert that was found on an SVG site



git-svn-id: http://skia.googlecode.com/svn/trunk@5544 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 15:18:41 +00:00
robertphillips@google.com
178a267a6c Address warnings from clang build bot
http://codereview.appspot.com/6506111/



git-svn-id: http://skia.googlecode.com/svn/trunk@5518 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-13 13:25:30 +00:00
bsalomon@google.com
6d003d1ddc Wrap all GrCustomStage textures in GrTextureAccess, remove StageDesc::fInConfigFlags
Review URL: https://codereview.appspot.com/6494114



git-svn-id: http://skia.googlecode.com/svn/trunk@5485 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 15:45:20 +00:00
rileya@google.com
4813458d89 Make BBoxHierarchy ref-counted, fix leak in RTreeTest.
Review URL: https://codereview.appspot.com/6489108

git-svn-id: http://skia.googlecode.com/svn/trunk@5484 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 15:41:50 +00:00
robertphillips@google.com
bdb1be5994 Added cache stats printout to tests
http://codereview.appspot.com/6495104/



git-svn-id: http://skia.googlecode.com/svn/trunk@5438 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 18:24:43 +00:00
bsalomon@google.com
2d8edaf175 Try r5428 again with fix
git-svn-id: http://skia.googlecode.com/svn/trunk@5431 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 14:47:31 +00:00
bsalomon@google.com
4592df8e91 Revert 5428 and 5429.
git-svn-id: http://skia.googlecode.com/svn/trunk@5430 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 14:20:32 +00:00
bsalomon@google.com
dbbf843dfe Consolidate texture access functions, provide default GrTextureAccess
Review URL: https://codereview.appspot.com/6506086/


git-svn-id: http://skia.googlecode.com/svn/trunk@5428 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 13:54:15 +00:00
skia.committer@gmail.com
6c778164a7 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5410 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-06 02:01:13 +00:00
bsalomon@google.com
100abf49e1 Shut up some Mac (xcode 3) warnings
Review URL: http://codereview.appspot.com/6503053/



git-svn-id: http://skia.googlecode.com/svn/trunk@5402 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 17:40:04 +00:00
rileya@google.com
1f45e934b6 Add R-Tree data structure.
Review URL: https://codereview.appspot.com/6489055

git-svn-id: http://skia.googlecode.com/svn/trunk@5401 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 16:10:59 +00:00
reed@google.com
d7e2782203 truncate our llist w/ null during rewind.
git-svn-id: http://skia.googlecode.com/svn/trunk@5375 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-31 20:17:56 +00:00
skia.committer@gmail.com
a27096b474 Sanitizing source files in Skia_Nightly_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@5346 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-30 14:38:00 +00:00
reed@google.com
1cf58d03a8 add SkWriter32::rewindToOffset() -- used for peephole edits in picture recording
git-svn-id: http://skia.googlecode.com/svn/trunk@5345 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-30 14:03:21 +00:00
bsalomon@google.com
405d0f43d8 In which a series of things around attachToCanvas and writePixels are fixed
Review URL: https://codereview.appspot.com/6506051/



git-svn-id: http://skia.googlecode.com/svn/trunk@5341 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-29 21:26:13 +00:00
djsollen@google.com
c9ab987efc Implement multi-threaded picture playback via cloning.
The CL adds SkPicture.clone() which produces a thread-safe copy by
creating a shallow copy of the thread-safe data within the picture and
a deep copy of the data that is not (e.g. SkPaint).  This implementation
re-flattens the paints when cloning instead of retaining the flattened
paints from the recording process.

Changes were also needed to various classes to ensure thread safety

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5335 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-29 18:52:07 +00:00
bsalomon@google.com
f660187980 Hide GrDrawTarget::Caps's member vars
Review URL: https://codereview.appspot.com/6499044



git-svn-id: http://skia.googlecode.com/svn/trunk@5328 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-28 21:11:35 +00:00
rileya@google.com
5ee3f67ce3 Added an overload of SkTQSort that sorts an array of values, rather than an array of pointers.
Also added some parentheses to all the QSort variants to get rid of a gcc warning.
Review URL: https://codereview.appspot.com/6492044

git-svn-id: http://skia.googlecode.com/svn/trunk@5311 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-28 14:40:49 +00:00
borenet@google.com
98a9e1f958 Change comment in PointTest to refer to GCC bug
git-svn-id: http://skia.googlecode.com/svn/trunk@5285 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-27 13:14:46 +00:00
bsalomon@google.com
a04e8e8424 Do premul and r/b swap conversions in a custom effect
Review URL: https://codereview.appspot.com/6473060/



git-svn-id: http://skia.googlecode.com/svn/trunk@5284 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-27 12:53:13 +00:00
bungeman@google.com
b7b5d93359 Fix PointTest.
https://codereview.appspot.com/6486062/


git-svn-id: http://skia.googlecode.com/svn/trunk@5283 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-24 19:53:58 +00:00
rmistry@google.com
d6176b0dca Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)
This CL is part II of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6474054

git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:14:13 +00:00
robertphillips@google.com
2ea0a231a8 Refactored GrDLinkedList into SkTDLinkedList
http://codereview.appspot.com/6484045/



git-svn-id: http://skia.googlecode.com/svn/trunk@5247 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 11:13:48 +00:00
scroggo@google.com
825bb95d6a Fix GPU-less build.
Review URL: https://codereview.appspot.com/6478046

git-svn-id: http://skia.googlecode.com/svn/trunk@5228 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 15:14:43 +00:00
scroggo@google.com
d5764e8ab7 When copying a bitmap, copy the generation ID.
Review URL: https://codereview.appspot.com/6462084

git-svn-id: http://skia.googlecode.com/svn/trunk@5227 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 15:00:05 +00:00
robertphillips@google.com
a9590fc00c Fixed compilation issue when instance counting is disabled
http://codereview.appspot.com/6462089/



git-svn-id: http://skia.googlecode.com/svn/trunk@5210 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-21 15:16:41 +00:00
bsalomon@google.com
0342a85091 Remove _UPM_ GrPixelConfigs
Review URL: http://codereview.appspot.com/6460113/



git-svn-id: http://skia.googlecode.com/svn/trunk@5196 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 19:22:38 +00:00
bsalomon@google.com
607d08b7db Set LF property on a bunch of files.
Review URL: http://codereview.appspot.com/6461094/




git-svn-id: http://skia.googlecode.com/svn/trunk@5168 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 13:55:09 +00:00
junov@chromium.org
d433c4eb67 Cleaning up deprecated API in SkDeferredCanvas
Review URL: https://codereview.appspot.com/6461077

git-svn-id: http://skia.googlecode.com/svn/trunk@5152 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-17 14:50:16 +00:00
bsalomon@google.com
72f3dca451 Modify Read/WritePixelTests to print one pixel failure for each test case rather than every pixel
Review URL: http://codereview.appspot.com/6450154/



git-svn-id: http://skia.googlecode.com/svn/trunk@5147 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-17 13:32:06 +00:00
reed@google.com
3b3e895df6 remove EdgeType enum. Unimportant distinction, and removing speeds up quickReject
Review URL: https://codereview.appspot.com/6448161

git-svn-id: http://skia.googlecode.com/svn/trunk@5140 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 20:53:31 +00:00
robertphillips@google.com
a22e2117e4 Extended Inst counting to find "unknown" leaked object (SkTMaskGamma)
http://codereview.appspot.com/6453127/



git-svn-id: http://skia.googlecode.com/svn/trunk@5123 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 14:58:06 +00:00
keyar@chromium.org
5bdef29ae0 GrContextFactory can now expose the GLContext it is using.
Review URL: https://codereview.appspot.com/6461081

git-svn-id: http://skia.googlecode.com/svn/trunk@5105 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 22:02:48 +00:00
scroggo@google.com
d5d158b325 Ensure that Pipe does not crash when attempting to draw after endRecording.
Add a test for drawing a bitmap and a bitmapshader after endRecording.

BUG=https://code.google.com/p/skia/issues/detail?id=774&can=3
Test=PipeTest

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5099 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 20:38:28 +00:00
scroggo@google.com
40fbb1810a Fix broken test.
Review URL: https://codereview.appspot.com/6450133

git-svn-id: http://skia.googlecode.com/svn/trunk@5092 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 19:30:20 +00:00
tomhudson@google.com
8afae61a57 Clean up most clang warnings outside animator/
http://codereview.appspot.com/6464058/



git-svn-id: http://skia.googlecode.com/svn/trunk@5079 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 15:03:35 +00:00
junov@chromium.org
9ed02b9da2 Augmenting SkDeferredCanvas notification interface to signal flushes and memory allocations
Renamed SkDeferredCanvas::DeviceContext to SkDeferredCanvas::NotificationClient

BUG=http://code.google.com/p/chromium/issues/detail?id=136828
TEST=Added coverage for new API to DeferredCanvas unit test. Added DeferredCanvas bench test to track deferred canvas overhead cost.
Review URL: https://codereview.appspot.com/6442108

git-svn-id: http://skia.googlecode.com/svn/trunk@5078 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 13:36:26 +00:00
bsalomon@google.com
82aa7482cb Add a zoom filter to Skia. This will be used on ChromeOS to implement the screen magnifier.
Committed on behalf of zork@chromium.org

Review URL: http://codereview.appspot.com/6354065/


git-svn-id: http://skia.googlecode.com/svn/trunk@5056 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:22:17 +00:00
tomhudson@google.com
ed02c4d05e Fix handling of infinite bounds during "fast transforms".
http://codereview.appspot.com/6449125/



git-svn-id: http://skia.googlecode.com/svn/trunk@5042 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-10 14:10:45 +00:00
scroggo@google.com
10dccde54a Make SkGPipe use SkBitmapHeap.
In the single process (or hypothetical cross process/shared address
space) mode, SkGPipe now uses SkBitmapHeap instead of SharedHeap.

Still need to use the shared heap for shaders as well as for cross
process.

TEST=PipeTest

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5008 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 20:43:22 +00:00
reed@google.com
4b163ed2c2 Privatization:
move SkFDot.h to private
move parts of SkMath.h into SkMathPriv.h
Review URL: https://codereview.appspot.com/6461045

git-svn-id: http://skia.googlecode.com/svn/trunk@4997 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 21:35:13 +00:00
djsollen@google.com
21830d9009 Refactor Bitmap Storage for SkPicture using SkPipe's design.
Refactor Picture and Pipe bitmap storage into common data structure

Update SkFlattenable buffers to be more modular.

This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
   their own header.
2. Update and Add new read write methods for better clarity
   and convenience.

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4994 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 19:49:41 +00:00
bsalomon@google.com
a1bf0fffff uniquely name FS functions, add lighting effects to unit test
Review URL: http://codereview.appspot.com/6458080/


git-svn-id: http://skia.googlecode.com/svn/trunk@4992 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 17:36:29 +00:00
robertphillips@google.com
2972bb5fd2 Adding storage of SkPath::fIsOval
http://codereview.appspot.com/6453085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4991 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 17:32:51 +00:00
junov@chromium.org
88e29146c1 Moving DeferredDevice and DeferredGPipeController classes out of the deferred canvas API header
Review URL: https://codereview.appspot.com/6449104

git-svn-id: http://skia.googlecode.com/svn/trunk@4989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 16:48:22 +00:00
djsollen@google.com
c73dd5c688 Update SkFlattenable buffers to be more modular.
This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
   their own header.
2. Update and Add new read write methods for better clarity
   and convenience.

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4980 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 15:54:32 +00:00
junov@chromium.org
3de7acc180 Removing the SkPicture backend from SkDeferredCanvas code
Review URL: https://codereview.appspot.com/6446095

git-svn-id: http://skia.googlecode.com/svn/trunk@4974 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:53:59 +00:00
junov@chromium.org
2e14ba8ceb Adding API to SkGPipe and SkDeferredCanvas for controlling memory usage externally
BUG=http://code.google.com/p/chromium/issues/detail?id=136828
Review URL: https://codereview.appspot.com/6454102

git-svn-id: http://skia.googlecode.com/svn/trunk@4971 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:26:57 +00:00
reed@google.com
e2faf17bcc Even when the pts are restricted to 32K values, we can still overflow computing
a fixed-point coefficient for quadratics. To avoid this, we bias these
coefficients, storing 1/2 of their actual value, and then apply the 2x unbias
in updateQuadratic().

Fixes http://code.google.com/p/chromium/issues/detail?id=140803
Review URL: https://codereview.appspot.com/6450099

git-svn-id: http://skia.googlecode.com/svn/trunk@4960 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-06 19:01:34 +00:00
reed@google.com
d9ee348720 If we lose precision computing sum of the dash intervals, then we can have the
same error when we subtract-in-a-loop with the phase. The result is that we can
read past the end of the array.

To fix this, we just pin the loop counter, and if we exhaust our intervals, we
just treat the phase as 0. Not precisely the exact answer, but we aren't going
to draw this dash correctly anyway, since it contains massive interval values
that will be imprecise given our current float implementation.

Fixes http://code.google.com/p/chromium/issues/detail?id=140642
Review URL: https://codereview.appspot.com/6458088

git-svn-id: http://skia.googlecode.com/svn/trunk@4959 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-06 14:58:35 +00:00
bsalomon@google.com
0a7672f85e Add morphology, convolution, single texture, texture domain effects to new unit test system
Review URL: http://codereview.appspot.com/6442085/




git-svn-id: http://skia.googlecode.com/svn/trunk@4951 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 18:12:20 +00:00
bsalomon@google.com
a68937c950 Move SK_SUPPORT_GPU checks below first #includes in case the macro is defined in SkUserConfig.h rather than by the build system.
git-svn-id: http://skia.googlecode.com/svn/trunk@4948 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 15:00:52 +00:00
bsalomon@google.com
2a48c3adb7 Fix includes files missing in release builds from GrCustomStageUnitTest.h.
Also fix SK_SUPPORT_GPU=0 build breaks in gmmain.cpp and GLProgramsTest.cpp




git-svn-id: http://skia.googlecode.com/svn/trunk@4947 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 14:54:45 +00:00
bsalomon@google.com
d472620458 Registry-based unit test for custom effects
Review URL: http://codereview.appspot.com/6447085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4946 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 14:34:46 +00:00
scroggo@google.com
1554360a95 Store more behavior of SkFlatDictionary in SkFlatController.
Code refactoring for simplicity.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4929 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 18:49:49 +00:00
bsalomon@google.com
c3841b927b Move GL programs unit test code to tests project.
Review URL: http://codereview.appspot.com/6453079/



git-svn-id: http://skia.googlecode.com/svn/trunk@4927 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 18:11:43 +00:00
junov@chromium.org
cd62ecf39a Fixing leak of SkPixelRef object in CanvasTest
Review URL: https://codereview.appspot.com/6441095

git-svn-id: http://skia.googlecode.com/svn/trunk@4925 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 17:43:25 +00:00
borenet@google.com
5a69ef7f10 Disable ReadWriteAlpha test on Android
Failing on Nexus 7

Bug: http://code.google.com/p/skia/issues/detail?id=753
Review URL: https://codereview.appspot.com/6455077

git-svn-id: http://skia.googlecode.com/svn/trunk@4921 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 16:13:23 +00:00
bsalomon@google.com
cf8fb1f6f0 Create GPU-less build of Skia.
git-svn-id: http://skia.googlecode.com/svn/trunk@4912 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 14:03:32 +00:00
robertphillips@google.com
08eacc1447 Added check for aa/bw rect merging
http://codereview.appspot.com/6449079/



git-svn-id: http://skia.googlecode.com/svn/trunk@4907 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 12:49:00 +00:00
reed@google.com
eef938c0a7 check that copied paths have the same segment-masks as their src
git-svn-id: http://skia.googlecode.com/svn/trunk@4898 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 20:01:49 +00:00
scroggo@google.com
0c3e5fe728 Pipe factory names independently from the flattenables using them.
Avoids an issue where a flattenable written twice might be written
differently (the first time the flat data may have a name, whereas
the second time it will have an index).

Also add a test which confirms that identical flattenables will have
the same SkFlatData representation.

BUG=https://code.google.com/p/skia/issues/detail?id=721
TEST=FlatDataTest.cpp

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4896 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 19:34:20 +00:00
bungeman@google.com
c0d3f2f627 Fix units per em test.
git-svn-id: http://skia.googlecode.com/svn/trunk@4873 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 21:39:05 +00:00
robertphillips@google.com
641f8b19a6 Replace GrClip with SkClipStack
http://codereview.appspot.com/6449070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4865 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 19:15:58 +00:00
reed@google.com
4b2af9c91d add getUnitsPerEm() to SkTypeface
git-svn-id: http://skia.googlecode.com/svn/trunk@4863 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 17:24:44 +00:00
robertphillips@google.com
7b11289b4e Added dev- & canv- prefixes to Ganesh bounding boxes to indicate coordinate space
http://codereview.appspot.com/6457061/



git-svn-id: http://skia.googlecode.com/svn/trunk@4856 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 15:18:21 +00:00
robertphillips@google.com
f8d904a7ee GrClip no longer translates its clips (to better mimic SkClipStack's behavior)
http://codereview.appspot.com/6445052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4848 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 12:18:16 +00:00
robertphillips@google.com
c23a63b9e2 Added test to ensure getConservativeBounds' result is clamped to render target
http://codereview.appspot.com/6447063/



git-svn-id: http://skia.googlecode.com/svn/trunk@4846 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 11:47:29 +00:00
djsollen@google.com
7dade42e6f Always store pixels of mutable bitmaps when recording a SkPicture.
Prior to this CL mutable bitmaps only saved a copy of their pixels
if a flag was set at recording time.  That flag has been removed
and the default behavior when recording a mutable bitmap is to
make a copy of it's pixels. This is the only way to ensure that
the pixels are not manipulated before we playback their contents.

However, enabling this behavior breaks the recording of extracted
bitmaps in SkPicture. This is because we currently cache bitmaps
within a picture based only on their pixelRef. This results in
false positive cache hit when drawing an extracted bitmap as it
shares a pixelRef with its orginating bitmap.  Therefore we must
update the index of the bitmap cache to be both the pixelRef AND
the size and offset of the bitmap using those pixels.

BUG=
TEST=extractbitmap.cpp

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:58:23 +00:00
rileya@google.com
589708bf7c Split SkGradientShader into separate files for each gradient subclass.
Review URL: https://codereview.appspot.com/6447049

git-svn-id: http://skia.googlecode.com/svn/trunk@4792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:04:23 +00:00
scroggo@google.com
15011ee5e4 Make SkDeferredCanvas query SkGPipeWriter for space allocated for bitmaps.
SkGPipe now has a method to report how much memory is used for its shared heap.

BUG=http://code.google.com/p/skia/issues/detail?id=738
TEST=DeferredCanvasTest

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4791 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:03:32 +00:00
robertphillips@google.com
cc6493bbef Added ctor to SkClipStack and isEmpty method
http://codereview.appspot.com/6444048/



git-svn-id: http://skia.googlecode.com/svn/trunk@4787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 18:39:13 +00:00
reed@google.com
0bb18bb264 explicitly track if a path is finite or not
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047

git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:20:36 +00:00
junov@chromium.org
b10a6bd0a7 Refactoring how SkDeferredCanvas manages mutable bitmaps
This CL makes the SkGPipe flavor of SkDeferredCanvas properly
decide whether to flush or record mutable bitmaps.  The flushing
is now managed by conditionally switching the canvas to non-deferred
mode, which avoids an unnecessary transient copy of the bitmap.

BUG=http://code.google.com/p/chromium/issues/detail?id=137884
TEST=DeferredCanvas unit test, sub test TestDeferredCanvasMemoryLimit
Review URL: https://codereview.appspot.com/6421060

git-svn-id: http://skia.googlecode.com/svn/trunk@4756 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:27:13 +00:00
robertphillips@google.com
4c2a2f7c5e Added isIntersectionOfRects to SkClipStack
http://codereview.appspot.com/6434050/



git-svn-id: http://skia.googlecode.com/svn/trunk@4745 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 22:07:50 +00:00
scroggo@google.com
dd39488997 Avoid a loop in writeString and writePad by zeroing padding first.
Also add a benchmark to time the new improved writeString. Before
my change the bench took ~1.23ms and afterwards it takes ~.95ms.

Add some testing to ensure that writePad works properly.

TEST=Writer32Test, WriterBench

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4742 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:47:55 +00:00
robertphillips@google.com
607fe077c8 Added bound computation to SkClipStack
http://codereview.appspot.com/6419048/

This will require re-baselining of complexclip* and filltypespersp



git-svn-id: http://skia.googlecode.com/svn/trunk@4730 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 13:54:00 +00:00
reed@google.com
f79430350d add protected method for internal_dispose overrides to jam fRefCnt before
calling destructor.

move SkTRefArray to actually inherit from SkRefCnt
Review URL: https://codereview.appspot.com/6422057

git-svn-id: http://skia.googlecode.com/svn/trunk@4719 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 14:50:38 +00:00
scroggo@google.com
e9617eb352 In SkWriter32::writeString, initialize all memory reserved.
SkFlatData compares data which is sometimes created by writeString.
Initialize all the memory in writeString so it does not compare
uninitialized memory.

See http://code.google.com/p/skia/issues/detail?id=721&thanks=721

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4715 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 13:44:10 +00:00
junov@chromium.org
bfeddae9da Fix unbound memory consumption problem with run away deferred canvases.
With this CL, deferred canvases will trigger a flush when then the 
memory allocated for recording commands (including flattened objects)
exceeds 64MB.

TEST=DeferredCanvas skia unit test, test step TestDeferredCanvasMemoryLimit
BUG=http://code.google.com/p/chromium/issues/detail?id=137884
Review URL: https://codereview.appspot.com/6425053

git-svn-id: http://skia.googlecode.com/svn/trunk@4714 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 13:35:14 +00:00
reed@google.com
a276975a62 check for memory leaks in debug-build
git-svn-id: http://skia.googlecode.com/svn/trunk@4712 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-22 22:33:05 +00:00
reed@google.com
80ba7964cd add SkTRefArray, in hopes that it will enable more sharing between pictureplaybacks
in different threads.



git-svn-id: http://skia.googlecode.com/svn/trunk@4709 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-21 17:31:40 +00:00
robertphillips@google.com
80214e26c5 Made clarifying renamings to SkClipStack's iterators (and added to unit test)
http://codereview.appspot.com/6423051/



git-svn-id: http://skia.googlecode.com/svn/trunk@4692 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 15:33:18 +00:00
junov@chromium.org
426aebc850 Adding new steps to Canvas unit test to validate that the deferred
canvas state coherence test case passes with sequences of draw commands
that trigger flushes and purges of deferred draw commands.

This CL confirms that using SkGPipe fixes the deferred canvas issues that are 
the root problem of crbug.com/133432

BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6416049

git-svn-id: http://skia.googlecode.com/svn/trunk@4687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 13:21:58 +00:00
junov@chromium.org
cff01c5b60 Improving CanvasTest to verify that the destination canvas of an SkDeferredCanvas has the same state as a plain SkCanvas that received the same draw commands.
This new test code shows that the SkGPipe port of SkDeferredCanvas solves problems we were having with SkPicture.
Review URL: https://codereview.appspot.com/6425048

git-svn-id: http://skia.googlecode.com/svn/trunk@4665 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:50:26 +00:00
reed@google.com
d074c3709a Need to apply matrix to advance in generateAdvance (as we already were in generateMetrics)
Fixes b/6833339
Expand existing unittest to detect this (we needed to set both scale and skew on the paint)



git-svn-id: http://skia.googlecode.com/svn/trunk@4647 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 13:45:58 +00:00
robertphillips@google.com
2e41becaa9 fix for non-Windows-specific compiler error in r4624
git-svn-id: http://skia.googlecode.com/svn/trunk@4625 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:19:21 +00:00
robertphillips@google.com
0a78b0f4a2 Refactor SkDeque's iterator and allocation method
http://codereview.appspot.com/6353098/



git-svn-id: http://skia.googlecode.com/svn/trunk@4624 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 16:58:49 +00:00
scroggo@google.com
50ccb0a738 Add a skia method to perform an atomic add.
Complements sk_atomic_inc for when you want to increase by more than one.

This time, use the correct atomic add function on Windows.

Reviewed at https://codereview.appspot.com/6399050/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4623 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 16:51:28 +00:00
junov@chromium.org
4e6dfa5152 Adding bracketing save/restore calls to SkPicture at record time and
preparing tests for enforcing save/restore balancing constraints on SkPicture

Review URL: http://codereview.appspot.com/6354105/



git-svn-id: http://skia.googlecode.com/svn/trunk@4618 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 14:04:59 +00:00
scroggo@google.com
96cbd2c4d2 Revert "Add a method to atomic add."
This reverts commit eb539cf92f487daf9567ffbbba6b6653406d43ae.

BUG=
TEST=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4615 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:22:56 +00:00
scroggo@google.com
e3f84f3911 Add a skia method to perform an atomic add.
Complements sk_atomic_inc for when you want to increase by more than one.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4614 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:13:29 +00:00
vandebo@chromium.org
238be8c7e5 [PDF] Add link annotations.
Review URL: https://codereview.appspot.com/6346100

git-svn-id: http://skia.googlecode.com/svn/trunk@4609 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 20:06:02 +00:00
keyar@chromium.org
b630c6c8b7 Updated make_filepath test to reflect changes in picture_utils. TBR
Review URL: https://codereview.appspot.com/6350105

git-svn-id: http://skia.googlecode.com/svn/trunk@4606 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 18:43:39 +00:00
borenet@google.com
0cb1e2bcae Disable WritePixelsTest on Android
This fails on Xoom.  Re-enable when #634 is fixed.
Review URL: https://codereview.appspot.com/6354099

git-svn-id: http://skia.googlecode.com/svn/trunk@4584 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 19:48:42 +00:00
junov@chromium.org
a6c9e0e02b Cleanup restore offsets at end of SkPicture recording
Review URL: http://codereview.appspot.com/6355099/
TEST=skia unit test CanvasTest, test step TwoClipOps
BUG=https://code.google.com/p/chromium/issues/detail?id=133432



git-svn-id: http://skia.googlecode.com/svn/trunk@4577 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 17:47:34 +00:00
reed@google.com
b0a34d80c5 idea: add annotation to SkPaint
Review URL: https://codereview.appspot.com/6355050

git-svn-id: http://skia.googlecode.com/svn/trunk@4555 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 19:57:55 +00:00
reed@google.com
79382af267 remove debugging printfs
git-svn-id: http://skia.googlecode.com/svn/trunk@4551 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 18:55:23 +00:00
reed@google.com
91bd45967c add SkDataSet class, so SkAnnotation can be more immutable-like
Review URL: https://codereview.appspot.com/6354091

git-svn-id: http://skia.googlecode.com/svn/trunk@4542 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 17:24:49 +00:00
reed@google.com
e2589aeebf Change SkFlatData to have a sentinel value, allowing the Compare function to
not need a loop-end-test.
Review URL: https://codereview.appspot.com/6355086

git-svn-id: http://skia.googlecode.com/svn/trunk@4517 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 19:38:01 +00:00
bsalomon@google.com
4eefe6132c Handle convex paths with degeneracies in cheap direction computation
Review URL: http://codereview.appspot.com/6349085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4515 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 18:28:12 +00:00
robertphillips@google.com
59f46b81f8 Fixed Windows compiler complaints
http://codereview.appspot.com/6392044



git-svn-id: http://skia.googlecode.com/svn/trunk@4511 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 17:30:58 +00:00
keyar@chromium.org
c3d5831e05 Allow specific files and multiple inputs for picture testing tools.
Changed the render_pictures, bench_pictures and test_pictures.py so that multiple inputs can be given. Furthermore, specific files can also be specified.

Unit tests have also been added for picture_utils.cpp.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4488 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 18:44:51 +00:00
mike@reedtribe.org
e60b9106ba add test for SkChecksum
git-svn-id: http://skia.googlecode.com/svn/trunk@4462 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 01:53:07 +00:00
reed@google.com
a63a851afb update test for new NewFromCString behavior
git-svn-id: http://skia.googlecode.com/svn/trunk@4431 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 20:29:00 +00:00
reed@google.com
dbc936dff3 add SkData::NewFromCString()
git-svn-id: http://skia.googlecode.com/svn/trunk@4383 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 15:40:09 +00:00
robertphillips@google.com
b74af872cc Separated Inst counting from the SK_DEBUG #define (now SK_ENABLE_INST_COUNT)
http://codereview.appspot.com/6353047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:41:42 +00:00
djsollen@google.com
edae1416ba Fix metrics test to no longer include the cpp.
The inclusion of the cpp caused linker errors when building skia
components as shared libaries for inclusion in an Android app.
Review URL: https://codereview.appspot.com/6338063

git-svn-id: http://skia.googlecode.com/svn/trunk@4323 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-25 17:01:46 +00:00
bsalomon@google.com
4da34e36cb Add GrMemoryPool as a helper to override operators new/delete
Review URL: http://codereview.appspot.com/6306090/



git-svn-id: http://skia.googlecode.com/svn/trunk@4282 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-19 15:40:27 +00:00
reed@google.com
b59ed51564 add test for http://code.google.com/p/chromium/issues/detail?id=131181
git-svn-id: http://skia.googlecode.com/svn/trunk@4266 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-15 18:26:04 +00:00
schenney@chromium.org
fedd09ba7e Really fix the build.
git-svn-id: http://skia.googlecode.com/svn/trunk@4253 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 18:29:20 +00:00
schenney@chromium.org
aaf1688959 Speculative build fix. Tests do not fail locally.
git-svn-id: http://skia.googlecode.com/svn/trunk@4248 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 17:41:00 +00:00
schenney@chromium.org
7e963605d5 Fix the problem of rendering closePath not properly after a moveTo call in
canvas 2D interface. If there is a polyline, followed by a moveTo and a
closePath, both the moveTo and the closePath should be ignored for the purposes
of drawing, and the polyline should not be closed (unless force closed is true
(for filling, for instance).

Tested for path with both valid and degenerate content, when asked to
consume degenerates and not, force closed and not.

This patch also includes a uni test refactoring to reduce the amount of code
to test path iteration and zero length paths.

BUG=6297049

TEST=tests/PathTest.cpp, testIter method.
Review URL: https://codereview.appspot.com/6300086

git-svn-id: http://skia.googlecode.com/svn/trunk@4247 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 17:05:43 +00:00
reed@google.com
51c62a6cfa add readPtr and writePtr to SkReader32 and SkWriter32
add template helper SkSWriter32, which allocates initial storage buffer
Review URL: https://codereview.appspot.com/6299075

git-svn-id: http://skia.googlecode.com/svn/trunk@4237 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 20:47:53 +00:00
reed@google.com
7886ad3de1 remove SK_CAN_USE_FLOAT (deprecated)
git-svn-id: http://skia.googlecode.com/svn/trunk@4232 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-11 21:21:26 +00:00
djsollen@google.com
94e75ee46a Rename the existing flatten(void*) methods.
This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062

git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-08 18:30:46 +00:00
bsalomon@google.com
df9d656c35 Add SkPath::getVerbs/countVerbs
Review URL: http://codereview.appspot.com/6306053/


git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 21:43:15 +00:00
reed@google.com
83226976b5 extend asAGradient for Conical type (to be implemented by PDF and XPS)
Review URL: https://codereview.appspot.com/6308051

git-svn-id: http://skia.googlecode.com/svn/trunk@4207 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 20:26:47 +00:00
robertphillips@google.com
75b3c9633c Move clientID into texture desc
http://codereview.appspot.com/6305044/



git-svn-id: http://skia.googlecode.com/svn/trunk@4201 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 12:08:45 +00:00
caryclark@google.com
42639cddc3 fix warnings on Mac in tests
Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6301045

git-svn-id: http://skia.googlecode.com/svn/trunk@4175 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-06 12:03:39 +00:00
robertphillips@google.com
977b9c8af3 Instance counting for SkRefCnt-derived objects (w/ CanvasTest fix)
http://codereview.appspot.com/6242070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4170 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-05 19:35:09 +00:00
junov@chromium.org
4866cc0afb Adding option to serialize mutable bitmaps in SkPicture
BUG=http://code.google.com/p/chromium/issues/detail?id=115654
REVIEW=http://codereview.appspot.com/6221066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4130 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 21:23:07 +00:00
robertphillips@google.com
d414406073 Windows compiler complaint cleanup
http://codereview.appspot.com/6262047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4098 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:29:44 +00:00
bsalomon@google.com
5739d2c168 Merge GrGpuGLShaders into its parent class, GrGpuGL
Review URL: http://codereview.appspot.com/6245076/



git-svn-id: http://skia.googlecode.com/svn/trunk@4095 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:07:19 +00:00
epoger@google.com
f123ba9e21 Disable TLSTest for now, to work around http://code.google.com/p/skia/issues/detail?id=619
Review URL: https://codereview.appspot.com/6259056

git-svn-id: http://skia.googlecode.com/svn/trunk@4090 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 13:54:51 +00:00
djsollen@google.com
d2700eec7e Refactor dictionaries for use by entities other than just SkPicture
Review URL: https://codereview.appspot.com/6101043

git-svn-id: http://skia.googlecode.com/svn/trunk@4077 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 16:54:13 +00:00
robertphillips@google.com
00bf06a142 Added cast to get MathTest working on Windows
git-svn-id: http://skia.googlecode.com/svn/trunk@4072 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 15:19:17 +00:00
reed@google.com
c20bc25b6e use (float)(1 << 23) instead of 1.0p+23 since the latter isn't supported in VS
git-svn-id: http://skia.googlecode.com/svn/trunk@4068 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 13:48:14 +00:00
reed@google.com
c3b697298e win can't eat 1.0p+23 syntax for floats :(
git-svn-id: http://skia.googlecode.com/svn/trunk@4067 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:43:59 +00:00
reed@google.com
a7d7461cf0 remove debugf
git-svn-id: http://skia.googlecode.com/svn/trunk@4066 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 12:30:09 +00:00
reed@google.com
744fabad47 addPoly() entry-point, to quickly add MoveTo+N*LineTo (useful in dashing)
Review URL: https://codereview.appspot.com/6256063

git-svn-id: http://skia.googlecode.com/svn/trunk@4061 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 19:54:52 +00:00
reed@google.com
8b06f1a7ff Detect when the caller was hairline AND strokeandfill, and resolve that into FILL
This fixes the unittests on WIN in the trybot for DEPS roll 4048
Review URL: https://codereview.appspot.com/6242057

git-svn-id: http://skia.googlecode.com/svn/trunk@4057 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 12:03:46 +00:00
reed@google.com
b6a4b7363f add
git-svn-id: http://skia.googlecode.com/svn/trunk@4010 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-21 15:27:23 +00:00
bungeman@google.com
a550199c6f CreateTypefaceFromStream for GDI.
http://codereview.appspot.com/5616047/


git-svn-id: http://skia.googlecode.com/svn/trunk@4001 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-18 19:06:41 +00:00
reed@google.com
ebd24962df change SkChunkAlloc to grow its allocations geometrically (not linearly)
plus add a bench and unittest for it.



git-svn-id: http://skia.googlecode.com/svn/trunk@3989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 14:28:11 +00:00
bungeman@google.com
a02bc1519c WeakRefCnt
http://codereview.appspot.com/5649046/


git-svn-id: http://skia.googlecode.com/svn/trunk@3978 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 18:21:56 +00:00
reed@google.com
7b463acd46 speedup SkRect::isFinite() (almost 2x)
add SkRect:set(p0, p1) for quick bounds of 2 points



git-svn-id: http://skia.googlecode.com/svn/trunk@3967 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 13:35:36 +00:00
robertphillips@google.com
6623fcd1ee Convert AAClipCache's GrRects to GrIRects
http://codereview.appspot.com/6210057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 16:47:23 +00:00
reed@google.com
415e76a760 fix Fixed build
git-svn-id: http://skia.googlecode.com/svn/trunk@3937 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 14:32:42 +00:00
reed@google.com
30d90ebe7c Use x*0 instead of x!=x to detect non-finite values, since x*0 also detects infinities
and it is faster (at least faster in SkRect::set).

Add unittest for SkRect::set to see that it correctly detects NaN and infinities.




git-svn-id: http://skia.googlecode.com/svn/trunk@3936 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 14:17:36 +00:00
robertphillips@google.com
706f6212c6 Fixes for Windows Release compiler complaints (overflow in const arith)
http://codereview.appspot.com/6210056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3926 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 17:51:23 +00:00
robertphillips@google.com
4debcac8c3 Debug Windows compiler complaint fixes
http://codereview.appspot.com/6208055/



git-svn-id: http://skia.googlecode.com/svn/trunk@3924 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 16:33:36 +00:00
bungeman@google.com
5548752100 Add bench and test for SkRefCnt.
http://codereview.appspot.com/6195071/

This also adds a cross platform SkThread for testing purposes.


git-svn-id: http://skia.googlecode.com/svn/trunk@3921 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 14:09:24 +00:00
robertphillips@google.com
f105b10926 Made clip mask cache use Scratch Texture system
http://codereview.appspot.com/6210044/



git-svn-id: http://skia.googlecode.com/svn/trunk@3920 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-14 12:18:26 +00:00
reed@google.com
18c464b460 update the nearly_integral calculation to be (a) faster, and (b) to correctly
identify that the AA granularity is 1/4 of a pixel, not 1/16 (along an axis).



git-svn-id: http://skia.googlecode.com/svn/trunk@3919 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-11 20:57:25 +00:00
robertphillips@google.com
f21c704119 fix for r3903 compilation issue
git-svn-id: http://skia.googlecode.com/svn/trunk@3904 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-11 13:01:16 +00:00
robertphillips@google.com
8fff356c85 Made clip mask cache reuse depend on mask size/bounds (instead of render target size)
http://codereview.appspot.com/6190067/



git-svn-id: http://skia.googlecode.com/svn/trunk@3903 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-11 12:53:50 +00:00
robertphillips@google.com
d82f3fae92 Fix for Android ClipCache unit test crash
http://codereview.appspot.com/6199063/



git-svn-id: http://skia.googlecode.com/svn/trunk@3902 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 21:26:48 +00:00
robertphillips@google.com
50b8eadb9f Reverting r3898 due to Android failures
git-svn-id: http://skia.googlecode.com/svn/trunk@3900 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 16:17:58 +00:00
robertphillips@google.com
c3e050f322 Re-enabling ClipCache unit test which now runs on Xoom w/ new tool chain
git-svn-id: http://skia.googlecode.com/svn/trunk@3898 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 15:56:17 +00:00
reed@google.com
7e6c4d1601 add SkPath::isLine(), similar to isRect()
git-svn-id: http://skia.googlecode.com/svn/trunk@3892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 14:05:43 +00:00
robertphillips@google.com
96a162eb71 Disabled new ClipCache unit test pending investigation of Android failures
git-svn-id: http://skia.googlecode.com/svn/trunk@3886 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-09 21:47:03 +00:00
robertphillips@google.com
beeb97c94d Added stack to AA clip mask cache
http://codereview.appspot.com/6201058/



git-svn-id: http://skia.googlecode.com/svn/trunk@3885 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-09 21:15:28 +00:00
robertphillips@google.com
c6ce750c73 Fixed some fixed point build Windows compiler complaints
http://codereview.appspot.com/6197063/



git-svn-id: http://skia.googlecode.com/svn/trunk@3867 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-08 13:15:37 +00:00
reed@google.com
c7a67cb57e Just use std qsort
Review URL: https://codereview.appspot.com/6195052

git-svn-id: http://skia.googlecode.com/svn/trunk@3846 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 14:52:12 +00:00
reed@google.com
0da0627646 fix fixed-point build
git-svn-id: http://skia.googlecode.com/svn/trunk@3837 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-03 20:26:06 +00:00
reed@google.com
99c114e0ac We were numerically overflowing our 16bit coordinates that we communicate
between these two procs. The fixes was in two parts:

1. Just don't draw bitmaps larger than 64K-1 in width or height, since we
   can't represent those coordinates in our transport format (yet).
2. Perform an unsigned shift during the calculation, so we don't get
   sign-extension bleed when packing the two values (X,Y) into our 32bit
   slot.
Review URL: https://codereview.appspot.com/6173046

git-svn-id: http://skia.googlecode.com/svn/trunk@3836 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-03 20:14:26 +00:00
reed@google.com
684119d126 add more tests for rgn::intersects(rect)
git-svn-id: http://skia.googlecode.com/svn/trunk@3820 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 16:52:12 +00:00
reed@google.com
7ab71baf65 add more tests around contains for rects and regions
git-svn-id: http://skia.googlecode.com/svn/trunk@3818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 16:09:21 +00:00
djsollen@google.com
f0a062bc45 Add device to top level N-way canvas.
Review URL: https://codereview.appspot.com/6131062

git-svn-id: http://skia.googlecode.com/svn/trunk@3811 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-01 16:50:25 +00:00
reed@google.com
9d5f76a250 fix bug (and add test) for drawing an inverse-path whose bounds do intersect
the clip, but whose edges do not (e.g. a curve). We used to overdraw a section
(and assert).



git-svn-id: http://skia.googlecode.com/svn/trunk@3809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-01 14:49:28 +00:00
reed@google.com
8a0d8ff854 add tests for how empty regions should behave in intersects() and contains()
Review URL: https://codereview.appspot.com/6134053

git-svn-id: http://skia.googlecode.com/svn/trunk@3795 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 16:28:04 +00:00
mike@reedtribe.org
67c3184a67 add test for contains and intersects, in advance of optimization work
git-svn-id: http://skia.googlecode.com/svn/trunk@3787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-28 20:09:19 +00:00
reed@google.com
ded4414985 Apply fix from #3739 to quads and cubics as well
Fixes http://code.google.com/p/chromium/issues/detail?id=125249
Review URL: https://codereview.appspot.com/6137046

git-svn-id: http://skia.googlecode.com/svn/trunk@3786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-27 20:22:07 +00:00
epoger@google.com
c4ae974db6 Add SkString.contains()
Review URL: https://codereview.appspot.com/6130046

git-svn-id: http://skia.googlecode.com/svn/trunk@3781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-27 17:11:31 +00:00
bsalomon@google.com
69afee1c8f add isSimilarityTransform() and some tests
Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5999050/


git-svn-id: http://skia.googlecode.com/svn/trunk@3762 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-25 15:07:40 +00:00
reed@google.com
1df888bc3a check for numerical imprecision on phase
fixes http://code.google.com/p/chromium/issues/detail?id=124652



git-svn-id: http://skia.googlecode.com/svn/trunk@3761 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-24 22:47:21 +00:00
reed@google.com
e49aca968c add optional storage parameter to SkWriter32
git-svn-id: http://skia.googlecode.com/svn/trunk@3759 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-24 21:12:39 +00:00
reed@google.com
fab1ddd3a8 only add pathmeasure segment if the accumulated length was actually changed,
and not based on if the local length was > 0. This is necessary since 

    assert(delta > 0);  // true
    prevDistance = distance;
    distance += delta;
    assert(distance > prevDistance);    // not always true

Fixes https://bugs.webkit.org/show_bug.cgi?id=78979



git-svn-id: http://skia.googlecode.com/svn/trunk@3739 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-20 15:10:32 +00:00
reed@google.com
5bfa55b1cd fix unused-return-result-warning for invert/getPosTan
git-svn-id: http://skia.googlecode.com/svn/trunk@3733 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-19 18:59:25 +00:00
reed@google.com
8b0a335b6b retarget fonttable tests to use SkTypeface api, rather than (should-be-private) SkFontHost api
git-svn-id: http://skia.googlecode.com/svn/trunk@3732 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-19 18:52:39 +00:00
bsalomon@google.com
6aa2965ca8 Track oval in SkPath
Committed on behalf of Guanqun.Lu@gmail.com

Review URL:http://codereview.appspot.com/6012047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3716 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-18 13:29:52 +00:00
bsalomon@google.com
f3488ebaac Revert r3705 for fixed pt failures.
git-svn-id: http://skia.googlecode.com/svn/trunk@3706 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:38:20 +00:00
bsalomon@google.com
c047d414a4 track oval in SkPath
Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/6012047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3705 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:22:06 +00:00
reed@google.com
a90aa53498 fix clamping when we chop a cubic
Review URL: https://codereview.appspot.com/6039048

git-svn-id: http://skia.googlecode.com/svn/trunk@3691 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 16:27:09 +00:00
robertphillips@google.com
6853e808a4 Addressed more Windows compiler complaint issues
http://codereview.appspot.com/6007056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3689 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 15:50:18 +00:00
bsalomon@google.com
d0b95896d6 Revert r3681 due to fixed point failures in tests.
git-svn-id: http://skia.googlecode.com/svn/trunk@3684 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 14:41:02 +00:00
bsalomon@google.com
8d75bf6ab3 add isSimilarityTransform() and some tests
Committed on behalf of Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5999050/




git-svn-id: http://skia.googlecode.com/svn/trunk@3681 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 14:06:50 +00:00
mike@reedtribe.org
6093e65829 dd DrawPathTest to gyp
add regression tests for bug 533



git-svn-id: http://skia.googlecode.com/svn/trunk@3678 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-14 12:55:17 +00:00
reed@google.com
90c07ea1d0 replace getTotalClipStack() with replayClips()+ClipVisitor
git-svn-id: http://skia.googlecode.com/svn/trunk@3670 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-13 13:50:27 +00:00
djsollen@google.com
2b2ede3e71 Decouple the SkFlattenable from SkReader32/SkWriter32.
The current impl for SkFlattenable read/write buffers is 
that they extend from SkReader32 and SkWriter32, but that
dependency must be abstract if we are to add any other
serialization format.
Review URL: https://codereview.appspot.com/5999045

git-svn-id: http://skia.googlecode.com/svn/trunk@3654 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-12 13:24:04 +00:00
epoger@google.com
94fa43c625 Fix SkPathStroker::lineTo() for line with length SK_ScalarNearlyZero
Review URL: https://codereview.appspot.com/5992077

git-svn-id: http://skia.googlecode.com/svn/trunk@3650 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-11 17:51:01 +00:00