Commit Graph

993 Commits

Author SHA1 Message Date
robertphillips@google.com
8e679fe023 Added new bench to test out 1xN BitmapProcShaders
https://codereview.appspot.com/7160043/



git-svn-id: http://skia.googlecode.com/svn/trunk@7264 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 19:51:41 +00:00
bsalomon@google.com
68b58c9538 Remove default implementation of GrEffect::isEqual. Make GrSingleTextureEffect abstract.
Review URL: https://codereview.appspot.com/7142049

git-svn-id: http://skia.googlecode.com/svn/trunk@7254 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 16:50:08 +00:00
djsollen@google.com
388974f1dd Remove unused debugger code from SampleApp.
Review URL: https://codereview.appspot.com/7133049

git-svn-id: http://skia.googlecode.com/svn/trunk@7244 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 13:20:01 +00:00
reed@google.com
12fa9bad91 add gm for comparing drawSprite and drawBitmap
git-svn-id: http://skia.googlecode.com/svn/trunk@7235 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 18:54:15 +00:00
epoger@google.com
5a5e29e00d Separate our jsoncpp dependency from Chromium's jsoncpp overrides.
BUG=https://code.google.com/p/skia/issues/detail?id=909
Review URL: https://codereview.appspot.com/7098047

git-svn-id: http://skia.googlecode.com/svn/trunk@7187 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 17:16:51 +00:00
sugoi@google.com
781cc76e0f Implementation of the displacement effect (both CPU and GPU)
TEST=Added new GM called "displacement"
Review URL: https://codereview.appspot.com/7058075

git-svn-id: http://skia.googlecode.com/svn/trunk@7182 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 15:40:19 +00:00
humper@google.com
7af56bee17 Runtime configuration system for skia. This will allow developers to control settings at launch time without relying on compile-time flags or recompilation. It can be used to turn features on and off, as well as to control numeric quantities to 'tune' algorithms. Once I make sure it's working across all platforms I'll send out a quick tutorial on its use.
Review URL: https://codereview.appspot.com/7098051

git-svn-id: http://skia.googlecode.com/svn/trunk@7158 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 18:49:19 +00:00
bsalomon@google.com
e197cbf9a3 Change signature of SkShader::asNewEffect(), implement for SkBitmapProcShader.
Review URL: https://codereview.appspot.com/7086051

git-svn-id: http://skia.googlecode.com/svn/trunk@7153 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 16:46:26 +00:00
jvanverth@google.com
74dda9018e This takes the convex path tesselator from the Android code and hooks it into a
GrPathRenderer. GrAndroidPathRenderer is activated by gyp flag 'skia_android_path_rendering'.

A few changes to get this to work:
- Had to change SkPaint* param to SkStrokeRec& in ConvexPathVertices()
- Had to copy the vertex buffer created by the Android code to GrDrawTarget-generated vertex buffer, and convert float alpha to GrColor for AA paths


git-svn-id: http://skia.googlecode.com/svn/trunk@7110 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-09 21:04:52 +00:00
bsalomon@google.com
57585fa2c4 Turn off WarnAsError when building ANGLE projects on windows.
git-svn-id: http://skia.googlecode.com/svn/trunk@7096 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-08 21:46:05 +00:00
bsalomon@google.com
1d03ba98d3 Turn off warnings-as-error on 64bit windows build due to many size_t-related warnings.
git-svn-id: http://skia.googlecode.com/svn/trunk@7095 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-08 20:40:22 +00:00
bsalomon@google.com
50c79d886b Enable warnings-as-errors on Windows.
Review URL: https://codereview.appspot.com/7066054

git-svn-id: http://skia.googlecode.com/svn/trunk@7094 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-08 20:31:53 +00:00
reed@google.com
4cbb3a181e disable warnings-as-error for JSON code, which has warnings (at least on mac)
Review URL: https://codereview.appspot.com/7064053

git-svn-id: http://skia.googlecode.com/svn/trunk@7068 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 20:51:13 +00:00
humper@google.com
fe0d680bcc disable werror on 64 bit
BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@7066 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 20:28:16 +00:00
humper@google.com
af2bd7bdf5 hopefully fix gyp mistake for iOS
BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@7058 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 19:02:46 +00:00
bsalomon@google.com
21cbec4870 Remove GrTDArray.
Two dynamic array classes is enough.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@7053 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 17:23:00 +00:00
humper@google.com
05af1afd42 eliminate all warnings in non-thirdparty code on mac
Most of these issues were due to functions whose definitions appear in header files; I changed those functions to be 'static inline' instead of just 'static' or 'inline', which kills the warning for such functions.

Other functions that were static or anonymous-namespaced but were unused in cpp files were probably called at some point but are no longer; someone who knows more than I do should probably scrub all the functions I either deleted or #if 0'ed out and make sure that the right thing is happening here.

Lots of unused variables removed, and one nasty const issue handled.

There remains a single warning in thirdparty/externals/cityhash/src/city.cc on line 146 related to a signed/unsigned mismatch.  I don't know if we have control over this library so I didn't fix this one, but perhaps someone could do something about that one.

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@7051 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 16:47:43 +00:00
humper@google.com
f515ffc3d4 Show the paint's typeface information in the details pane of the debugger.
Also add a convenience constructor for SkMemoryStream that takes the SkData directly
(instead of having to construct an empty one and call setData).
Review URL: https://codereview.appspot.com/7065045

git-svn-id: http://skia.googlecode.com/svn/trunk@7048 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 15:48:19 +00:00
sugoi@google.com
e3453cbd20 This CL introduces a new path renderer.
Here are the characteristics :
- It uses the original path, before stroking
- It supports traight lines only (no curves)
- It supports butt or square caps only
- It supports miter or bevel joins only
- No AA support
Support for these will be added step by step later on.

A first pass at the benchmarks on my linux machine gave me these approximate speed improvements (running all bench with the option '--forceAA 0') :
path_stroke_small_long_line 4X
path_stroke_small_sawtooth 4X
path_stroke_big_rect 4X
path_stroke_small_rect 6X
path_stroke_big_triangle 4X
path_stroke_small_triangle 10X
lines_1_BW 1.5X
dashline_2_square 1.5X
dashline_1_square 1.5X

Also note that I can't submit this code until GrDrawTarget::isOpaque() is implemented, unless I just disable my renderer completely for now.

BUG=chromium:135111
TEST=The following gms are affected and may require rebaselining : lineclosepath, linepath, strokes_poly
Review URL: https://codereview.appspot.com/7026049

git-svn-id: http://skia.googlecode.com/svn/trunk@7047 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-07 14:26:40 +00:00
reed@google.com
ac0d47ecb8 move include of src/effects into general, and out of gpu-specific
git-svn-id: http://skia.googlecode.com/svn/trunk@7037 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 23:06:44 +00:00
humper@google.com
7c7292c607 Added a new function to directly generate a blurred rectangle analytically.
Added two new microbenchmarks to demonstrate speedup over existing BlurSeparable approach.

Added new GM tests for blurred rectangles. 
Review URL: https://codereview.appspot.com/7037050

git-svn-id: http://skia.googlecode.com/svn/trunk@7034 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 20:29:03 +00:00
caryclark@google.com
6d0032a8ec shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@7031 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 19:41:13 +00:00
bsalomon@google.com
11f20d6270 Remove GrInstanceCounter.
R=reed@google.com
Review URL: https://codereview.appspot.com/6849125

git-svn-id: http://skia.googlecode.com/svn/trunk@6972 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-02 19:57:10 +00:00
mike@reedtribe.org
dc73354e8d add SampleRotatedCircles.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@6933 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-22 20:54:18 +00:00
bsalomon@google.com
0797c2ccea Reland 6914 w/ fixes.
git-svn-id: http://skia.googlecode.com/svn/trunk@6916 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 15:13:01 +00:00
bsalomon@google.com
0b6ad2297f Revert 6914 to fix build issues.
git-svn-id: http://skia.googlecode.com/svn/trunk@6915 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 14:23:26 +00:00
bsalomon@google.com
4b86e3428b Simplify cache IDs and keys.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6954047

git-svn-id: http://skia.googlecode.com/svn/trunk@6914 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 14:18:10 +00:00
epoger@google.com
ee8a8e3931 Re-land r6843 with copied gyp file to (hopefully) fix Windows build
BUG=https://code.google.com/p/skia/issues/detail?id=1023
Review URL: https://codereview.appspot.com/6943073

git-svn-id: http://skia.googlecode.com/svn/trunk@6880 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-18 19:13:49 +00:00
jvanverth@google.com
24b4f97d00 Add AndroidPathRenderer to experimental gyp and get it compiling with Skia code.
https://codereview.appspot.com/6938074/


git-svn-id: http://skia.googlecode.com/svn/trunk@6874 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-18 14:13:46 +00:00
robertphillips@google.com
4e18c7a9bb Add RRect GM
https://codereview.appspot.com/6945063/



git-svn-id: http://skia.googlecode.com/svn/trunk@6866 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 21:48:19 +00:00
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
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
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
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
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
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
junov@chromium.org
3cb834bd27 Modifying SkTileGrid to support arbitrary query rectangles.
Exposing SkTileGrid functionality in the public API through SkTileGridPicture.
This patch also makes TileGrid and Rtree testable in gm, which revealed errors.

TEST=gm with '--tileGrid'
BUG=http://code.google.com/p/chromium/issues/detail?id=164636
Review URL: https://codereview.appspot.com/6933044

git-svn-id: http://skia.googlecode.com/svn/trunk@6783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:39:53 +00:00
reed@google.com
4c1f091b68 kill unused SkFlipPixelRef
Review URL: https://codereview.appspot.com/6949043

git-svn-id: http://skia.googlecode.com/svn/trunk@6781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:35:37 +00:00
epoger@google.com
31114c69f3 Create SkBitmapChecksummer and associated SkBitmapTransformer
As needed to start capturing gm image checksums.
Review URL: https://codereview.appspot.com/6920050

git-svn-id: http://skia.googlecode.com/svn/trunk@6759 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 17:22:23 +00:00
bsalomon@google.com
45a15f551b Modifications to GrPatherRenderer(Chain) interfaces to support clip mask manager.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6904069

git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 19:10:17 +00:00
robertphillips@google.com
d3d377f1d6 Update filter tool to write out paths to .cpp file
https://codereview.appspot.com/6843125/



git-svn-id: http://skia.googlecode.com/svn/trunk@6714 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-07 20:56:13 +00:00
epoger@google.com
7346df55c8 utils.gyp: add SkCityHash.h, delete SkConsistentChecksum.h
Review URL: https://codereview.appspot.com/6906050

git-svn-id: http://skia.googlecode.com/svn/trunk@6709 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-07 19:06:11 +00:00
epoger@google.com
0bba6bd78a Replace SkConsistentChecksum with SkCityHash (now including CityHash via DEPS)
Alternative to https://codereview.appspot.com/6847087/ ('Change SkConsistentChecksum to use SuperFastHash')
Review URL: https://codereview.appspot.com/6867060

git-svn-id: http://skia.googlecode.com/svn/trunk@6701 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-07 15:12:01 +00:00
bsalomon@google.com
170bd792e1 Move GrReducedClip to its own files.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6891045

git-svn-id: http://skia.googlecode.com/svn/trunk@6686 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-05 22:26:11 +00:00
bungeman@google.com
e3c8ddfd03 Update skdiff.
https://codereview.appspot.com/6850115/


git-svn-id: http://skia.googlecode.com/svn/trunk@6681 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-05 20:13:12 +00:00
rmistry@google.com
7cdea64233 The goal is to make the ClangCompile buildstep in the Housekeeping bot turn red if there is a warning.
Review URL: https://codereview.appspot.com/6868055

git-svn-id: http://skia.googlecode.com/svn/trunk@6674 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-05 14:56:08 +00:00
djsollen@google.com
fdabcb511d Add missing SK_API definition at request of Chromium callers
Review URL: https://codereview.appspot.com/6878050

git-svn-id: http://skia.googlecode.com/svn/trunk@6671 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-05 06:15:42 +00:00
reed@google.com
b1c8827321 add gm/pathinterior.cpp in advance of cary's path api
git-svn-id: http://skia.googlecode.com/svn/trunk@6668 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-04 22:52:28 +00:00
senorblanco@chromium.org
4a9a612b52 Pull SkMergeImageFilter out into its own file.
Review URL: https://codereview.appspot.com/6873052

git-svn-id: http://skia.googlecode.com/svn/trunk@6662 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-04 14:18:50 +00:00
reed@google.com
7d68335eb4 add getTypes() to SkMatrix44, to cache how complex the matrix is.
add bench

optimize operator== by performing 4 compares in a row before checking
optimize setconcat by noting when we can write the answer directly into this

At least on this macbook, I had to mark helpers like isIdentity() as inline to get them inlined.
Review URL: https://codereview.appspot.com/6863053

git-svn-id: http://skia.googlecode.com/svn/trunk@6655 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 21:19:52 +00:00
bsalomon@google.com
bbe52908a2 Add SkTLList, linked list class implemented on top of the internal llist class.
R=robertphillips@google.com
Committed: https://code.google.com/p/skia/source/detail?r=6644
Review URL: https://codereview.appspot.com/6869049

git-svn-id: http://skia.googlecode.com/svn/trunk@6647 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 18:01:45 +00:00
bsalomon@google.com
08cb7286c6 Revert change accidentally committed.
git-svn-id: http://skia.googlecode.com/svn/trunk@6645 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 15:59:52 +00:00
bsalomon@google.com
d29902e0d7 Add SkTLList, linked list class implemented on top of the internal llist class.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6869049

git-svn-id: http://skia.googlecode.com/svn/trunk@6644 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 15:54:12 +00:00
bsalomon@google.com
42619d8df2 Rename SkTDLinkedList to SkTInternalLinked list, add some methods useful for forthcoming SkTLList.
Review URL: https://codereview.appspot.com/6858101

git-svn-id: http://skia.googlecode.com/svn/trunk@6643 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-03 14:54:59 +00:00
scroggo@google.com
9f686f3639 Create a factory to decode an SkBitmap from an SkData.
Add a test and a GM for the factory, and a PNG file for it to decode.
The PNG file is copyright-free, obtained from
http://openclipart.org/detail/29213/paper-plane-by-ddoo

In cmykjpeg, do not attempt to decode in the constructor, since it
currently crashes on Mac (if you provide the correct resource path).
Even when we fix this crash there is no need to do it in the
constructor, since we create all of the gms in order to
get their names (to determine whether to run them).

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6618 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-29 21:05:37 +00:00
reed@google.com
fe7b1ed30a add SkPictureUtils::GatherPixelRefs()
Review URL: https://codereview.appspot.com/6845106

git-svn-id: http://skia.googlecode.com/svn/trunk@6615 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-29 21:00:39 +00:00
djsollen@google.com
5afbbc47df Enable profiling options to be selectively enabled for a given build
Review URL: https://codereview.appspot.com/6858089

git-svn-id: http://skia.googlecode.com/svn/trunk@6598 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-29 15:09:58 +00:00
robertphillips@google.com
5985e7c4d1 SkRoundRect start
https://codereview.appspot.com/6815058/



git-svn-id: http://skia.googlecode.com/svn/trunk@6595 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-29 13:24:55 +00:00
tfarina@chromium.org
223137f49d Remove GrRandom API in favor of SkRandom.
TEST=tests
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6539 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-21 22:38:36 +00:00
caryclark@google.com
729e1c46ce shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@6537 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-21 21:36:34 +00:00
robertphillips@google.com
6dec8fcb44 Add drawing of paths to debugger
https://codereview.appspot.com/6850082/



git-svn-id: http://skia.googlecode.com/svn/trunk@6532 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-21 17:11:02 +00:00
reed@google.com
603dbedf29 add specialty strokeRect() to SkStroke, which can return much cleaner results
Review URL: https://codereview.appspot.com/6843093

git-svn-id: http://skia.googlecode.com/svn/trunk@6510 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-20 19:00:28 +00:00
bungeman@google.com
a544f29496 Additional OpenType tables.
https://codereview.appspot.com/6850075/


git-svn-id: http://skia.googlecode.com/svn/trunk@6509 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-20 18:52:23 +00:00
robertphillips@google.com
8a1cdaece7 Breakdown profile time by command type in the overview pane
https://codereview.appspot.com/6851073/



git-svn-id: http://skia.googlecode.com/svn/trunk@6492 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-19 20:44:29 +00:00
djsollen@google.com
276a2956f5 Add support for SkImageRef_ashmem.
This requires copying the ashmem utility wrapper functions from a
private android library into our source tree in order to be NDK
compliant.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6488 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-19 19:34:23 +00:00
scroggo@google.com
013c5d9107 In SkBitmapHeap, defer adding owners for new bitmaps.
When using an SkFlatDictionary to flatten shaders, the
dictionary can try to insert a duplicate bitmap shader
that uses a bitmap which has been removed from the
bitmap heap.

This change was originally suggested by junov in
https://codereview.appspot.com/6713048/.

Add a test to verify that deferring the owners works.
Without the change to bitmap heap the test would fail
(and crash in debug mode).

Also remove an unused function from SkFlatDictionary.

BUG=http://code.google.com/p/chromium/issues/detail?id=143923

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6471 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-16 20:34:37 +00:00
robertphillips@google.com
2bde91dcb6 Add profiling to debugger
https://codereview.appspot.com/6817114/



git-svn-id: http://skia.googlecode.com/svn/trunk@6430 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-15 14:57:57 +00:00
reed@google.com
5dd85a45bc add gm for srcmode (and clearmode) in prep for optimization work
git-svn-id: http://skia.googlecode.com/svn/trunk@6429 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-15 13:46:47 +00:00
djsollen@google.com
a09e8838f2 Update filter tool to allow input directory.
Review URL: https://codereview.appspot.com/6847046

git-svn-id: http://skia.googlecode.com/svn/trunk@6399 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-13 18:50:33 +00:00
senorblanco@chromium.org
0d92353224 Fix Linux link errors for some targets by adding -lX11 to gpu.gyp's
dependencies.

Broken out and landed separately from  https://codereview.appspot.com/6826086/

git-svn-id: http://skia.googlecode.com/svn/trunk@6388 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-12 20:55:02 +00:00
scroggo@google.com
4a26d9d62a Add a new PictureRenderer that draws the picture then breaks up into tiles.
Review URL: https://codereview.appspot.com/6820103

git-svn-id: http://skia.googlecode.com/svn/trunk@6333 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 18:01:46 +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
senorblanco@chromium.org
9daf96afb3 Break out SkOffsetImageFilter into its own file, and derive it from
SkSingleInputImageFilter, to make it DAG-friendly.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6315 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-06 20:29:39 +00:00
junov@chromium.org
7b53706a7d Adding SkTileGrid: a new subclass of BBoxHierarchy, optimized for tiled playback.
Review URL: https://codereview.appspot.com/6820093

git-svn-id: http://skia.googlecode.com/svn/trunk@6314 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-06 18:58:43 +00:00
reed@google.com
db87c96085 add blurrect gm
git-svn-id: http://skia.googlecode.com/svn/trunk@6284 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-02 21:11:12 +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
junov@chromium.org
9313ca4bde Adding rtree support to the bench_pictures utility
Review URL: https://codereview.appspot.com/6775080

git-svn-id: http://skia.googlecode.com/svn/trunk@6267 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-02 18:11:49 +00:00
skia.committer@gmail.com
760f2d95dd Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6258 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-02 02:01:24 +00:00
edisonn@google.com
c319abeeef Add utility to convert skp files to pdf files. Code compatible with render_pictures_main.cpp. I could have refactored the code to avoid code duplication, but it does not seem right, and it will overcomplicate the code.
Review URL: https://codereview.appspot.com/6615073

git-svn-id: http://skia.googlecode.com/svn/trunk@6253 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 19:52:38 +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
db2e25a7d4 Fix NoGPU build
Some link settings were set in the wrong targets

git-svn-id: http://skia.googlecode.com/svn/trunk@6246 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 18:01:08 +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
8171288341 Remove GrScalar, replace with SkScalar.
Review URL: https://codereview.appspot.com/6812064

git-svn-id: http://skia.googlecode.com/svn/trunk@6243 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 17:12:34 +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
66e534da8e Revert r6233 while investigating bot failures.
git-svn-id: http://skia.googlecode.com/svn/trunk@6235 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 14:02:43 +00:00
bsalomon@google.com
ce49e16d3b Checkpoint in moving texture matrices out of GrGLProgram and into GrGLEffect.
Review URL: https://codereview.appspot.com/6818064

git-svn-id: http://skia.googlecode.com/svn/trunk@6233 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-01 13:50:50 +00:00
scroggo@google.com
4d3c28158a Implement SkCondVar for windows.
Only works on Vista or later, since it uses condition variables.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6225 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-31 19:29:13 +00:00
scroggo@google.com
4177ef4b22 Add SkThreadPool for managing threads.
Skia-ized from https://codereview.appspot.com/6755043/

TODO: Use SkThread and platform independent features.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@6217 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-31 15:52:16 +00:00
robertphillips@google.com
97b6b0730d Fleshed out GPU portion of image/surface feature
https://codereview.appspot.com/6813055/



git-svn-id: http://skia.googlecode.com/svn/trunk@6214 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-31 14:48:39 +00:00
reed@google.com
4117a24de4 add test for bug in line drawing. fix is pending a way to handle all of the
rebaselines...



git-svn-id: http://skia.googlecode.com/svn/trunk@6208 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-30 20:26:58 +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
djsollen@google.com
42041e6de8 Allow default texture cache limit to be set within gyp.
Review URL: https://codereview.appspot.com/6818051

git-svn-id: http://skia.googlecode.com/svn/trunk@6177 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-29 19:24:45 +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
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
reed@google.com
1ca015bd59 add bench for hairlines
git-svn-id: http://skia.googlecode.com/svn/trunk@6118 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 17:32:10 +00:00
epoger@google.com
6714ea4e4d gyp: generate "everything" and "most" targets instead of "all"
"make all" at the toplevel now chains to "make everything"

BUG=http://code.google.com/p/skia/issues/detail?id=932
Review URL: https://codereview.appspot.com/6651064

git-svn-id: http://skia.googlecode.com/svn/trunk@6116 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 16:32:07 +00:00
bsalomon@google.com
d698f77c13 GrGLProgramStage Renaming Part 1.
Renamed cpp and h
s/GrGLProgramStage/GrGLEffect/
Review URL: https://codereview.appspot.com/6759054

git-svn-id: http://skia.googlecode.com/svn/trunk@6090 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 13:22:00 +00:00
bsalomon@google.com
6f261bed02 GrCustomStage Renaming Part 2
GrSamplerState member rename
GrCustomStageUnitTest rename
some comment updates
Review URL: https://codereview.appspot.com/6771043

git-svn-id: http://skia.googlecode.com/svn/trunk@6078 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 19:07:10 +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
mike@reedtribe.org
50e4c72445 add sample to debug in fatbits mode
git-svn-id: http://skia.googlecode.com/svn/trunk@6024 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-22 03:59:34 +00:00
bsalomon@google.com
c6126c1828 Add a GM that tests xfermode-based color filters.
Review URL: https://codereview.appspot.com/6736052

git-svn-id: http://skia.googlecode.com/svn/trunk@6022 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 19:26:05 +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
epoger@google.com
9c875d34ff add a "most" target, and make it the default
split out of https://codereview.appspot.com/6651064/ ('gyp: generate "everything" and "most" targets instead of "all"')
tests: "make most" now works, "make" now calls "make most"
Review URL: https://codereview.appspot.com/6740045

git-svn-id: http://skia.googlecode.com/svn/trunk@5999 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 16:10:56 +00:00
bsalomon@google.com
b2ad101313 Make table color filter use asNewCustomStage.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6713051

git-svn-id: http://skia.googlecode.com/svn/trunk@5976 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-17 15:00:32 +00:00
caryclark@google.com
1708eea54d more pixman work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@5961 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 12:32:33 +00:00
caryclark@google.com
c91dfe417a shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@5959 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 12:06:27 +00:00
scroggo@google.com
f94dd182e6 Remove an obsolete comment.
This comment is no longer true as of r5869.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5957 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-15 18:27:25 +00:00
bungeman@google.com
b3e77940a6 Generate debugger mocs into out instead of src.
https://codereview.appspot.com/6674044/


git-svn-id: http://skia.googlecode.com/svn/trunk@5953 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-15 14:31:29 +00:00
tfarina@chromium.org
e5877e6d9c Delete SkWidget.cpp, which has been #ifdef'ed out for 4+ years.
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 23:29:40 +00:00
djsollen@google.com
2d6535a91d Remove support for building skia android apps outside of an APK.
Review URL: https://codereview.appspot.com/6663043

git-svn-id: http://skia.googlecode.com/svn/trunk@5936 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 19:44:35 +00:00
bsalomon@google.com
42316095ec Add new GM, shadertext3. It would have revealed a bug in the GPU draw-large-text-as-path code path that was recently fixed.
R=reed@google.com
Review URL: https://codereview.appspot.com/6638057

git-svn-id: http://skia.googlecode.com/svn/trunk@5932 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 19:26:15 +00:00
senorblanco@chromium.org
8d21f6c7a9 When two or more color matrix image filters are connected together, and the non-leaf matrices do not require clamping, we can concatenate their matrices and apply them together.
Review URL: https://codereview.appspot.com/6489054

git-svn-id: http://skia.googlecode.com/svn/trunk@5931 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 19:14:06 +00:00
reed@google.com
3d407a153a add bench for drawBitmapRectToRect
git-svn-id: http://skia.googlecode.com/svn/trunk@5915 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 14:42:38 +00:00
borenet@google.com
b364eb6c87 Fix ANGLE build
Removed this in r5889.
Review URL: https://codereview.appspot.com/6651051

git-svn-id: http://skia.googlecode.com/svn/trunk@5904 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 19:23:46 +00:00
bsalomon@google.com
d980478e6f Fix Qt OpenGL lib name on Windows and change the default qt_sdk var value on windows.
Over-the-shoulder review from robertphillips@google.com



git-svn-id: http://skia.googlecode.com/svn/trunk@5894 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 14:33:10 +00:00
borenet@google.com
efb1d77ad2 Build Skia as a static library
- Roll GYP so that we get non-thin archives on Linux
- Add merge_static_libs.py
- Add skia_core_lib target which builds core, ports, opts*, and utils
- Replace dependencies on core/ports/opts/utils with skia_core_libs
- Rename exportable libraries with "skia_"
Review URL: https://codereview.appspot.com/6619049

git-svn-id: http://skia.googlecode.com/svn/trunk@5889 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 19:45:51 +00:00
edisonn@google.com
8f338a3eeb Fix build break. a cpp file was not included in the checkin list. will send to code review and check it in too
git-svn-id: http://skia.googlecode.com/svn/trunk@5885 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 16:42:26 +00:00
edisonn@google.com
2a827e81b3 Add an SKP to PDF rendered. test_pdfs.py will be hooked up in buildbot testing later.
Review URL: https://codereview.appspot.com/6610056

git-svn-id: http://skia.googlecode.com/svn/trunk@5880 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 15:20:34 +00:00
bsalomon@google.com
41fe45b955 Add a new GM: shadertext2.
It tests a bitmap shader with various combinations of matrices and shader matrices. The text is drawn filled and stroked.
Review URL: https://codereview.appspot.com/6639052

git-svn-id: http://skia.googlecode.com/svn/trunk@5877 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 13:35:23 +00:00
caryclark@google.com
6aea33f92c checkpoint for shape ops
at minimum, the unit tests in SimplyNew_Test pass

git-svn-id: http://skia.googlecode.com/svn/trunk@5860 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-09 14:11:58 +00:00
bsalomon@google.com
af84e748ce Move setPaint from GrContext to GrDrawState.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6624045

git-svn-id: http://skia.googlecode.com/svn/trunk@5823 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 13:23:24 +00:00
scroggo@google.com
5a7c6be72b Add the ability to provide function pointers to SkPicture serialization
and deserialization for encoding and decoding bitmaps.

Remove kForceFlattenBitmapPixels_Flag, which is no longer used.

When an SkOrderedReadBuffer needs to read a bitmap, if it does not
have an image decoder, use a dummy bitmap.

In GM, add a tolerance option for color differences, used when
testing picture serialization, so it can assume two images are the
same even though PNG encoding/decoding may have resulted in small
differences.

Create dummy implementations for SkImageDecoder and SkImageEncoder
functions in SkImageDecoder_empty so that a project that does not
want to include the images project it can still build.

Allow ports to build without images project.

In Mac's image encoder, copy 4444 to 8888 before encoding.

Add SkWriter32::reservePad, to provide a pointer to write non 4 byte
aligned data, padded with zeroes.

In bench_ and render_ pictures, pass decode function to SkPicture
creation from a stream.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 21:46:08 +00:00
epoger@google.com
3fc070cfce Change default skia_osx_sdkroot to "macosx" (suitable for Xcode 3.2.6+)
See https://codereview.appspot.com/6553044
BUG=https://code.google.com/p/skia/issues/detail?id=796
Review URL: https://codereview.appspot.com/6598055

git-svn-id: http://skia.googlecode.com/svn/trunk@5806 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 14:50:18 +00:00
robertphillips@google.com
c7e4a5a02a Created filter command line tool
https://codereview.appspot.com/6595066/



git-svn-id: http://skia.googlecode.com/svn/trunk@5803 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 13:00:33 +00:00
bsalomon@google.com
4663822bc9 Allow Xcode to change paths to frameworks based on whether a device or simulator was selected.
R=caryclark@google.com
Review URL: https://codereview.appspot.com/6590068

git-svn-id: http://skia.googlecode.com/svn/trunk@5802 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 12:52:03 +00:00
bsalomon@google.com
c6445a17ab Make it possible to generate the ios xcode proj by specifying only skia_os="ios" in GYP_DEFINES.
R=caryclark@google.com,epoger@google.com
Review URL: https://codereview.appspot.com/6601051

git-svn-id: http://skia.googlecode.com/svn/trunk@5796 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 20:58:26 +00:00
reed@google.com
1ba274d9f3 revert 5794
git-svn-id: http://skia.googlecode.com/svn/trunk@5795 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 20:40:38 +00:00
reed@google.com
4837724a7e add test for rotated saveLayer, to see that we clip against the specified bounds
(hint: we don't at the moment)



git-svn-id: http://skia.googlecode.com/svn/trunk@5794 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 20:17:22 +00:00
bsalomon@google.com
1dfe88e00a Revert r5557 (which itself was a revert of r5433). Relands SkPathRef. Will follow with change for extra debug checks to attempt to ferret out http://www.crbug.com/148637.
git-svn-id: http://skia.googlecode.com/svn/trunk@5783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:46:20 +00:00
robertphillips@google.com
924352685d Added bench to replicate Google spreadsheet-style table drawing
https://codereview.appspot.com/6593076/



git-svn-id: http://skia.googlecode.com/svn/trunk@5782 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:25: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
bungeman@google.com
43b4ed5b0c xcode_settings OTHER_CPLUSPLUSFLAGS is a list.
https://codereview.appspot.com/6588062/


git-svn-id: http://skia.googlecode.com/svn/trunk@5769 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 15:42:21 +00:00
bsalomon@google.com
2b64f84b4b Add SkNativeGLContext implementation for iOS.
R=caryclark@google.com
Review URL: https://codereview.appspot.com/6589055

git-svn-id: http://skia.googlecode.com/svn/trunk@5767 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 15:25:12 +00:00
bsalomon@google.com
c58b126623 Move android gl files from src/gpu/android to src/gpu/gl/android.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6590051

git-svn-id: http://skia.googlecode.com/svn/trunk@5757 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 19:06:57 +00:00
reed@google.com
7ec0015ec3 delete obsolete/unused SkGpuCanvas
git-svn-id: http://skia.googlecode.com/svn/trunk@5752 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 18:06:05 +00:00
bsalomon@google.com
89dec58122 Disable thumb on IOS. This removes one of XCodes complaints about the generated projects.
R=caryclark@google.com
Review URL: https://codereview.appspot.com/6561072

git-svn-id: http://skia.googlecode.com/svn/trunk@5726 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 18:33:11 +00:00
bsalomon@google.com
cca3c8f21b Make gpu work in iOS SampleApp.
This includes updates to the GrGLInterface and changes to the DeviceManager subclass used on iOS.
Review URL: https://codereview.appspot.com/6582043

git-svn-id: http://skia.googlecode.com/svn/trunk@5722 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 16:56:28 +00:00
bsalomon@google.com
230504d6b5 Make SampleApp work on iPhone/iOS simulator.
Several parts to this:

1) The DeviceManager subclass for iOS was rewritten because the base class
changed.

2) Two old samples that rely on hardcoded paths to images are deleted. They hit
assertions in SkImageRef. No one has the required images to run these anyway.

3) argv must be non-NULL.

4) The UI delegate must not be loaded from the NIB for viewDidLoad ordering
reasons. So I removed an IBOutlet link from the window to the splitview
controller in the iPad's NIB file. The split view is attached by the AppDelegate
programmatically.

This doesn't make GPU work. That will come in a later change.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@5712 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 16:04:54 +00:00
tfarina@chromium.org
e229e92ea5 Remove deprecated SkOSWindow_wxwidgets.h
It seems we never really supported WxWidgets.

R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5708 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 13:44:57 +00:00
fmalita@google.com
bacfcfb11c Generate debugger MOCs on the fly
Added gyp rules to generate Qt MOC files at build time, and removed the pre-packaged versions.

Tested on Mac with Qt 4.6.4 & 4.8.3, and on Linux with Qt 4.8.1.

R=caryclark@google.com,robertphillips@google.com,djsollen@google.com
BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5707 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 13:34:34 +00:00
fmalita@google.com
36631b99f9 Fix Xcode 4.x debugger build
Adding a mac_framework_dirs entry to help Xcode find the Qt frameworks.

R=djsollen@google.com

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5702 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 18:32:58 +00:00
caryclark@google.com
4588ce85cd move the xcode setup for SYMROOT to the outermost level
Review URL: https://codereview.appspot.com/6576050

git-svn-id: http://skia.googlecode.com/svn/trunk@5693 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 15:48:43 +00:00
caryclark@google.com
5c83dcc371 add simple ios app
update ios flavor of sample app
fix utils.gyp for ios

git-svn-id: http://skia.googlecode.com/svn/trunk@5686 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:02:37 +00:00
caryclark@google.com
d312804b21 shape ops -- update gyp projects
goodbye cruel world (updating to OS X 10.8)

git-svn-id: http://skia.googlecode.com/svn/trunk@5685 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:00:03 +00:00
mike@reedtribe.org
9dd78c7821 re-land 5681, but just the gyp file I wanted
git-svn-id: http://skia.googlecode.com/svn/trunk@5683 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 03:10:09 +00:00
mike@reedtribe.org
9a520eb745 revert 5681
git-svn-id: http://skia.googlecode.com/svn/trunk@5682 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 03:08:16 +00:00
mike@reedtribe.org
4269631bdf remove SampleXfermodes.cpp (obsolete, as we have it as a GM)
git-svn-id: http://skia.googlecode.com/svn/trunk@5681 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 03:06:55 +00:00
bsalomon@google.com
2e91d7adb7 Disable warning emitted in libjpg build
Review URL: https://codereview.appspot.com/6573047

git-svn-id: http://skia.googlecode.com/svn/trunk@5673 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 19:14:14 +00:00
robertphillips@google.com
f585c45173 Remove GrTLList.h
https://codereview.appspot.com/6577043/



git-svn-id: http://skia.googlecode.com/svn/trunk@5670 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 18:53:17 +00:00
epoger@google.com
ddd8fa8f45 Remove SkListWidget.cpp, which has not been compiled for 18 months
(Our very first gyp file from https://code.google.com/p/skia/source/detail?spec=svn955&r=955 already had it turned off)
Review URL: https://codereview.appspot.com/6566049

git-svn-id: http://skia.googlecode.com/svn/trunk@5668 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 18:24:41 +00:00
epoger@google.com
4e2d4ff99d Delete SkListView.cpp, which has been #ifdef'ed out for 4+ years
Review URL: https://codereview.appspot.com/6550062

git-svn-id: http://skia.googlecode.com/svn/trunk@5667 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 17:48:30 +00:00
caryclark@google.com
129dee8014 fix mac builds
comment out 64 bit / mac error check

git-svn-id: http://skia.googlecode.com/svn/trunk@5654 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 21:38:38 +00:00
senorblanco@chromium.org
b8d212fe95 Build fix. Unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@5653 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 21:27:14 +00:00
caryclark@google.com
18b3823d29 unbreak the build part ii
allow android in debugger.gyp

git-svn-id: http://skia.googlecode.com/svn/trunk@5651 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 20:08:43 +00:00
caryclark@google.com
976298edd7 unbreak the build
move define of skia_arch_type to front

git-svn-id: http://skia.googlecode.com/svn/trunk@5650 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 19:41:43 +00:00
caryclark@google.com
594dd3cd78 iOS support work in progress
include/core/SkTypes.h
- address unsigned warning

include/core/SkInstCnt.h
src/core/SkInstCnt.cpp
gyp/common.gypi
- always define SK_ENABLE_INST_COUNT for debug builds

src/views/mac/SkNSView.mm
- only call glClear if there is a GL context

src/ports/SkImageDecoder_CG.cpp
- fix iOS hack by using proper include

gyp/opts.gyp
- exclude more ARM files from iOS for now (see issue 900)

gyp/common_conditions.gypi
- add release, more ios specific common settings

gyp/bench.gyp
- add iOS condition

gyp/SampleApp.gyp
- remove precompiled header, hardcoded SDK path
- add more frameworks

gyp/debugger.gyp
- fix syntax error
- add iOS/Android condition

gyp/core.gyp
- remove hardcoded SDK path, add more frameworks

gyp/common_variables.gypi
- add ios SDK path
- add ios SDK version

gyp/iOSSampleApp.gyp
- remove obsolete project

gyp/zlib.gyp
- add ios library path
Review URL: https://codereview.appspot.com/6551070

git-svn-id: http://skia.googlecode.com/svn/trunk@5649 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 19:33:57 +00:00
senorblanco@chromium.org
cc9471c36d Fix premul alpha problems w/matrix convolution filter, and re-enable the bench.
http://codereview.appspot.com/6541043/



git-svn-id: http://skia.googlecode.com/svn/trunk@5610 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 17:59:49 +00:00
senorblanco@chromium.org
bc5cbfe4ed Pull SDKROOT into a gyp variable, so it can be locally overridden. This
allows building on Lion or Mountain Lion using XCode 4.4.

http://codereview.appspot.com/6553044/



git-svn-id: http://skia.googlecode.com/svn/trunk@5607 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 16:10:02 +00:00
caryclark@google.com
867cbd8bc2 first cut at making iOS work
Replace __arm__ with SK_CPU_ARM
add support for iOS simulator and device
fix const warning in iOSSampleApp
update gyp files

https://code.google.com/p/skia/issues/detail?id=900
tracks fixing missing arm assembly
Review URL: https://codereview.appspot.com/6552045

git-svn-id: http://skia.googlecode.com/svn/trunk@5606 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 15:45:41 +00:00
senorblanco@chromium.org
79723f9826 Unreviewed; build fix.
Disable matrixconvolution bench until I can figure out the
premul issues.



git-svn-id: http://skia.googlecode.com/svn/trunk@5593 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:44:01 +00:00
senorblanco@chromium.org
5faa2dc266 Implements a matrix convolution filter (raster path only). The filtering loop
is templated on the tiling mode for speed:  interior pixels are unconditionally
fetched; border pixels apply the appropriate tiling mode before fetching.  It
handles target, bias, divisor (as gain), and edge modes (named to be more
skia-like).  It does not handle the "preserveAlpha" semantics of
feConvolveMatrix, nor "kernelUnitLength".



git-svn-id: http://skia.googlecode.com/svn/trunk@5592 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:32:34 +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
caryclark@google.com
35f5ac9738 update gyp files to build on iOS
Note that there's a hack in SkImageDecoder_CG.cpp --
the necessary defines are included directly. This
is temporary until I can figure out how to include
them properly.
Review URL: https://codereview.appspot.com/6523044

git-svn-id: http://skia.googlecode.com/svn/trunk@5586 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 15:41:18 +00:00
reed@google.com
7112173c3c re-re-land 5578
will follow w/ new .skp files to keep the waterfall green (I hope)



git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 15:14:33 +00:00
reed@google.com
10f9f4a844 revert 5580
git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 14:04:54 +00:00
reed@google.com
eab16dea1c re-land 5578 w/ pipe fix
git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 13:47:20 +00:00
reed@google.com
c75c36a14b revert 5578 -- broke pipe
git-svn-id: http://skia.googlecode.com/svn/trunk@5579 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 13:20:52 +00:00
reed@google.com
f1ab723033 Change drawBitmapRect to take a float-src-rect instead of integer-src-rect. This
allows the client more control over the scaling. Because of virtual overrides
and wanting to keep the old call-sites up and running, this CL renames the
virtual entry-point to drawBitmapRectToRect, and downgrades drawBitmapRect to
a non-virtual helper function.

The implementation is to use the float-rect for computing the matrix, but still
cons-up an integer rect for the purposes of subsetting the original bitmap. We
do this by calling float_src->roundOut(&int_src) so that we include all
(partially) covered src pixels.

No change needed on SkDevice, since that signature is explicitly passed the
computed matrix.
Review URL: https://codereview.appspot.com/6501140

git-svn-id: http://skia.googlecode.com/svn/trunk@5578 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 12:59:44 +00:00
tfarina@chromium.org
b1b7f70790 Add a header for OverView.cpp as well.
This fixes another FIXMEs.

Signed-off-by: Thiago Farina <tfarina@chromium.org>

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5576 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 01:52:20 +00:00
bsalomon@google.com
6c5418e6c2 Temporarily revert r5433 due to http://www.crbug.com/148637 until after M23 branch.
git-svn-id: http://skia.googlecode.com/svn/trunk@5557 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 20:30:37 +00:00
epoger@google.com
6a12178fb3 Add a header file for TransitionView.cpp
committed from https://codereview.appspot.com/6492119/ for Thiago Farina <tfarina@chromium.org>

git-svn-id: http://skia.googlecode.com/svn/trunk@5552 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 18:42:01 +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
borenet@google.com
e21795e277 Enable automatic rescaling in bench_pictures
bench_pictures with "--device gpu" is failing because we're trying to allocate
too much GPU memory.  Move the recently-added scaling code into picture_utils
and share it between render_pictures and bench_pictures.
Review URL: https://codereview.appspot.com/6495125

git-svn-id: http://skia.googlecode.com/svn/trunk@5543 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 14:34:28 +00:00
rileya@google.com
ffadfb5d43 Add gm to test SkRegion/clipPath bug.
Review URL: https://codereview.appspot.com/6501131

git-svn-id: http://skia.googlecode.com/svn/trunk@5540 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 13:53:36 +00:00
reed@google.com
1f1543f012 re-apply 5508, but with the new compile-flag disabled for now
git-svn-id: http://skia.googlecode.com/svn/trunk@5516 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 21:08:33 +00:00
reed@google.com
bfe1572f24 revert 5508 -- it broke most of the builds
Use http://skia.googlecode.com/svn/buildbot/buildbots.html to see the state of the build.



git-svn-id: http://skia.googlecode.com/svn/trunk@5511 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 18:34:49 +00:00
wjmaclean@chromium.org
1f8787a99f Using the device scale factor for glyph positioning
The master bug is http://code.google.com/p/chromium/issues/detail?id=138101 .
The corresponding WebKit changes for this CL are here:
https://bugs.webkit.org/show_bug.cgi?id=96137

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5508 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 15:53:20 +00:00
borenet@google.com
c2dd3d4109 Fix noisy Android build
Review URL: https://codereview.appspot.com/6488107

git-svn-id: http://skia.googlecode.com/svn/trunk@5503 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 21:37:28 +00:00
rileya@google.com
9f5898d31b Add SkBBoxRecord subclass that builds up a BBoxHierarchy and PictureStateTree.
Review URL: https://codereview.appspot.com/6490104

git-svn-id: http://skia.googlecode.com/svn/trunk@5500 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 20:21:44 +00:00
reed@google.com
9135939581 rm temp slides
git-svn-id: http://skia.googlecode.com/svn/trunk@5488 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 17:46:42 +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
rileya@google.com
9fd7f8d290 Add helper for maintaining clip/matrix state in non-contiguous picture playback.
Review URL: https://codereview.appspot.com/6509043

git-svn-id: http://skia.googlecode.com/svn/trunk@5483 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 14:57:33 +00:00
bsalomon@google.com
047696c1c6 Move GrTextureAccess decl/defn to separate files
Review URL: https://codereview.appspot.com/6500104/



git-svn-id: http://skia.googlecode.com/svn/trunk@5482 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 13:29:29 +00:00
robertphillips@google.com
7fa18762e0 Extended instance counting to all GrResource-derived classes
http://codereview.appspot.com/6489109/



git-svn-id: http://skia.googlecode.com/svn/trunk@5480 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-11 13:02:31 +00:00
borenet@google.com
bc7661161e Fix Android build of render_pictures (Again)
picture_renderer was somehow picking up effects as a dependency, but effects
was not present in the shared library on Android at load time.
Review URL: https://codereview.appspot.com/6498113

git-svn-id: http://skia.googlecode.com/svn/trunk@5464 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-10 16:20:47 +00:00
borenet@google.com
de938a496c Fix Android build of render_pictures
Review URL: https://codereview.appspot.com/6501113

git-svn-id: http://skia.googlecode.com/svn/trunk@5462 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-10 14:41:26 +00:00
reed@google.com
3d1a9963bc add techtalk slide for now (can remove it tomorrow)
git-svn-id: http://skia.googlecode.com/svn/trunk@5461 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-10 14:27:37 +00:00
bsalomon@google.com
69aca79b5c SkPathRef: one allocation for pts+verbs, path GenID, copy-on-write
Review URL: https://codereview.appspot.com/6488063/



git-svn-id: http://skia.googlecode.com/svn/trunk@5433 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:35:06 +00:00
scroggo@google.com
9a4125283a Report data from bench_pictures in the same fashion as bench.
Move SkBenchLogger into separate files and make bench_pictures use it.
Remove sk_tools::print_msg, since SkBenchLogger is now used instead.

Combine picture_benchmark with bench_pictures, since that is the
only project that uses it.

Refactor the aggregator for bench timer data into its own class and
make bench_pictures use it.

Consolidate the various virtual PictureBenchmark::run functions
into one for reuse.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5432 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:21:18 +00:00
rileya@google.com
e0201a4448 Add SkPictureRecord subclass that computes bounding boxes.
Review URL: https://codereview.appspot.com/6506082

git-svn-id: http://skia.googlecode.com/svn/trunk@5423 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-06 20:50:11 +00:00
robertphillips@google.com
8b62c60e96 Added 4.6.2 prefix to existing debugger moc files
http://codereview.appspot.com/6488090/



git-svn-id: http://skia.googlecode.com/svn/trunk@5416 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-06 18:04:07 +00:00
edisonn@google.com
d966ab9906 Add efffects to the list of dependencies for bench_pictures. Required on Android.
Review URL: http://codereview.appspot.com/6489078

git-svn-id: http://skia.googlecode.com/svn/trunk@5406 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 19:43:46 +00:00
rileya@google.com
981b33abc6 Add R-Tree bench.
Review URL: https://codereview.appspot.com/6497086

git-svn-id: http://skia.googlecode.com/svn/trunk@5404 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 18:36:17 +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
borenet@google.com
a98eb919a2 Add NaCl port of Skia
Initial commit. This is far from done.
Review URL: https://codereview.appspot.com/6428064

git-svn-id: http://skia.googlecode.com/svn/trunk@5398 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 21:09:40 +00:00
borenet@google.com
623ff0a5f7 Add ANGLE to DEPS, integrate build
Review URL: https://codereview.appspot.com/6494052

git-svn-id: http://skia.googlecode.com/svn/trunk@5387 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 16:45:05 +00:00
bsalomon@google.com
202a51b335 Add effects/core.gypi to 'sources' to make them appear in VS projects
Review URL: https://codereview.appspot.com/6493075/



git-svn-id: http://skia.googlecode.com/svn/trunk@5384 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 14:37:12 +00:00
robertphillips@google.com
6806bdaca8 Added bench to test multiple readPixels case
https://codereview.appspot.com/6501081/



git-svn-id: http://skia.googlecode.com/svn/trunk@5381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 13:39:01 +00:00
scroggo@google.com
58b4ead36c Perform multi core rendering in bench_pictures.
Add a flag in SkGPipeWriter for threadsafe drawing.

Add a deferred pipe controller to SamplePipeControllers, which can
be called to play back in multiple threads.

Depends on http://codereview.appspot.com/6459105/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5371 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-31 16:15:22 +00:00
robertphillips@google.com
1fcc1b8099 Moved GrClipMaskCache to its own files
https://codereview.appspot.com/6496055/



git-svn-id: http://skia.googlecode.com/svn/trunk@5331 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-29 12:52:05 +00:00
reed@google.com
97af1a64ae Add caching of the snapshot image form a surface
Notify the surface when the canvas draws into it, so it can invalidate the
cached image, and (if needed) perform a copy-on-write on the surface if it
was being shared with the image.
Review URL: https://codereview.appspot.com/6441115

git-svn-id: http://skia.googlecode.com/svn/trunk@5306 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-28 12:19:02 +00:00
caryclark@google.com
9e49fb63d3 shape ops work in progress
add copyrights everywhere
start working on quadratic line segments (for quad intersection)

git-svn-id: http://skia.googlecode.com/svn/trunk@5286 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-27 14:11:33 +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
fd668cfffe Fix greenish text rendering on Linux.
https://codereview.appspot.com/6484048/


git-svn-id: http://skia.googlecode.com/svn/trunk@5280 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-24 17:46:11 +00:00
bsalomon@google.com
ac4b86cdcf Make gpu.gypi show up in IDE projects
Review URL: http://codereview.appspot.com/6481053/


git-svn-id: http://skia.googlecode.com/svn/trunk@5270 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 19:18:29 +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
bsalomon@google.com
2080635ce0 Add gpu.gypi to ease skia->chrome rolls
http://codereview.appspot.com/6486043/


git-svn-id: http://skia.googlecode.com/svn/trunk@5250 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 12:55:01 +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
george@mozilla.com
c59b5dac90 Split out SkFontHost_FreeType into common files
Review URL: https://codereview.appspot.com/6442092

git-svn-id: http://skia.googlecode.com/svn/trunk@5246 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 00:39:08 +00:00
senorblanco@chromium.org
84207c4278 Move the code for the GPU implementation of morphology effects from GrContext
and GrMorphologyEffect.* into SkMorphologyImageFilter.cpp.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@5241 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 20:51:19 +00:00
senorblanco@chromium.org
b2ee33c535 Implements the non-Porter-Duff compositing modes required for SVG's feBlend
element.  This filter has two inputs, since normal blending can't be used.  The
GPU side uses two filter stages to accomplish this:  one to sample the
background, and one to sample the foreground and blend it.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@5231 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 16:24:44 +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
keyar@chromium.org
9299eded38 Images are written by PictureRenderer and not render_pictures_main.
Review URL: https://codereview.appspot.com/6448174

git-svn-id: http://skia.googlecode.com/svn/trunk@5216 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-21 19:05:08 +00:00
caryclark@google.com
03f970652e shape ops work in progress
working demo of old vs. new

git-svn-id: http://skia.googlecode.com/svn/trunk@5209 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-21 13:13:52 +00:00
senorblanco@chromium.org
436411b013 Fix typo in r5202, preventing include files from showing up.
Build fix; unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5205 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 21:35:00 +00:00
senorblanco@chromium.org
f6100c3ac3 Extract list of source files from effects.gyp into effects.gypi, as was done for
core.gyp.  This should make our lives easier when rolling DEPS.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@5202 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 20:56:26 +00:00
senorblanco@chromium.org
44888c66d4 Move SkColorFilterImageFilter into its own file.
Review URL:  https://codereview.appspot.com/6463072/



git-svn-id: http://skia.googlecode.com/svn/trunk@5197 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 19:23:24 +00:00
borenet@google.com
b7961193a3 Enable 64-bit builds on Windows
Encountered compile errors passing 64-bit size_t to
SkIntToScalar and needed to make adjustments to
gm/gradients.cpp and bench/PicturePlaybackBench.cpp.

Verified on my local Linux, Mac, and Windows machines.

As of this change, the skia_arch_width gyp define
actually forces a 32/64-bit build on Linux, Mac, and
Windows.
Review URL: https://codereview.appspot.com/6460112

git-svn-id: http://skia.googlecode.com/svn/trunk@5195 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 18:58:26 +00:00
keyar@chromium.org
b00a85b7f3 Fixed no GPU build. Not reviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@5189 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:49:47 +00:00
senorblanco@chromium.org
bf2768bab9 Refactor SkImageFilter into its own .cpp file.
Review URL:  https://codereview.appspot.com/6465073/



git-svn-id: http://skia.googlecode.com/svn/trunk@5188 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:43:14 +00:00
keyar@chromium.org
81058469d5 Changed the gyp file to handle dpendencies via exports.
git-svn-id: http://skia.googlecode.com/svn/trunk@5174 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:38 +00:00
keyar@chromium.org
0612564bb7 The GrContext and the GrFactoryContext are now kept around.
git-svn-id: http://skia.googlecode.com/svn/trunk@5172 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:33 +00:00
keyar@chromium.org
4ea96c5e54 Dirty commit so Brian can see changes.
git-svn-id: http://skia.googlecode.com/svn/trunk@5171 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:29 +00:00
senorblanco@chromium.org
f1369ce607 Implements a new class, SkSingleInputImageFilter, to handle DAG connectivity
for filters with a single image input.  This provides functionality to store,
flatten and unflatten a single SkImageFilter input, as well as to recursively
evaluate it on the CPU or GPU.  The following classes were re-parented to 
implement DAG connectivity:  SkBlurImageFilter, SkDilateImageFilter,
SkErodeImageFilter, SkColorFilterImageFilter.  The constructors for each
have been appended with a new parameter, representing the input filter
(default NULL).

This change also implements an arbitrary SkBitmap input source for filtering,
SkBitmapSource.

NOTE:  This CL will require gyp file changes when rolling past this revision.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@5170 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 14:53:21 +00:00
bungeman@google.com
b49d989997 Remove SK_FONTHOST_WIN_DW define.
git-svn-id: http://skia.googlecode.com/svn/trunk@5132 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 17:35:58 +00:00
bungeman@google.com
6ca0a5da6c Don't try to build SkFontHost_win_dw.cpp on non-Windows platforms.
git-svn-id: http://skia.googlecode.com/svn/trunk@5129 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 16:23:09 +00:00
bungeman@google.com
e8f0592ae8 DirectWrite font host for skia.
https://codereview.appspot.com/5417063/


git-svn-id: http://skia.googlecode.com/svn/trunk@5128 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 16:13:40 +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
reed@google.com
c0f1dfb4ed privatize SkScalerContext.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5096 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 19:45:58 +00:00
reed@google.com
fe8765c82a privatize SkDescriptor.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5086 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 17:41:34 +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
rileya@google.com
2e2aedc204 Added GrTextureStripAtlas object.
Review URL: https://codereview.appspot.com/6457099

git-svn-id: http://skia.googlecode.com/svn/trunk@5070 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 20:28:48 +00:00
robertphillips@google.com
3c4121e812 Updated gpu.gyp to move GrCacheID.h from src\gpu to include\gpu
git-svn-id: http://skia.googlecode.com/svn/trunk@5060 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:46:35 +00:00
chudy@google.com
bbad34de3b Effects Bug Fix
Certain compilers in an effort to optimize code chop off files that are never
used. By adding a flag to common conditions and variables we can force skia to
recompile with global static initializers off. By making a call to
SkGraphics::Init we now register all those functions that had been previously
automatically excluded by the compiler.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5057 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:26:36 +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
digit@google.com
3ada0efdc8 arm: dynamic NEON support for SkBitmapProcState functions.
This patch does the following:

  - Move the NEON-specific code from src/core/SkBitmapProcState_filter.h
    to src/opts/SkBitmapProcState_filter_neon.h

  - Implement the NEON-specific functions in the new source file
    src/opts/SkBitmapProcState_opts_arm_neon.cpp, added to the "opts_neon"
    static library target. All functions now use the _neon suffix, even
    in full-NEON builds.

  - Move most of the content of src/core/SkBitmapProcState.cpp to a
    new header: src/core/SkBitmapProcState_procs.h

This header is included by two source files:

  src/core/SkBitmapProcState.cpp, to define the regular functions.
  src/opts/SkBitmapProcState_opts_arm_neon.cpp to define NEON ones.

This is to deal with the fact that all NEON functions now
use the _neon suffix, even in SK_ARM_NEON_IS_ALWAYS mode,
and to be able to include the same header twice in the
SK_ARM_NEON_IS_DYNAMIC case.
Review URL: https://codereview.appspot.com/6449117

git-svn-id: http://skia.googlecode.com/svn/trunk@5055 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:06:34 +00:00
mike@reedtribe.org
3d1cb97240 move texteffects from Sample to gm
git-svn-id: http://skia.googlecode.com/svn/trunk@5051 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 00:52:07 +00:00
mike@reedtribe.org
56d5bfa90e privatize SkBuffer.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5050 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 00:01:39 +00:00
mike@reedtribe.org
65be881c83 privatize SkRefDict.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5049 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 23:45:04 +00:00
mike@reedtribe.org
d02d4fffad privatize SkGlyph.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 19:43:52 +00:00
mike@reedtribe.org
2bc1689dbd privatize SkPtrRecorder.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 19:34:07 +00:00
borenet@google.com
a37a517b54 Enable 32/64-bit gyp switch on Linux
Linux defaults to 64, other platforms 32.  As of this change, only Mac and
Linux are affected by the skia_arch_width flag.  Next step is to make Win
work as well.
Review URL: https://codereview.appspot.com/6460066

git-svn-id: http://skia.googlecode.com/svn/trunk@5041 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:44:32 +00:00
reed@google.com
aaa3aec09b privatize SkBlitter.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5040 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:32:43 +00:00
reed@google.com
cabe48af63 privatize SkScan.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5038 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:08:13 +00:00
reed@google.com
d74e710c00 remove SkShape (unused)
Review URL: https://codereview.appspot.com/6461069

git-svn-id: http://skia.googlecode.com/svn/trunk@5033 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 18:05:33 +00:00
borenet@google.com
af73091b56 Set bench/gm/tests as explicit dependencies of SkiaAndroidApp (trunk)
Hopefully this fixes the flaky Android build.
Review URL: https://codereview.appspot.com/6461067

git-svn-id: http://skia.googlecode.com/svn/trunk@5032 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 15:54:28 +00:00
mike@reedtribe.org
e012e0a341 privatize SkEdgeClipper.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5027 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 01:26:07 +00:00
mike@reedtribe.org
620aebb4d7 removed SkPerspIter.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5026 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 01:05:35 +00:00
digit@google.com
1407a4861a Fix the Android build.
Sorry, the offending line should have been part of a different patch.
Review URL: https://codereview.appspot.com/6448129

git-svn-id: http://skia.googlecode.com/svn/trunk@5023 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 22:58:40 +00:00
digit@google.com
a8dd1ce930 arm: dynamic NEON support for SkBlitRow_opts_arm.cpp
This patch moves all NEON-specific code from the source
src/opts/SkBlitRow_opts_arm.cpp into a new file that is
built as part of the 'opts_arm_neon' static library.
Review URL: https://codereview.appspot.com/6449110

git-svn-id: http://skia.googlecode.com/svn/trunk@5016 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 22:06:29 +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
baa5d94ee3 split out src file names into core.gypi, with an eye towards sharing that
file with chrome...
Review URL: https://codereview.appspot.com/6446103

git-svn-id: http://skia.googlecode.com/svn/trunk@5007 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 20:39:17 +00:00
robertphillips@google.com
46a8600405 Refactored cacheID in preparation for clip mask caching changes
http://codereview.appspot.com/6458089/



git-svn-id: http://skia.googlecode.com/svn/trunk@5002 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 10:42:44 +00:00
reed@google.com
66e51608f1 Privatize SkAutoKern.h
git-svn-id: http://skia.googlecode.com/svn/trunk@4998 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 21:41:42 +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
chudy@google.com
607357fde8 Refactoring into a public facing facing SkDebugger class first pass.
Review URL: https://codereview.appspot.com/6450096

git-svn-id: http://skia.googlecode.com/svn/trunk@4986 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 16:12:23 +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
reed@google.com
7eb3a2653b add gm for very large bitmaps (>32K >64K)
raster expected to fail when scaling >64K (for now)



git-svn-id: http://skia.googlecode.com/svn/trunk@4967 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:05:14 +00:00
bsalomon@google.com
2e40173c95 revert gpu-less mac sample app, remove busted sample (that has equivalent gm)
Review URL: https://codereview.appspot.com/6450088/



git-svn-id: http://skia.googlecode.com/svn/trunk@4954 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 19:25:10 +00:00
chudy@google.com
a9e937c7b7 Moved the ownership of the current clip and current matrix into the debug canvas as part of the upcoming general refactor to everything living in debug canvas.
Review URL: https://codereview.appspot.com/6447077

git-svn-id: http://skia.googlecode.com/svn/trunk@4950 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 17:32:05 +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
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
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
a2d71482db Removed GrClip & related classes
http://codereview.appspot.com/6450071/



git-svn-id: http://skia.googlecode.com/svn/trunk@4899 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 20:08:47 +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
keyar@chromium.org
163b56734f Merged bench_pictures and render_pictures rendering methods.
bench_pictures now uses a class based method for choosing the benchmark type as well.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4894 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 17:53:29 +00:00
digit@google.com
fbf31949ac arm: Move SkUtilsArm.h from include/core to src/core
There is no reason to make this visible to client code.
Review URL: https://codereview.appspot.com/6441082

git-svn-id: http://skia.googlecode.com/svn/trunk@4892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 15:58:41 +00:00
digit@google.com
fce02aca62 arm: dynamic NEON support for SkBitmapProcState matrix operations.
This patch implements dynamic ARM NEON support for the functions
implemented by src/core/SkBitmapProcState_matrixProcs.cpp.

 - Because the SkBitmapProcState_matrix_{clamp,repeat}.h headers
   are NEON-specific, they are renamed with a _neon.h suffix, and
   moved to src/opts/ (from src/core/)

 - Add a new file src/opts/SkBitmapProcState_matrixProcs_neon.cpp
   which implements the NEON code paths for all builds, and add
   it to the 'opts_neon' static library.

 - Modify SkBitmapProcState_matrixProcs.cpp to select the right
   code-path depending on our build configuration. Note that in
   the case where 'arm_neon == 1', we do not embed regular ARM
   code paths in the final binary. Only 'arm_neon_optional == 1'
   builds will contain both regular and NEON code paths at the
   same time.

Note that there doesn't seem to be a simple way to put the
NEON-specific selection from that currently is in
SkBitmapProcState_matrixProcs.cpp into src/opts/. Doing so
would require much more drastic restructuring. This is also
true of the other SkBitmapProcState source files that will
be touched in a future patch.
Review URL: https://codereview.appspot.com/6453065

git-svn-id: http://skia.googlecode.com/svn/trunk@4888 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 14:25:07 +00:00
chudy@google.com
0b5bbb0f82 Optimized hit testing feature, refactored into seperate function from canvas draw calls
Review URL: https://codereview.appspot.com/6443068

git-svn-id: http://skia.googlecode.com/svn/trunk@4867 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 19:55:32 +00:00
reed@google.com
a7ffb956cb remove '../gm/image.cpp',
git-svn-id: http://skia.googlecode.com/svn/trunk@4855 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 15:01:57 +00:00
reed@google.com
076f4c9791 fix LayerDrawLooper to record its fFlagsMask
convert SampleDrawLooper to a GM



git-svn-id: http://skia.googlecode.com/svn/trunk@4854 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 14:32:38 +00:00
bungeman@google.com
97efada074 Gamma correcting masks.
https://codereview.appspot.com/6244068/


git-svn-id: http://skia.googlecode.com/svn/trunk@4841 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 20:40:50 +00:00
scroggo@google.com
58be682c77 Share code in various SkGPipeCanvas::drawBitmap_ calls.
Also implement SkGPipeCanvas::drawBitmapMatrix, and
create a GM to make sure it works properly.

Use a flag instead of writing a bool for determining whether
drawBitmap_ has a paint and whether drawBitmapRect has a source
rectangle.

BUG=
TEST=drawbitmapmatrix GM

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4828 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 14:40:01 +00:00
scroggo@google.com
3cb969f27d In SkGPipe, only serialize SkTypefaces in cross process mode.
Also make SkGPipeController ref the recording canvas to ensure that
objects used by SkGPipeCanvas (e.g. SharedHeap and fTypefaceSet, which
hold references to objects to which pointers are written to the stream)
survive to be played back even if SkGPipeWriter.endRecording() is called.

BUG=
TEST=TypefaceGM

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4817 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 20:39:19 +00:00
rileya@google.com
d7cc651b8d Move GPU gradients into src/effects/gradients.
Review URL: https://codereview.appspot.com/6453055

git-svn-id: http://skia.googlecode.com/svn/trunk@4805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 14:00:39 +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
bsalomon@google.com
1c31f63323 Remove texture/mask setters on GrPaint
Review URL: http://codereview.appspot.com/6446052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:39:06 +00:00
chudy@google.com
ea5488b965 GL Widget Alpha
Review URL: https://codereview.appspot.com/6422060

git-svn-id: http://skia.googlecode.com/svn/trunk@4789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:38:22 +00:00
keyar@chromium.org
451bb9f801 Changed to a class based method in passing around the rendering method for render_pictures.
This is based on a comment for https://codereview.appspot.com/6427061/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 17:27:57 +00:00
bsalomon@google.com
dbbc4e2da9 Add GL uniform manager
Review URL: http://codereview.appspot.com/6423066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4758 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:48:39 +00:00
borenet@google.com
de9ac1446c Fix Android build for new toolchain
The new toolchain (r8b) does not automatically include
the necessary directories
(http://code.google.com/p/android/issues/detail?id=35279).
Add them manually until this is fixed.
Review URL: https://codereview.appspot.com/6419076

git-svn-id: http://skia.googlecode.com/svn/trunk@4749 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 15:17:03 +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
bungeman@google.com
bbe5013141 Split SkGlyph into its own header.
https://codereview.appspot.com/6434049/


git-svn-id: http://skia.googlecode.com/svn/trunk@4741 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:33:21 +00:00
bungeman@google.com
0eec2d0486 Remove SkSfntUtils, as it is not longer used.
git-svn-id: http://skia.googlecode.com/svn/trunk@4735 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 17:50:25 +00:00
reed@google.com
ca0062ee5e add SkPaint::getPosTextPath(), with gm to test it
Review URL: https://codereview.appspot.com/6427055

git-svn-id: http://skia.googlecode.com/svn/trunk@4684 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:20:32 +00:00
chudy@google.com
d3058f5fd8 Quick bug fix that was rendering debugger unusable.
Review URL: https://codereview.appspot.com/6422050

git-svn-id: http://skia.googlecode.com/svn/trunk@4668 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 13:41:27 +00:00
twiz@google.com
5807116946 This CL implements the Ganesh path for the SkTable_ColorFilter color transformation.
A new texture stage dedicated to color transforms has been added, along with the new custom stage implementing the LUT.
Review URL: https://codereview.appspot.com/6351081

git-svn-id: http://skia.googlecode.com/svn/trunk@4663 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:41:50 +00:00
junov@chromium.org
77eec248cb Refactoring SkDeferredCanvas to use SkGPipe.
Keeping the refactor hidden behind a config macro for now.

TEST=covered by existing skia gm tests
BUG=https://code.google.com/p/chromium/issues/detail?id=133432
Review URL: https://codereview.appspot.com/6405054

git-svn-id: http://skia.googlecode.com/svn/trunk@4656 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 17:54:45 +00:00
borenet@google.com
7ef392940d Enable Compile Option to Build Android Executables
Since we can't debug APKs on 4.1, we sometimes need to
build Skia the old way for Android.  This CL enables
a switch to do so.
Review URL: https://codereview.appspot.com/6408053

git-svn-id: http://skia.googlecode.com/svn/trunk@4653 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 14:59:54 +00:00
tomhudson@google.com
2f68e7684b Move texture domains onto a GrCustomStage, off of GrSamplerState.
This will require gyp changes to roll into Chrome.

http://codereview.appspot.com/6405050/



git-svn-id: http://skia.googlecode.com/svn/trunk@4641 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 18:43:21 +00:00
keyar@chromium.org
a2333d9703 Added pipe as a rendering option for render_pictures.
I will add tiling as a rendering option and then figure out a way to not have the code duplicated between render_pictures and bench_pictures.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4626 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 17:29:16 +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
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
reed@google.com
8d850be3aa don't add circles on chopped cubics
git-svn-id: http://skia.googlecode.com/svn/trunk@4600 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 15:55:15 +00:00
tomhudson@google.com
d0c1a06cb9 Introduces new SingleTextureEffect base class for GrCustomStage objects.
This class tracks the texture that the object uses. A future commit will get rid of the
GrTexture pointer currenty stored in the GrDrawState, allowing us to have CustomStages
*without* textures.

Requires gyp change on next roll.

http://codereview.appspot.com/6306097/



git-svn-id: http://skia.googlecode.com/svn/trunk@4576 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 17:23:52 +00:00
chudy@google.com
e606d6e210 SkHitBox added.
SkHitBox is a class that determines which draw command is associated with the pixel located at x,y. By calculating a single point instead of the entire bitmap at once there is no visible performance slowdown.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4565 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 14:31:25 +00:00