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
robertphillips@google.com
46f935002c
Added SkClipStack portion of new clip mask caching system
...
http://codereview.appspot.com/6449089/
git-svn-id: http://skia.googlecode.com/svn/trunk@4978 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 15:38:08 +00:00
reed@google.com
e69137620a
move SkTextToPathIter into private header
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4977 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 15:19:47 +00:00
junov@chromium.org
3de7acc180
Removing the SkPicture backend from SkDeferredCanvas code
...
Review URL: https://codereview.appspot.com/6446095
git-svn-id: http://skia.googlecode.com/svn/trunk@4974 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:53:59 +00:00
junov@chromium.org
2e14ba8ceb
Adding API to SkGPipe and SkDeferredCanvas for controlling memory usage externally
...
BUG=http://code.google.com/p/chromium/issues/detail?id=136828
Review URL: https://codereview.appspot.com/6454102
git-svn-id: http://skia.googlecode.com/svn/trunk@4971 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:26:57 +00:00
reed@google.com
4b475d5ca0
enable large bitmap drawing by default (still disabled in chrome at the moment)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4965 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 13:19:01 +00:00
reed@google.com
02f65f2d91
move SkFilterShader into private header
...
Review URL: https://codereview.appspot.com/6454107
git-svn-id: http://skia.googlecode.com/svn/trunk@4961 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-06 21:20:05 +00:00
digit@google.com
157d94465a
rm: Introduce SK_ARM_NEON_WRAP handy wrapper macro.
...
It is used to simplify arm/neon dispatch logic code.
Review URL: https://codereview.appspot.com/6458060
git-svn-id: http://skia.googlecode.com/svn/trunk@4958 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-06 14:53:32 +00:00
reed@google.com
b932407520
add LF at the end, since this is SO important the chrome-mac build failed.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4957 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-06 14:37:22 +00:00
bsalomon@google.com
8d3d210e74
Ensure that enums used by GrCustomStage TestCreate functions are declared in SK_ALLOW_GLOBAL_STATIC_INITIALIZERS=0 builds (e.g. android)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4953 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 18:49:51 +00:00
bsalomon@google.com
0a7672f85e
Add morphology, convolution, single texture, texture domain effects to new unit test system
...
Review URL: http://codereview.appspot.com/6442085/
git-svn-id: http://skia.googlecode.com/svn/trunk@4951 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 18:12:20 +00:00
bsalomon@google.com
2a48c3adb7
Fix includes files missing in release builds from GrCustomStageUnitTest.h.
...
Also fix SK_SUPPORT_GPU=0 build breaks in gmmain.cpp and GLProgramsTest.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@4947 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 14:54:45 +00:00
bsalomon@google.com
d472620458
Registry-based unit test for custom effects
...
Review URL: http://codereview.appspot.com/6447085/
git-svn-id: http://skia.googlecode.com/svn/trunk@4946 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 14:34:46 +00:00
reed@google.com
dea8e252e1
fix warngs by casting from float to int64_t
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4945 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 13:55:37 +00:00
reed@google.com
c9af5d8d8a
add debugging SkFloatToFixed_Check() which asserts that the float is in range of a fixed
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 12:45:14 +00:00
twiz@google.com
a5e65ec434
Introduction of set of functions to manage generation of texture fetch shader code.
...
A new set of routines have been added to GrGLShaderBuilder to emit texture fetches, taking into consideration the format of the texture to be accessed, and the channel swizzle.
Review URL: https://codereview.appspot.com/6446072
git-svn-id: http://skia.googlecode.com/svn/trunk@4919 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 15:15:16 +00:00
reed@google.com
c8d640b178
special-case edge-building for polygons (paths with only lines)
...
makes the dashing bench faster (from 13.4 -> 11.5 ticks)
Review URL: https://codereview.appspot.com/6449080
git-svn-id: http://skia.googlecode.com/svn/trunk@4916 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 14:26: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
senorblanco@chromium.org
302cffba86
Replace the asAFoo() functions in SkImageFilter with canFilterImageGPU() and
...
onFilterImageGPU() virtuals. This allows each filter to implement its own GPU
processing code, even for multi-pass filters.
Review URL: http://codereview.appspot.com/6449075/
git-svn-id: http://skia.googlecode.com/svn/trunk@4900 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 20:16:34 +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
junov@chromium.org
d122fd5ab5
Turning on deferred canvas SkGPipe backend by default
...
Review URL: https://codereview.appspot.com/6452080
git-svn-id: http://skia.googlecode.com/svn/trunk@4897 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 20:00:03 +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
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
robertphillips@google.com
641f8b19a6
Replace GrClip with SkClipStack
...
http://codereview.appspot.com/6449070/
git-svn-id: http://skia.googlecode.com/svn/trunk@4865 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 19:15:58 +00:00
reed@google.com
4b2af9c91d
add getUnitsPerEm() to SkTypeface
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4863 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 17:24:44 +00:00
reed@google.com
5d4ba88694
check-point for gpu support in SkImage/SkSurface
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4859 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 15:45:27 +00:00
robertphillips@google.com
7b11289b4e
Added dev- & canv- prefixes to Ganesh bounding boxes to indicate coordinate space
...
http://codereview.appspot.com/6457061/
git-svn-id: http://skia.googlecode.com/svn/trunk@4856 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 15:18:21 +00:00
djsollen@google.com
a1da103431
Update SkData and SkDataSet to make better use of SkFlattenable.
...
TEST=DataRefTest.cpp
Review URL: https://codereview.appspot.com/6441076
git-svn-id: http://skia.googlecode.com/svn/trunk@4850 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 13:17:31 +00:00
robertphillips@google.com
f8d904a7ee
GrClip no longer translates its clips (to better mimic SkClipStack's behavior)
...
http://codereview.appspot.com/6445052/
git-svn-id: http://skia.googlecode.com/svn/trunk@4848 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 12:18:16 +00:00
reed@google.com
9ea5a3bc73
change SkSurface::newCanvas() to getCanvas(), and redefine its life-cycle to be
...
a single canvas for the lifetime of the surface.
Get a playback copy from the src picture, so we can continue to record into the
original picture.
git-svn-id: http://skia.googlecode.com/svn/trunk@4842 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 21:03:46 +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
bungeman@google.com
9120892268
Const correct BlockRef in SkAutoTUnref.
...
https://codereview.appspot.com/6448066/
git-svn-id: http://skia.googlecode.com/svn/trunk@4829 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 15:03:59 +00:00
bsalomon@google.com
cddaf340f1
Remove GrDrawState::setTexture/getTexture
...
Review URL: http://codereview.appspot.com/6455051/
git-svn-id: http://skia.googlecode.com/svn/trunk@4826 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 13:09:05 +00:00
reed@google.com
79a1c34ee4
land https://codereview.appspot.com/6448046/
...
Add a method reporting used font cache size to the SkGraphics API
git-svn-id: http://skia.googlecode.com/svn/trunk@4825 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 13:08:01 +00:00
reed@google.com
889b09edfe
check-point for surface experiment
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4819 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 21:10:42 +00:00
george@mozilla.com
2092c40a0d
Add support for ARM without EDSP and ARMv6+
...
Original Mozilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=751814
Review URL: https://codereview.appspot.com/6405065
git-svn-id: http://skia.googlecode.com/svn/trunk@4818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 21:08: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
reed@google.com
f6627b78f9
check-point for image experiment
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4811 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 18:02:50 +00:00
justinlin@google.com
20a550c6ea
Add virtual destructor to class with virtual functions.
...
BUG=
TEST=
Review URL: https://codereview.appspot.com/6453052
git-svn-id: http://skia.googlecode.com/svn/trunk@4810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 17:37:12 +00:00
djsollen@google.com
7dade42e6f
Always store pixels of mutable bitmaps when recording a SkPicture.
...
Prior to this CL mutable bitmaps only saved a copy of their pixels
if a flag was set at recording time. That flag has been removed
and the default behavior when recording a mutable bitmap is to
make a copy of it's pixels. This is the only way to ensure that
the pixels are not manipulated before we playback their contents.
However, enabling this behavior breaks the recording of extracted
bitmaps in SkPicture. This is because we currently cache bitmaps
within a picture based only on their pixelRef. This results in
false positive cache hit when drawing an extracted bitmap as it
shares a pixelRef with its orginating bitmap. Therefore we must
update the index of the bitmap cache to be both the pixelRef AND
the size and offset of the bitmap using those pixels.
BUG=
TEST=extractbitmap.cpp
Review URL: https://codereview.appspot.com/6439043
git-svn-id: http://skia.googlecode.com/svn/trunk@4809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 15:58:23 +00:00
djsollen@google.com
c84b8335ee
Reapply "Remove Bitmaps Raw Pixel Support."
...
This CL reapplies r4722. Now that we have addressed the issues
in Chrome tests that were causing asserts to be fired.
Review URL: https://codereview.appspot.com/6452050
git-svn-id: http://skia.googlecode.com/svn/trunk@4804 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:41:44 +00:00
bsalomon@google.com
1448cf8cb6
Specialize SkAutoTUnref on const T so that operator -> works.
...
Review URL: http://codereview.appspot.com/6450054/
git-svn-id: http://skia.googlecode.com/svn/trunk@4802 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 13:27:35 +00:00
robertphillips@google.com
e4d69c0e46
Added getConservativeBound helper function to GrClipData
...
http://codereview.appspot.com/6454054/
git-svn-id: http://skia.googlecode.com/svn/trunk@4798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:37:40 +00:00
robertphillips@google.com
fc91dc7004
Windows compiler complaint cleanup
...
http://codereview.appspot.com/6441055/
git-svn-id: http://skia.googlecode.com/svn/trunk@4796 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 21:18:31 +00:00
scroggo@google.com
15011ee5e4
Make SkDeferredCanvas query SkGPipeWriter for space allocated for bitmaps.
...
SkGPipe now has a method to report how much memory is used for its shared heap.
BUG=http://code.google.com/p/skia/issues/detail?id=738
TEST=DeferredCanvasTest
Review URL: https://codereview.appspot.com/6445046
git-svn-id: http://skia.googlecode.com/svn/trunk@4791 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:03:32 +00:00
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
robertphillips@google.com
beb1af78d0
Altered Ganesh's clip stack plumbing to pass down new GrClipData class
...
http://codereview.appspot.com/6454047/
git-svn-id: http://skia.googlecode.com/svn/trunk@4788 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 18:52:16 +00:00
robertphillips@google.com
cc6493bbef
Added ctor to SkClipStack and isEmpty method
...
http://codereview.appspot.com/6444048/
git-svn-id: http://skia.googlecode.com/svn/trunk@4787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 18:39:13 +00:00
reed@google.com
0bb18bb264
explicitly track if a path is finite or not
...
we need this (it appears) so we can definitively reject non-finite paths
in canvas, before passing them down into the guts.
Review URL: https://codereview.appspot.com/6453047
git-svn-id: http://skia.googlecode.com/svn/trunk@4784 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 15:20:36 +00:00
djsollen@google.com
56f8f338b6
Revert "Remove Bitmaps Raw Pixel Support."
...
BUG=
TEST=
Review URL: https://codereview.appspot.com/6449049
git-svn-id: http://skia.googlecode.com/svn/trunk@4780 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 14:48:52 +00:00
bsalomon@google.com
b8670998a5
Move filter/wrap out of GrSamplerState into GrTextureParams
...
Review URL: http://codereview.appspot.com/6440046/
git-svn-id: http://skia.googlecode.com/svn/trunk@4773 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 21:27:09 +00:00
george@mozilla.com
ece0100c22
Fix SK_OVERRIDE for various versions of clang
...
BUG=
TEST=
Review URL: https://codereview.appspot.com/6430052
git-svn-id: http://skia.googlecode.com/svn/trunk@4765 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 19:05:43 +00:00
george@mozilla.com
79c865a5c8
Ensure that all GNU-based systems are considered to be UNIX
...
Original Mozilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=749533
R=reed1
BUG=
TEST=
Review URL: https://codereview.appspot.com/6419057
git-svn-id: http://skia.googlecode.com/svn/trunk@4763 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 18:52:56 +00:00
junov@chromium.org
b10a6bd0a7
Refactoring how SkDeferredCanvas manages mutable bitmaps
...
This CL makes the SkGPipe flavor of SkDeferredCanvas properly
decide whether to flush or record mutable bitmaps. The flushing
is now managed by conditionally switching the canvas to non-deferred
mode, which avoids an unnecessary transient copy of the bitmap.
BUG=http://code.google.com/p/chromium/issues/detail?id=137884
TEST=DeferredCanvas unit test, sub test TestDeferredCanvasMemoryLimit
Review URL: https://codereview.appspot.com/6421060
git-svn-id: http://skia.googlecode.com/svn/trunk@4756 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:27:13 +00:00
rileya@google.com
91f319c5dc
Use asNewCustomStage instead of asABitmap in SkGpuDevice, also removed now-unecessary twoPointRadialParams parameter from asABitmap.
...
In SkGpuDevice we still fall back on using asABitmap for effects that don't have asNewCustomStage implemented, but it still simplifies things a fair amount.
Review URL: https://codereview.appspot.com/6430060
git-svn-id: http://skia.googlecode.com/svn/trunk@4755 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:18:31 +00:00
bungeman@google.com
0567f222b9
Add SkScalarPow.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4754 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:00:47 +00:00
reed@google.com
bba65d9a5e
experimental only
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4748 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 14:42:15 +00:00
robertphillips@google.com
4c2a2f7c5e
Added isIntersectionOfRects to SkClipStack
...
http://codereview.appspot.com/6434050/
git-svn-id: http://skia.googlecode.com/svn/trunk@4745 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 22:07:50 +00:00
tomhudson@google.com
dcba4c2cc3
Use GrMemoryPool to manage GrCustomStage allocations.
...
Improve memory reclamation of GrMemoryPool for new/delete/new/delete pattern.
http://codereview.appspot.com/6438046/
git-svn-id: http://skia.googlecode.com/svn/trunk@4744 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 21:36:16 +00:00
bungeman@google.com
6e502fe067
Fix Android build broken due to changes in r4741.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4743 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 21:18:54 +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
bungeman@google.com
aa8483b49d
SkSfntUtils should use public types.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4734 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 17:34:41 +00:00
robertphillips@google.com
607fe077c8
Added bound computation to SkClipStack
...
http://codereview.appspot.com/6419048/
This will require re-baselining of complexclip* and filltypespersp
git-svn-id: http://skia.googlecode.com/svn/trunk@4730 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 13:54:00 +00:00
robertphillips@google.com
a6f11c4f71
Gave GrClip an SkClipStack-style iterator
...
http://codereview.appspot.com/6434046/
git-svn-id: http://skia.googlecode.com/svn/trunk@4723 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 17:39:44 +00:00
djsollen@google.com
c1d1f414a0
Remove Bitmaps Raw Pixel Support.
...
bitmap.setPixels(...) now creates a mutable pixelRef instead
of just setting fPixels.
Review URL: https://codereview.appspot.com/6419044
git-svn-id: http://skia.googlecode.com/svn/trunk@4722 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 16:54:30 +00:00
reed@google.com
f79430350d
add protected method for internal_dispose overrides to jam fRefCnt before
...
calling destructor.
move SkTRefArray to actually inherit from SkRefCnt
Review URL: https://codereview.appspot.com/6422057
git-svn-id: http://skia.googlecode.com/svn/trunk@4719 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 14:50:38 +00:00
junov@chromium.org
8317e17448
Response to post-commit review comments on r4714
...
Correcting formatting and adding const in SkDeferredCanvas.h
Unreviewed
git-svn-id: http://skia.googlecode.com/svn/trunk@4718 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 14:17:45 +00:00
junov@chromium.org
bfeddae9da
Fix unbound memory consumption problem with run away deferred canvases.
...
With this CL, deferred canvases will trigger a flush when then the
memory allocated for recording commands (including flattened objects)
exceeds 64MB.
TEST=DeferredCanvas skia unit test, test step TestDeferredCanvasMemoryLimit
BUG=http://code.google.com/p/chromium/issues/detail?id=137884
Review URL: https://codereview.appspot.com/6425053
git-svn-id: http://skia.googlecode.com/svn/trunk@4714 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-23 13:35:14 +00:00
rileya@google.com
03c1c359b3
Added asNewCustomStage to SkShader and implemented it for all the gradient shaders.
...
Not actually hooked up yet, but it should be ready to replace asABitmap for a future CL.
Review URL: https://codereview.appspot.com/6351113
git-svn-id: http://skia.googlecode.com/svn/trunk@4702 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 20:02:43 +00:00
junov@chromium.org
8e1678ff9e
Reverting r4695
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4697 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 18:32:39 +00:00
junov@chromium.org
278de8b3b3
Try turning on the SkGPipe path in SkDeferredCanvas
...
Unreviewed
git-svn-id: http://skia.googlecode.com/svn/trunk@4695 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 18:00:59 +00:00
tomhudson@google.com
1e8f016305
Remove easily-removable uses of setTexture(), instead creating a GrSingleTextureEffect -
...
where feasible, through convenience function on GrDrawState.
http://codereview.appspot.com/6425055/
git-svn-id: http://skia.googlecode.com/svn/trunk@4694 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 16:25:18 +00:00
robertphillips@google.com
80214e26c5
Made clarifying renamings to SkClipStack's iterators (and added to unit test)
...
http://codereview.appspot.com/6423051/
git-svn-id: http://skia.googlecode.com/svn/trunk@4692 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 15:33:18 +00:00
bsalomon@google.com
e3d3216fe1
Remove stage masks
...
Review URL: http://codereview.appspot.com/6422047/
git-svn-id: http://skia.googlecode.com/svn/trunk@4688 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 13:37:06 +00:00
reed@google.com
73c48f1713
removing trailing ',' on last entry in enum, to fix warning
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4686 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:35:40 +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
junov@chromium.org
6a0d010e2d
Fixing heap corruption issue in deferred canvas when using SkGPipe.
...
Swapping the declaration order of fPipeController and fPipeWriter to
make sure that the writer is destroyed first before the controller.
Review URL: https://codereview.appspot.com/6427054
git-svn-id: http://skia.googlecode.com/svn/trunk@4682 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 21:00:07 +00:00
rileya@google.com
22e57f9916
New subclasses for both Gr and GrGL gradient effect classes.
...
This replaces GrSingleTextureEffect as the base for gradient effects (so we'll be able to do gradient effects without textures), and adds a base class to the GL gradient custom stage implementations (which will soon handle generating the appropriate code to pass colors in and lerp instead of using a cached texture for simpler gradient cases).
Also added a custom stage for linear gradients.
Review URL: https://codereview.appspot.com/6426049
git-svn-id: http://skia.googlecode.com/svn/trunk@4674 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-19 15:16:19 +00:00
rileya@google.com
24f3ad1bbb
Move texture lock/unlock functions from SkGpuDevice into SkGr as global functions, also removed inconsistent "SkGr" class.
...
Review URL: https://codereview.appspot.com/6420048
git-svn-id: http://skia.googlecode.com/svn/trunk@4664 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 21:47:40 +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
senorblanco@chromium.org
1e95d715d0
Clean up the use of AutoScratchTexture in the gaussian blur and morphology
...
filters. Instead of passing in AutoScratchTextures for temporaries, we allocate
them inside the function and detach() after rendering. Since the functions now
return a ref()'ed texture, we no longer ref() the result in filter_texture().
Also, the imageblur gm was passing a paint with an image filter both to
saveLayer()/restore(), and to every text draw call. Back when only restore()
was applying filters, this was fine, but since we're now applying filters on all
draw calls, this means we're double-blurring in this GM.
I've reverted the Mac baselines for the imageblur GM to their previous versions;
hopefully this will be correct.
git-svn-id: http://skia.googlecode.com/svn/trunk@4659 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 19:52:53 +00:00
vandebo@chromium.org
7f1ffa6b42
Add SK_API for SkData. Needed for https://bugs.webkit.org/show_bug.cgi?id=91171
...
Review URL: https://codereview.appspot.com/6420047
git-svn-id: http://skia.googlecode.com/svn/trunk@4658 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 18:53:28 +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
robertphillips@google.com
5836b6dec5
Add skipToLast method to SkClipStack
...
http://codereview.appspot.com/6411043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4644 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-18 12:06:15 +00:00
alokp@chromium.org
f7751ae229
Exported SkFILEWStream class so that it can be used in Chrome.
...
Review URL: https://codereview.appspot.com/6409052
git-svn-id: http://skia.googlecode.com/svn/trunk@4643 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 19:10:36 +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
scroggo@google.com
284bf502c0
Purge bitmaps from SkGPipe's shared heap.
...
BitmapInfo:
Now in SkGPipePriv so it can be accessed by SkGPipeRead.
Add the ability to essentially ref count BitmapInfos so that they can
be purged to make room in the shared heap for a new one.
SkGPipeWrite:
Purge the least recently used bitmap if it has already been drawn by
all readers.
SkGPipeRead:
Read the BitmapInfo (instead of the SkBitmap) and decrement its count
after drawing.
SkGPipeController:
Added a method to tell how many readers will be used, so that when
purging bitmaps each reader can be accounted for.
Review URL: https://codereview.appspot.com/6374065
git-svn-id: http://skia.googlecode.com/svn/trunk@4638 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 16:10:34 +00:00
reed@google.com
e9fdfb545d
remove Symbian (not needed) flag, and assume all CPUs *except* thumb have fast
...
conditional instructions.
git-svn-id: http://skia.googlecode.com/svn/trunk@4635 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-17 12:13:56 +00:00
robertphillips@google.com
52cb2c7cdf
Extended SkDeque's reverse iteration capability to SkClipStack
...
http://codereview.appspot.com/6409046/
git-svn-id: http://skia.googlecode.com/svn/trunk@4631 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 18:52:29 +00:00
robertphillips@google.com
0a78b0f4a2
Refactor SkDeque's iterator and allocation method
...
http://codereview.appspot.com/6353098/
git-svn-id: http://skia.googlecode.com/svn/trunk@4624 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 16:58:49 +00:00
scroggo@google.com
50ccb0a738
Add a skia method to perform an atomic add.
...
Complements sk_atomic_inc for when you want to increase by more than one.
This time, use the correct atomic add function on Windows.
Reviewed at https://codereview.appspot.com/6399050/
Review URL: https://codereview.appspot.com/6407048
git-svn-id: http://skia.googlecode.com/svn/trunk@4623 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 16:51:28 +00:00
scroggo@google.com
96cbd2c4d2
Revert "Add a method to atomic add."
...
This reverts commit eb539cf92f487daf9567ffbbba6b6653406d43ae.
BUG=
TEST=
Review URL: https://codereview.appspot.com/6395051
git-svn-id: http://skia.googlecode.com/svn/trunk@4615 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:22:56 +00:00
scroggo@google.com
e3f84f3911
Add a skia method to perform an atomic add.
...
Complements sk_atomic_inc for when you want to increase by more than one.
Review URL: https://codereview.appspot.com/6350106
git-svn-id: http://skia.googlecode.com/svn/trunk@4614 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-16 13:13:29 +00:00
vandebo@chromium.org
238be8c7e5
[PDF] Add link annotations.
...
Review URL: https://codereview.appspot.com/6346100
git-svn-id: http://skia.googlecode.com/svn/trunk@4609 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 20:06:02 +00:00
tomhudson@google.com
e742bf0ab1
Start removing calls to GrDrawState::setTexture() (and GrPaint::setTexture()?) when there's
...
a GrSingleTextureEffect involved holding the texture.
http://codereview.appspot.com/6353094/
git-svn-id: http://skia.googlecode.com/svn/trunk@4608 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 19:54:19 +00:00
robertphillips@google.com
40a1ae4df2
Added SkDevice onAttachToCanvas & onDetachFromCanvas methods
...
http://codereview.appspot.com/6348100/
git-svn-id: http://skia.googlecode.com/svn/trunk@4598 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 15:36:15 +00:00
epoger@google.com
af07d065d1
Add SkTDArray.contains(), which is just a wrapper around find()
...
Review URL: https://codereview.appspot.com/6349103
git-svn-id: http://skia.googlecode.com/svn/trunk@4595 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 14:53:18 +00:00
bsalomon@google.com
fd4c00eb36
Fix SkMatrix.h line endings (LF) [change 4592 fixed the cpp]
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4594 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 14:39:51 +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