Commit Graph

930 Commits

Author SHA1 Message Date
bsalomon@google.com
4f3c253ece Add flag to disable gl error checking when allocating gpu objects
Review URL: http://codereview.appspot.com/5558052/



git-svn-id: http://skia.googlecode.com/svn/trunk@3075 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-19 16:16:52 +00:00
tomhudson@google.com
13e812c69a Interpolate vertical linear gradients for improved quality.
Consolidate interpolation functions, add new faster more accurate dithering
interpolator.



git-svn-id: http://skia.googlecode.com/svn/trunk@3072 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 21:28:01 +00:00
bsalomon@google.com
dd1be60702 Pull xfer mode test out of generic draw-as-hairline test. Use coverage rather than alpha to draw hairlines < 1pix wide in GPU.
Review URL: http://codereview.appspot.com/5528112/




git-svn-id: http://skia.googlecode.com/svn/trunk@3070 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 20:34:00 +00:00
schenney@chromium.org
f4b07328df Somehow this change was missing from the previous commit.
git-svn-id: http://skia.googlecode.com/svn/trunk@3063 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 18:06:10 +00:00
schenney@chromium.org
a6d04d90e2 Fixing the behavior of SkPathMeasure to reflect changes in SkPath::Iter.
This implementation modifies SkPath::Iter extensively to avoid copying
the points when used to measure path length.

BUG=446
TEST=tests/PathMeasureTest.cpp
Review URL: https://codereview.appspot.com/5533074

git-svn-id: http://skia.googlecode.com/svn/trunk@3062 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 18:02:10 +00:00
reed@google.com
8351aabbfe add GenA8FromLCD as a hack to force GDI to create the A8 mask from the LCD
results, rather than asking GDI directly for A8 (which it sometimes decides
to interpret as BW)



git-svn-id: http://skia.googlecode.com/svn/trunk@3061 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 17:06:35 +00:00
junov@google.com
4370aedf7f Adding class SkDeferredCanvas for deferred rendering.
TEST=added a new pass to gm, so all gm tests are run through SkDeferredCanvas
REVIEW=http://codereview.appspot.com/5430058/



git-svn-id: http://skia.googlecode.com/svn/trunk@3059 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 16:21:08 +00:00
reed@google.com
d335d1d784 automatically inject a moveTo if we see a close followed by a line/quad/cubic
git-svn-id: http://skia.googlecode.com/svn/trunk@3027 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-12 18:17:11 +00:00
reed@google.com
dcbd6e358a remove unused bool param to SkMutex constructor
git-svn-id: http://skia.googlecode.com/svn/trunk@3025 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-12 15:21:16 +00:00
bsalomon@google.com
dafde9e2c1 Remove shadersupport caps bit
Review URL: http://codereview.appspot.com/5528076/



git-svn-id: http://skia.googlecode.com/svn/trunk@3015 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-11 18:45:39 +00:00
digit@google.com
f66436cff7 android: optimize atomics routines
This patch provides a slightly optimized implementation of
atomic increment/decrement functions by using static inlined
versions of the gcc intrinsics.
Review URL: http://codereview.appspot.com/5498069

git-svn-id: http://skia.googlecode.com/svn/trunk@3012 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-11 17:44:41 +00:00
senorblanco@chromium.org
c79fd6ea3f Export SkColorMatrixFilter via SK_API.
Review URL:  http://codereview.appspot.com/5534064/



git-svn-id: http://skia.googlecode.com/svn/trunk@3006 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-10 21:56:40 +00:00
reed@google.com
69a9943b67 add SkPath::cheapComputeDirection() plus unittests
git-svn-id: http://skia.googlecode.com/svn/trunk@2996 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-10 18:00:10 +00:00
reed@google.com
63d73749fb add SkPath::reverseAddPath()
git-svn-id: http://skia.googlecode.com/svn/trunk@2995 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-10 15:33:12 +00:00
djsollen@google.com
a44e6c6b53 Add ARM optimizations to the build.
Also had to fix a problem in the ARM memset code that was
causing some tests and bench to fail.
Review URL: http://codereview.appspot.com/5522052

git-svn-id: http://skia.googlecode.com/svn/trunk@2989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-09 14:38:25 +00:00
reed@google.com
b55deeb1c7 add allowImageFilter() so a device can allow/disallow filters
(esp. for printing)



git-svn-id: http://skia.googlecode.com/svn/trunk@2981 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-06 14:43:09 +00:00
reed@google.com
76dd277b1f add filterImage() entry-point to SkDevice, to allow it to specialize on subclasses
of SkImageFilter. If that returns false, then the filter itself is invoked.



git-svn-id: http://skia.googlecode.com/svn/trunk@2977 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-05 21:15:07 +00:00
reed@google.com
7191840eec add asComponentTable() query (will impl in SkTableColorFilter next)
git-svn-id: http://skia.googlecode.com/svn/trunk@2971 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-05 17:24:35 +00:00
caryclark@google.com
d53f7c28bf make getOrigin() public so callers can adjust layer
git-svn-id: http://skia.googlecode.com/svn/trunk@2970 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-05 17:05:05 +00:00
bsalomon@google.com
280e99f1a6 Add support for GL texture storage
Review URL: http://codereview.appspot.com/5462046/



git-svn-id: http://skia.googlecode.com/svn/trunk@2966 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-05 16:17:38 +00:00
mike@reedtribe.org
f58f9f62d7 remove as these are replaced by SkJSON
git-svn-id: http://skia.googlecode.com/svn/trunk@2965 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-05 03:10:59 +00:00
schenney@chromium.org
6630d8d8ea Add the ability to iterate through a path without modification. This change is
required by WebKit SVG in order to correctly draw markers and endcaps.

BUG=415
TEST=TestPath in the unit tests
Review URL: http://codereview.appspot.com/5505097

git-svn-id: http://skia.googlecode.com/svn/trunk@2962 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-04 21:05:51 +00:00
mike@reedtribe.org
0e3c9caae5 add count(), fix bad llist logic in remove()
git-svn-id: http://skia.googlecode.com/svn/trunk@2958 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-04 11:37:46 +00:00
mike@reedtribe.org
e4058b402f add Object::remove, some dox, leak debugging code
git-svn-id: http://skia.googlecode.com/svn/trunk@2957 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-04 03:37:40 +00:00
senorblanco@chromium.org
50bdad85db Implement the color matrix filter in Ganesh. Also, fix and enable the color
matrix test slide.  This was basically implemented in the same places where
the blending-based color filter was being done.  The shader simply does a mat4
matrix multiply and a vec4 add.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@2948 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-03 20:51:57 +00:00
reed@google.com
abf00aaaa0 expose isSubpixel() on the cache, so SkDraw can know if it should expect
subpixel text (it may be that the paint requested it, but the scaler ignored it)



git-svn-id: http://skia.googlecode.com/svn/trunk@2946 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-03 19:43:20 +00:00
tomhudson@google.com
d5d9dadcdd Update header comments to more accurately describe behavior of
SkRegion::getBoundaryPath(). Add SkASSERT of SkPath argument for safety.

codereview.appspot.com/5504095/



git-svn-id: http://skia.googlecode.com/svn/trunk@2942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-03 14:52:37 +00:00
mike@reedtribe.org
0f175a6dab experiment #2 for JSON data
git-svn-id: http://skia.googlecode.com/svn/trunk@2940 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-02 00:34:50 +00:00
mike@reedtribe.org
41f1c46ddc add experimental class for json
git-svn-id: http://skia.googlecode.com/svn/trunk@2939 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-31 01:58:40 +00:00
schenney@chromium.org
72785c4c89 Fix problems with SampleApp Fuzzer due to issues in iterating over degenerate paths.
The fuzzer gets my vote as best test tool ever.

There are several issues outstanding: crashes in FixedPoint and a crash in the
path filling code that is most likely due to clipping problems (but maybe not).

BUG=425
Review URL: http://codereview.appspot.com/5503080

git-svn-id: http://skia.googlecode.com/svn/trunk@2936 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-29 21:03:28 +00:00
tomhudson@google.com
a31ac73b8e Tighten up restrictions on blit width: some shaders assert that they
are addressing more than 0 pixels.
codereview.appspot.com/5489125/



git-svn-id: http://skia.googlecode.com/svn/trunk@2935 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-29 16:09:31 +00:00
mike@reedtribe.org
a69b48c29d Add SkTableColorFilter, as a foundation for several SVG filters
git-svn-id: http://skia.googlecode.com/svn/trunk@2933 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-28 20:31:00 +00:00
mike@reedtribe.org
7012162d2f add SK_OVERRIDE
git-svn-id: http://skia.googlecode.com/svn/trunk@2932 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-28 20:17:42 +00:00
tomhudson@google.com
4714359ec0 Bugfixes to antialiased blitting.
More details of blitter contracts in function headers.
New precautionary assert in one high-level default blitter.



git-svn-id: http://skia.googlecode.com/svn/trunk@2928 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-28 17:58:07 +00:00
tomhudson@google.com
0c00f21fee Add SkDEBUGFAIL to clean up use of SkASSERT(!"text");
catch a couple of latent SkASSERT("text") bugs.

http://codereview.appspot.com/5504090/



git-svn-id: http://skia.googlecode.com/svn/trunk@2926 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-28 14:59:50 +00:00
tomhudson@google.com
49eac192fa New 'blitAntiRect' entry point for blitters, specialized in supersampling
code to avoid quarter-scanline-at-a-time building of large rectangular
clips.

Speeds up aa_clip_build_path_AA benchmark 2x, aa_clip_build_rect_AA benchmark
10x or more. This is a sufficient performance gain to let Chromium reenable
WebKit's soft clipping code. Rolling into Chromium will require ~18
rebaselines.



git-svn-id: http://skia.googlecode.com/svn/trunk@2924 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-27 13:59:20 +00:00
schenney@chromium.org
b0af6dad94 Protecting changes to the SkPath iteration with an ifdef for Chromium.
Something is broken, and this will protect us while we sort it out.

Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@2922 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-21 20:43:13 +00:00
reed@google.com
cf4b8181c9 declare IsVariationSelector to be inline, to fix warning
git-svn-id: http://skia.googlecode.com/svn/trunk@2917 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-21 16:31:23 +00:00
reed@google.com
419f43348a add SkUnichar_IsVariationSelector()
git-svn-id: http://skia.googlecode.com/svn/trunk@2915 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-21 15:21:32 +00:00
senorblanco@chromium.org
e5ff3cefe0 Implement SkColorFilter::asColorMatrix() virtual, and override in
SkColorMatrixFilter.  Implement missing SkColorMatrixFilter::setMatrix() and
setArray() functions (were in .h, just not implemented).  Add a gm for color
matrix filters.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@2909 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-20 20:58:18 +00:00
caryclark@google.com
9d0c6ecb84 fix 'no static globals' for chromium
M    include/core/SkFlattenable.h
M    include/core/SkPixelRef.h
M    src/core/SkGraphics.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2908 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-20 20:26:56 +00:00
senorblanco@chromium.org
ae814c7476 A software implementation of the Gaussian blur filter, using 3 box blurs. Also
re-enable the imageblur GM test, since the SkPicture path now works.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@2905 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-20 20:02:19 +00:00
reed@google.com
32d25b6f5f initial impl of SkImageFilters : virtual signature will change!
Do not invest too much in other subclasses until this API solidifies.



git-svn-id: http://skia.googlecode.com/svn/trunk@2903 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-20 16:19:00 +00:00
schenney@chromium.org
4da06ab335 Modifying SkPath to store all verbs provided by the user, and to give
correct results for all stroke and fill modes even on the various types
of degenerate paths.

The goals of this patch include:
1. Have Skia store all of the verbs implied by path construction methods, even
if those define degenerate paths. The SVG implementation in WebKit, which is
backed by Skia, needs to know about all elements of the path, even degenerate
ones, for the correct drawing of markers and line caps. For example, in SVG you
should be able to draw a scatter plot by specifying a marker for vertices and
then giving a sequence of moveTo commands. Skia will not store the moveTos,
requiring a different storage mechanism.

2. Assuming 1, maintain the current Skia behavior. That is, make Skia robust to
degenerate paths.

3. Fix an existing bug in Skia where a degenerate moveTo-lineTo pair spits out
warnings from rasterization and produces incorrect results in inverse-fill
renderings.

4. Adds extensive testing for degenerate paths and path rendering in general.

To meet these goals, the patch I am proposing will result in minor additional
storage for degenerate paths (a few bytes per degenerate path, only if the user
defines such paths). There is also some additional overhead in the iteration
code, with the path now cleaned to remove degenerate segments as part of the
iteration process. I suspect this will also fix issues with computing normal
vectors to degenerate segments. Benchmarking suggests that this change may
result in slightly (< 1%) slower path drawing due to the checks for
degeneracy. This overhead could be removed (in fact, a significant speedup
could occur) if the results of iterating to clean up the path were cached.
This would cost memory, of course, and quite a bit of it.

BUG=398
TEST=tests/PathTest.cpp
     gm/cubicpaths.cpp
     gm/degeneratesegments.cpp
     gm/movepaths.cpp
     gm/linepaths.cpp
     gm/quadpaths.cpp
Review URL: http://codereview.appspot.com/5482051

git-svn-id: http://skia.googlecode.com/svn/trunk@2901 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-20 15:14:18 +00:00
reed@google.com
24569b5bad sk_float_round isn't a function, so call this instead: sk_float_floor((x) + 0.5f)
git-svn-id: http://skia.googlecode.com/svn/trunk@2895 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-16 20:53:22 +00:00
caryclark@google.com
f86ab8472e cleanup font purging functions
M    include/core/SkGraphics.h
M    src/core/SkGraphics.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2887 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-16 17:11:17 +00:00
junov@chromium.org
b052129a41 Exposing the isImmutable/setImmutable API of SkPixelRef in SkBitmap
REVIEW=http://codereview.appspot.com/5491055/



git-svn-id: http://skia.googlecode.com/svn/trunk@2883 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-15 20:14:06 +00:00
caryclark@google.com
d26147adbb add optional manual global initialization
M    include/effects/SkAvoidXfermode.h
M    include/effects/SkDiscretePathEffect.h
M    include/effects/Sk1DPathEffect.h
M    include/effects/Sk2DPathEffect.h
M    include/effects/SkBlurDrawLooper.h
M    include/effects/SkPixelXorXfermode.h
M    include/effects/SkDashPathEffect.h
M    include/effects/SkColorMatrixFilter.h
M    include/effects/SkEmbossMaskFilter.h
M    include/effects/SkLayerDrawLooper.h
M    include/effects/SkGroupShape.h
M    include/effects/SkBlurImageFilter.h
M    include/effects/SkRectShape.h
A    include/effects/SkEffects.h
M    include/effects/SkCornerPathEffect.h
M    include/effects/SkGradientShader.h
M    include/effects/SkBlurMaskFilter.h
M    include/effects/SkLayerRasterizer.h
M    include/core/SkMallocPixelRef.h
M    include/core/SkFlattenable.h
M    include/core/SkShape.h
M    include/core/SkPixelRef.h
M    include/core/SkGraphics.h
M    include/core/SkPathEffect.h
M    include/core/SkPostConfig.h
M    include/core/SkXfermode.h
M    include/core/SkColorFilter.h
M    include/images/SkFlipPixelRef.h
M    include/images/SkImageRef_GlobalPool.h
M    src/effects/SkDashPathEffect.cpp
M    src/effects/SkColorMatrixFilter.cpp
M    src/effects/SkBlurImageFilter.cpp
M    src/effects/SkGroupShape.cpp
M    src/effects/SkCornerPathEffect.cpp
M    src/effects/SkGradientShader.cpp
M    src/effects/SkBlurMaskFilter.cpp
M    src/effects/SkAvoidXfermode.cpp
M    src/effects/Sk2DPathEffect.cpp
M    src/effects/SkBlurDrawLooper.cpp
M    src/effects/SkPixelXorXfermode.cpp
M    src/effects/SkColorFilters.cpp
M    src/effects/SkLayerDrawLooper.cpp
M    src/effects/SkRectShape.cpp
A    src/effects/SkEffects.cpp
M    src/effects/SkLayerRasterizer.cpp
M    src/effects/SkDiscretePathEffect.cpp
M    src/effects/Sk1DPathEffect.cpp
A    src/effects/SkEffects_none.cpp
M    src/core/SkPixelRef.cpp
M    src/core/SkGraphics.cpp
M    src/core/SkFlattenable.cpp
M    src/core/SkBitmapProcShader.h
M    src/core/SkPathEffect.cpp
M    src/core/SkShape.cpp
M    src/core/SkXfermode.cpp
M    src/core/SkMallocPixelRef.cpp
M    src/core/SkBitmapProcShader.cpp
M    src/images/SkFlipPixelRef.cpp
M    src/images/SkImageRef_GlobalPool.cpp
A    src/ports/SkGlobalInitialization_chromium.cpp
M    src/ports/SkImageRef_ashmem.h
M    src/ports/SkImageRef_ashmem.cpp
A    src/ports/SkGlobalInitialization_default.cpp
M    gyp/effects.gyp
M    gyp/tools.gyp
M    gyp/ports.gyp



git-svn-id: http://skia.googlecode.com/svn/trunk@2876 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-15 14:16:43 +00:00
reed@google.com
7c2029367c add canvas::isDrawingToLayer(), as a fast query for chrome; faster than
setting up a drawiter and counting the layers.



git-svn-id: http://skia.googlecode.com/svn/trunk@2875 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-14 18:48:05 +00:00
bsalomon@google.com
aa814fe4a1 Access sampler matrices directly, cleanup GrSamplerState::reset()s
Review URL: http://codereview.appspot.com/5488048/


git-svn-id: http://skia.googlecode.com/svn/trunk@2854 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-12 18:45:07 +00:00
bsalomon@google.com
1e266f8ff2 Remove GrDrawState::setSampler, use direct access to sampler
Review URL: http://codereview.appspot.com/5476052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2852 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-12 16:11:33 +00:00
bsalomon@google.com
1fadb20c50 Remove static initiazled gClampNearest in gpu backend
Review URL: http://codereview.appspot.com/5487044/


git-svn-id: http://skia.googlecode.com/svn/trunk@2851 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-12 16:10:08 +00:00
mike@reedtribe.org
e51755fc64 add first cut at arithmetic mode
git-svn-id: http://skia.googlecode.com/svn/trunk@2849 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-10 19:36:56 +00:00
djsollen@google.com
59204b4813 Closing fd for mmap after mapping succeeds.
Review URL: http://codereview.appspot.com/5467058

git-svn-id: http://skia.googlecode.com/svn/trunk@2847 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-09 21:19:38 +00:00
bsalomon@google.com
07dd2bfd74 Add support for GL_ANGLE_texture_usage
Review URL: http://codereview.appspot.com/5478052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2845 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-09 19:40:36 +00:00
junov@chromium.org
b6e161937b Adding isOpaque method to skia shader classes
REVIEW=http://codereview.appspot.com/5451102/
TEST=unit test ShaderOpacity



git-svn-id: http://skia.googlecode.com/svn/trunk@2840 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-09 15:48:03 +00:00
reed@google.com
982cb875f0 add SK_OVERRIDE, move subclass impls of virtuals into .cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@2823 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-07 18:34:08 +00:00
reed@google.com
7716afbb97 add SK_OVERRIDEs
git-svn-id: http://skia.googlecode.com/svn/trunk@2820 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-07 15:17:50 +00:00
reed@google.com
75d939b549 add SK_OVERRIDEs, move impl of virtuals into .cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@2819 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-07 15:07:23 +00:00
reed@google.com
59ccef695c add more SK_OVERRIDEs
update dox for SkEmptyShader



git-svn-id: http://skia.googlecode.com/svn/trunk@2817 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-07 14:59:50 +00:00
reed@google.com
43d748446a don't specify default parameter values when overriding a method
git-svn-id: http://skia.googlecode.com/svn/trunk@2816 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-07 14:46:39 +00:00
reed@google.com
5ae777dcad rename sk_float_isNaN to sk_float_isnan to match related functions
add sk_float_isinf returning non-zero if the argument is +/- infinity



git-svn-id: http://skia.googlecode.com/svn/trunk@2813 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 20:18:05 +00:00
reed@google.com
1607863b60 rename hasValidCoordinates to isFinite (on SkRect) and reimplement for speed
git-svn-id: http://skia.googlecode.com/svn/trunk@2811 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 18:56:37 +00:00
bsalomon@google.com
9791291347 Prep for GrDrawState as a class Part 2
Review URL: http://codereview.appspot.com/5450105/



git-svn-id: http://skia.googlecode.com/svn/trunk@2810 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 16:30:36 +00:00
bsalomon@google.com
39ee0ffa72 Prep #1 for making GrDrawState a class
Review URL: http://codereview.appspot.com/5437138/




git-svn-id: http://skia.googlecode.com/svn/trunk@2808 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 15:32:52 +00:00
bsalomon@google.com
5bc34f04fe Remove fConfig/fFormat union in GrTextureDesc
Review URL: http://codereview.appspot.com/5448116/


git-svn-id: http://skia.googlecode.com/svn/trunk@2806 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-06 14:46:34 +00:00
reed@google.com
c2f8e9a500 make _isnan windows specific
git-svn-id: http://skia.googlecode.com/svn/trunk@2804 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-05 21:51:36 +00:00
reed@google.com
61873a59d7 add sk_float_isfinite to mask platform differences
git-svn-id: http://skia.googlecode.com/svn/trunk@2803 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-05 21:47:25 +00:00
senorblanco@chromium.org
ef843cdcd1 When a bitmap is texture-backed, change SkBitmap::copyTo() to do a deep
copy of the texels in VRAM rather than a readback and re-upload.  This
gives a 3-10X speedup on recursive canvas-to-canvas draws.

N.B.:  This introduces a new GM test, which will need new baselines.



git-svn-id: http://skia.googlecode.com/svn/trunk@2790 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-02 19:11:17 +00:00
reed@google.com
a89c77b5ca revert 2783 -- broke debug gm
git-svn-id: http://skia.googlecode.com/svn/trunk@2784 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 21:47:26 +00:00
tomhudson@google.com
f974a5d782 New function SkBlitter::blitAntiRect(); specifically accelerated for
supersampled antialiased clips.



git-svn-id: http://skia.googlecode.com/svn/trunk@2783 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 21:09:00 +00:00
tomhudson@google.com
05fffdcc91 Doxygen configuration file, documentation and minor cleanup on blitters.
git-svn-id: http://skia.googlecode.com/svn/trunk@2782 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 20:41:24 +00:00
djsollen@google.com
b44cd65a53 Fix Paint == comparison on Android.
The == operator was incorrect because of Androids use of
fGenerationID. This change moves the ID to the end of the
paint struct and omits it from the == comparison.
Review URL: http://codereview.appspot.com/5437098

git-svn-id: http://skia.googlecode.com/svn/trunk@2780 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 17:09:21 +00:00
bsalomon@google.com
eedef2564a Remove suffixes from SK_wGL macros
git-svn-id: http://skia.googlecode.com/svn/trunk@2778 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 16:50:24 +00:00
bsalomon@google.com
bd7c64150c Add SkWGLExtensionInterface for dealing with WGL extensions
Review URL: http://codereview.appspot.com/5447059

git-svn-id: http://skia.googlecode.com/svn/trunk@2777 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 16:34:28 +00:00
bsalomon@google.com
06711bd972 Move SkGLCanvas.h to obsolete, delete from gyp
Review URL: http://codereview.appspot.com/5451065/



git-svn-id: http://skia.googlecode.com/svn/trunk@2776 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-01 15:47:23 +00:00
reed@google.com
ea6805d222 add 2nd _ to __OpenBSD_
git-svn-id: http://skia.googlecode.com/svn/trunk@2775 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-30 20:44:25 +00:00
bsalomon@google.com
56d11e097b Add support for GL_ANGLE_pack_reverse_row_order
Review URL: http://codereview.appspot.com/5448063/


git-svn-id: http://skia.googlecode.com/svn/trunk@2774 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-30 19:59:08 +00:00
junov@chromium.org
d80a509eb7 replacing Gr* with Sk* in SkTArray.h
REVIEW=http://codereview.appspot.com/5447053/



git-svn-id: http://skia.googlecode.com/svn/trunk@2770 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-30 18:35:19 +00:00
reed@google.com
3138d36f98 Add more Unix platforms on which Skia for Chromium has been built,
this patch was tested on FreeBSD, Solaris, NetBSD, and DragonFly BSD.

http://codereview.chromium.org/8672011/



git-svn-id: http://skia.googlecode.com/svn/trunk@2764 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-30 15:27:30 +00:00
bsalomon@google.com
fb30951cd9 [GPU] tile when large bitmap pased drawBitmap and only a small fraction is used
Review URL: http://codereview.appspot.com/5450048/



git-svn-id: http://skia.googlecode.com/svn/trunk@2760 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-30 14:13:48 +00:00
reed@google.com
1271d78e8f add bytes() to SkTDArray, which returns the number of bytes in the array,
as opposed to count() which returns the number of elements.



git-svn-id: http://skia.googlecode.com/svn/trunk@2758 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-28 19:54:12 +00:00
tomhudson@google.com
01224d5d0a Unroll loops in SkBlurMask for speedup on Windows (benchmarks should see
15% on interpolated blurs, 5-10% on simple blurs).



git-svn-id: http://skia.googlecode.com/svn/trunk@2755 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-28 18:22:01 +00:00
reed@google.com
c9d9337790 define SK_OVERRIDE based on windows compiler, not windows platform (for mingw)
git-svn-id: http://skia.googlecode.com/svn/trunk@2748 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-28 15:25:12 +00:00
bsalomon@google.com
b1277c96b0 Fix mac debug asserts
git-svn-id: http://skia.googlecode.com/svn/trunk@2747 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 21:58:39 +00:00
bsalomon@google.com
6a2134ef13 Fix build
git-svn-id: http://skia.googlecode.com/svn/trunk@2746 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 21:33:11 +00:00
bsalomon@google.com
0442380545 Add hints for static analysis about when we intend to crash
Review URL: http://codereview.appspot.com/5433062



git-svn-id: http://skia.googlecode.com/svn/trunk@2745 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 21:25:35 +00:00
caryclark@google.com
4ee8aea2a7 fix mac warnings
http://codereview.appspot.com/5431053/

M    include/views/SkOSWindow_Mac.h
M    src/utils/mac/SkNSView.mm
M    src/utils/mac/SkNSView.h
M    src/utils/mac/SkOSWindow_Mac.mm
M    src/utils/mac/SkSampleNSView.h



git-svn-id: http://skia.googlecode.com/svn/trunk@2740 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 14:54:19 +00:00
mike@reedtribe.org
259210c376 add SK_OVERRIDE
git-svn-id: http://skia.googlecode.com/svn/trunk@2738 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-23 02:08:50 +00:00
reed@google.com
ffe49f5380 store 3 bits of luminance, but (for now) discretize that in fonthost::filterec
for backward compatibility



git-svn-id: http://skia.googlecode.com/svn/trunk@2732 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-22 19:42:41 +00:00
reed@google.com
1f6b4ae0f7 remove GetGammaFlag from SkFontHost
prep for retooling of gamma support



git-svn-id: http://skia.googlecode.com/svn/trunk@2730 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-22 14:20:55 +00:00
caryclark@google.com
54c782c968 add SetFlags for command line control
http://codereview.appspot.com/5416047/

M    include/core/SkGraphics.h
M    src/core/SkGraphics.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2727 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-21 20:42:14 +00:00
reed@google.com
f788feb3f1 use a define for the shift amount for the hinting bits
git-svn-id: http://skia.googlecode.com/svn/trunk@2726 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-21 19:46:00 +00:00
reed@google.com
b6bb5cb7c2 reorder bits and remove obsolete kForceAA experimental bit
git-svn-id: http://skia.googlecode.com/svn/trunk@2725 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-21 19:32:29 +00:00
reed@google.com
8426058dee ensure we never change the text_encoding of the master paint, since it is used
to interpret the text/length parameters in draw[Pos]Text.



git-svn-id: http://skia.googlecode.com/svn/trunk@2724 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-21 16:42:10 +00:00
bsalomon@google.com
8ef3fd0ca6 Add support for GL_CHROMIUM_flipy
Review URL: http://codereview.appspot.com/5413051/


git-svn-id: http://skia.googlecode.com/svn/trunk@2723 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-21 15:53:13 +00:00
bsalomon@google.com
bc4b654af8 assert that resources used with ctx are owned by the ctx
Review URL: http://codereview.appspot.com/5398042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2720 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-19 13:56:11 +00:00
bsalomon@google.com
a85449dac1 Resubmit 2717 w/ fix workaround OS X GL bug.
git-svn-id: http://skia.googlecode.com/svn/trunk@2719 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-19 02:36:05 +00:00
bsalomon@google.com
484be2bafd Revert 2717
git-svn-id: http://skia.googlecode.com/svn/trunk@2718 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-18 21:07:03 +00:00
bsalomon@google.com
5c56e3441c Recommit r2714 with clip fix
git-svn-id: http://skia.googlecode.com/svn/trunk@2717 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-18 19:57:50 +00:00
bsalomon@google.com
e1d3127ed4 Revert 2714 for debugging of test failure
git-svn-id: http://skia.googlecode.com/svn/trunk@2715 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-18 18:23:59 +00:00
bsalomon@google.com
598a1ff72a Write direct to RT/Tex when possible, use BGRA rather than RGBA intermediate texture on ANGLE
Review URL: http://codereview.appspot.com/5417046/




git-svn-id: http://skia.googlecode.com/svn/trunk@2714 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-18 18:15:42 +00:00
reed@google.com
9998c66930 remove all references to SkGlobals (obsolete)
git-svn-id: http://skia.googlecode.com/svn/trunk@2713 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-17 22:09:47 +00:00
reed@google.com
d54c85731e remove obsolete SK_USE_RUNTIME_GLOBALS
git-svn-id: http://skia.googlecode.com/svn/trunk@2711 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-17 21:35:41 +00:00
mike@reedtribe.org
e303fcf68d add SkXfermode::IsMode() and use that in SkDevice
git-svn-id: http://skia.googlecode.com/svn/trunk@2703 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-17 02:16:43 +00:00
bsalomon@google.com
6f3795105b Make all pixel ops go thru ctx so we can correctly flush. Unify two texture upload code paths.
Review URL: http://codereview.appspot.com/5373108/



git-svn-id: http://skia.googlecode.com/svn/trunk@2701 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-16 20:36:03 +00:00
senorblanco@chromium.org
54e01b2ab9 This change makes SkImageFilter and SkBlurImageFilter flattenable/unflattenable.
The imageblur test also needed to stop calling getDeviceSize(), since it was
 returning 99999x99999 for the  SkPicture case.



git-svn-id: http://skia.googlecode.com/svn/trunk@2699 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-16 18:20:47 +00:00
bungeman@google.com
39698b1bd7 Add paging support for handle based typefaces.
http://codereview.appspot.com/5379043/
http://codereview.appspot.com/5364052/


git-svn-id: http://skia.googlecode.com/svn/trunk@2693 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-15 22:26:41 +00:00
bsalomon@google.com
f7b5c1ebfd Add getContext to GrResouce
http://codereview.appspot.com/5373106/



git-svn-id: http://skia.googlecode.com/svn/trunk@2688 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-15 19:42:07 +00:00
bsalomon@google.com
9962108c40 Remove allocated size vs content size in textures
Review URL: http://codereview.appspot.com/5373100/



git-svn-id: http://skia.googlecode.com/svn/trunk@2687 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-15 16:47:16 +00:00
bsalomon@google.com
f64b1a27f7 Remove GL functions only used in fixed pipe
Review URL: http://codereview.appspot.com/5374084/



git-svn-id: http://skia.googlecode.com/svn/trunk@2681 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-14 20:17:05 +00:00
bsalomon@google.com
1dcf506a1a Remove GrGpuGLFixed subclass and ES1 support
Review URL: http://codereview.appspot.com/5376094/


git-svn-id: http://skia.googlecode.com/svn/trunk@2678 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-14 19:29:53 +00:00
reed@google.com
f03bb566e2 land http://codereview.appspot.com/5244058/ - add matrix to SkView
git-svn-id: http://skia.googlecode.com/svn/trunk@2670 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-11 21:42:12 +00:00
bsalomon@google.com
74b98715a3 Do writepixels alpha-premul using gpu
Review URL: http://codereview.appspot.com/5373064/



git-svn-id: http://skia.googlecode.com/svn/trunk@2668 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-11 19:46:16 +00:00
bsalomon@google.com
ae0fb058dd Add default param to SkDevice::writePixels b/c WK is relying on old signature. (Function will be made protected once WK calls the Canvas version)
git-svn-id: http://skia.googlecode.com/svn/trunk@2666 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 22:34:56 +00:00
bsalomon@google.com
0ba52fcf93 Filter out draws to non-PMA configs that won't blend correctly
Review URL: http://codereview.appspot.com/5376059/


git-svn-id: http://skia.googlecode.com/svn/trunk@2665 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 22:16:06 +00:00
bsalomon@google.com
d58a1cd00b Add config8888 support to writePixels
Review URL: http://codereview.appspot.com/5374052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2662 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 20:57:43 +00:00
reed@google.com
44da42e92f have paint's measure calls respect vertical
git-svn-id: http://skia.googlecode.com/svn/trunk@2660 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 20:04:47 +00:00
bsalomon@google.com
e7160bff74 Fix convert to bool warning in VS
http://codereview.appspot.com/5371051/



git-svn-id: http://skia.googlecode.com/svn/trunk@2658 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 15:28:16 +00:00
reed@google.com
830a23e39b add vertical-text bit to paint (not supported yet)
check-point for using freetype on mac (not enabled yet)



git-svn-id: http://skia.googlecode.com/svn/trunk@2657 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 15:20:49 +00:00
bsalomon@google.com
7107fa789a Add support for GL_EXT_unpack_subimage
Review URL: http://codereview.appspot.com/5359048/



git-svn-id: http://skia.googlecode.com/svn/trunk@2654 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 14:54:14 +00:00
tomhudson@google.com
62b0968785 Speed up GrDrawState handling.
Compact GrDrawState and nested structs; dynamically only copy and compare
the fields actually active on the structs in question.
Yields 10-20% speedup of text benchmarks in GPU configuration.

Could probably get additional marginal speedup by ignoring unused
kernel fields.
Has some fragile constructs: pointer math on members to compute
sizes of portions of structs.
Removes fields necessary for GrTesselatedPathRenderer.



git-svn-id: http://skia.googlecode.com/svn/trunk@2644 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-09 16:39:17 +00:00
senorblanco@chromium.org
60014ca387 Implement Gaussian blurs for images. The caller creates an an
SkBlurImageFilter, sets it on an SkPaint, passes that paint to saveLayer(),
draws the primitives which are to be blurred, then calls restore(), which
applies the blur.  The blurs have separate sizes in the horizontal and vertical
direction.  This feature is GPU-only for now.

NB:  Due to the clipping change, there are slight pixel differences on the
blurs_gpu and shadows_gpu tests, so those will require rebaselining on all
platforms, as will some of the WebKit layout tests (TBD).


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



git-svn-id: http://skia.googlecode.com/svn/trunk@2643 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-09 16:05:58 +00:00
reed@google.com
073c90769e use new PurgeFontCache() api
git-svn-id: http://skia.googlecode.com/svn/trunk@2633 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 20:03:48 +00:00
bsalomon@google.com
0a97be216d When GL_RGBA readPixels are slow do swizzle using a draw then readPixels with GL_BGRA
Review URL: http://codereview.appspot.com/5339051/


git-svn-id: http://skia.googlecode.com/svn/trunk@2631 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 19:20:57 +00:00
djsollen@google.com
56c69773ae Update files to use SK_BUILD_FOR_ANDROID.
This CL also removes any unecessary references to
the ANDROID definition.
Review URL: http://codereview.appspot.com/5354049

git-svn-id: http://skia.googlecode.com/svn/trunk@2629 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 19:00:26 +00:00
reed@google.com
6245ab718d fix prev. change for __OpenBSD__
git-svn-id: http://skia.googlecode.com/svn/trunk@2628 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 18:21:20 +00:00
bsalomon@google.com
36645d22f8 Remove old and GL-specific defines from GrUserConfig.h comments
git-svn-id: http://skia.googlecode.com/svn/trunk@2626 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 15:52:21 +00:00
reed@google.com
77407ca019 add api to SkGraphics to get/set font cache limit
add SK_DEFAULT_FONT_CACHE_LIMIT to SkUserConfig, to override our default value



git-svn-id: http://skia.googlecode.com/svn/trunk@2621 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 13:48:32 +00:00
bsalomon@google.com
c436499622 [GPU] Add explicit byte order and PM vs. UPM 8888 configs
Review URL: http://codereview.appspot.com/5347042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2618 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 15:54:49 +00:00
bsalomon@google.com
85b505bedc Add support for GL_ARB_texture_swizzle
Review URL: http://codereview.appspot.com/5347042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2615 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 14:56:51 +00:00
bsalomon@google.com
e269f210bd Recommit r2611 with fix for gm
git-svn-id: http://skia.googlecode.com/svn/trunk@2614 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 13:29:52 +00:00
bsalomon@google.com
b87d2b5c2a Revert r2611 until windows gm can be debugged
git-svn-id: http://skia.googlecode.com/svn/trunk@2612 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 01:58:39 +00:00
bsalomon@google.com
6d9adaec78 Add replacement APIs for createPlatformSurface: createPlatformTexture and createPlatformRenderTarget
git-svn-id: http://skia.googlecode.com/svn/trunk@2611 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-07 01:37:22 +00:00
bsalomon@google.com
64c4fe4113 More removal of texture fUploadByteCount and rename fFormat to fConfig for consistency.
git-svn-id: http://skia.googlecode.com/svn/trunk@2608 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-05 14:51:01 +00:00
bsalomon@google.com
6850eab42b Override 32BPP format in SkCanvas::readPixels
Review URL: http://codereview.appspot.com/5330073/



git-svn-id: http://skia.googlecode.com/svn/trunk@2600 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 20:29:47 +00:00
reed@google.com
15356a68b2 experimental -- add SkImageFilter to paint. Not called yet.
git-svn-id: http://skia.googlecode.com/svn/trunk@2599 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 19:29:08 +00:00
djsollen@google.com
58629291bc Adding support to trunk for building Skia using the Android NDK.
This CL depends on a subsequent CL to add the appropriate NDK
toolchain and system sources to the skia repo.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@2592 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 13:08:29 +00:00
bsalomon@google.com
daba14b7d4 Line-endings only change (some windows line-endings snuck in)
git-svn-id: http://skia.googlecode.com/svn/trunk@2588 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 20:10:48 +00:00
bsalomon@google.com
910267dde2 Make SkDevice::onReadPixels take a const& rather than const*
git-svn-id: http://skia.googlecode.com/svn/trunk@2587 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 20:06:25 +00:00
bsalomon@google.com
c69809745e Recommit r2584 with gpu pass of the new ReadPixels test disabled in fixed pt (gpu code doesn't work in general in fixed pt).
git-svn-id: http://skia.googlecode.com/svn/trunk@2586 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:57:21 +00:00
bsalomon@google.com
ace7bd5623 Revert r2584 (new test fails in fixed pt builds)
git-svn-id: http://skia.googlecode.com/svn/trunk@2585 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:39:51 +00:00
bsalomon@google.com
1a8ddf0a35 Changes the SkCanvas::readPixels API. Allows caller to read into prealloced bitmap pixels. Changes how clipping to device bounds is handled.
Review URL: http://codereview.appspot.com/5307077/



git-svn-id: http://skia.googlecode.com/svn/trunk@2584 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:34:16 +00:00
reed@google.com
cad8176281 remove unused copyPixelsFrom ... (copyPixelsTo is next on the chopping block)
git-svn-id: http://skia.googlecode.com/svn/trunk@2579 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-01 15:53:28 +00:00
reed@google.com
210ce003a5 add getDeviceSize() so callers won't need to call getDevice() so much
... we hope to make devices private in the future



git-svn-id: http://skia.googlecode.com/svn/trunk@2577 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-01 14:24:23 +00:00
bsalomon@google.com
72e49b8982 warning fixes
Review URL http://codereview.appspot.com/5328050/




git-svn-id: http://skia.googlecode.com/svn/trunk@2548 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-27 21:47:03 +00:00
bsalomon@google.com
74913722bf Add NULL GL context implementation. Use in bench (-nullgl) and SampleApp (backspace key)
Review URL: http://codereview.appspot.com/5303080/


git-svn-id: http://skia.googlecode.com/svn/trunk@2545 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-27 20:44:19 +00:00
bsalomon@google.com
289533ada6 Don't use GrDrawTarget's AA state bit to convey whether to do custom-aa
Review URL: http://codereview.appspot.com/5314061/



git-svn-id: http://skia.googlecode.com/svn/trunk@2539 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-27 12:34:25 +00:00
bsalomon@google.com
57f5d9854b Recommit r2510 now that mac build bot issue has been fixed.
git-svn-id: http://skia.googlecode.com/svn/trunk@2521 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-24 21:17:53 +00:00
reed@google.com
67ba5fa328 fix scalar=fixed by implementing SkRegion form of AntiFillRect
git-svn-id: http://skia.googlecode.com/svn/trunk@2516 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-24 12:56:20 +00:00
reed@google.com
045e62d715 enable soft clipping (yikes)
git-svn-id: http://skia.googlecode.com/svn/trunk@2515 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-24 12:19:46 +00:00
reed@google.com
f0f617a502 add SkRect::intersect(a, b), matching what was already available in SkIRect
git-svn-id: http://skia.googlecode.com/svn/trunk@2513 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-21 14:05:06 +00:00
bsalomon@google.com
d92780b558 Temporary revert of r2510. The test that it introduced fails on the Mac build bots. I suspect there is something wrong with the Mac bot machine's GL that is preventing context creation from succeeding. The OpenGL Driver monitor on the machine only shows a software rasterizer. aglChoosePixelFormat seems to fail regardless of input. It may just need a reboot. I'll investigate it more on Monday.
git-svn-id: http://skia.googlecode.com/svn/trunk@2511 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-20 21:54:46 +00:00
bsalomon@google.com
d47fafe057 Add test that validates GrGLInterfaces
Review URL: http://codereview.appspot.com/5304048/



git-svn-id: http://skia.googlecode.com/svn/trunk@2510 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-20 21:09:45 +00:00
bsalomon@google.com
ffa11bbbed Move a bunch of headers from include/gpu to src/gpu. Delete some unused files.
Review URL: http://codereview.appspot.com/5304047/



git-svn-id: http://skia.googlecode.com/svn/trunk@2506 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-20 13:43:13 +00:00
bsalomon@google.com
373a6635b7 Virtualize SkGLContext with subclasses SkNativeGLContext and SkMesaGLContext, allow both in gm
Review URL: http://codereview.appspot.com/5307045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2499 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 20:43:20 +00:00
reed@google.com
de916c8ac8 add SK_API to our malloc functions
git-svn-id: http://skia.googlecode.com/svn/trunk@2497 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-19 19:50:48 +00:00
reed@google.com
7a17e3a34f oops, init fSize to 0 before calling resize
git-svn-id: http://skia.googlecode.com/svn/trunk@2493 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 18:58:06 +00:00
reed@google.com
1c401d8f42 add OnShrink options to SkAutoMalloc
git-svn-id: http://skia.googlecode.com/svn/trunk@2492 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 18:52:03 +00:00
reed@google.com
3ab4195445 remove unused optional param to SkAutoMalloc
git-svn-id: http://skia.googlecode.com/svn/trunk@2491 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 18:32:46 +00:00
reed@google.com
86b49d2ef3 move SkAutoMaskFreeImage from SkMaskFilter.h to SkMask.h
git-svn-id: http://skia.googlecode.com/svn/trunk@2489 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 17:35:26 +00:00
reed@google.com
f52e55543e (re)add SkMask::getAddr() which now checks its pixel-size at runtime.
git-svn-id: http://skia.googlecode.com/svn/trunk@2488 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 17:29:44 +00:00
reed@google.com
7989186dab rename SkMask::getAddr to getAddr8, to match the specificity of the others
e.g. getAddr1, getAddrLCD16, etc.

This is to make way for a real getAddr that will compute its pixel-size at runtime



git-svn-id: http://skia.googlecode.com/svn/trunk@2487 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 15:44:57 +00:00
reed@google.com
edb606cb99 move LCD blits into opts, so they can have assembly versions
git-svn-id: http://skia.googlecode.com/svn/trunk@2484 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-18 13:56:50 +00:00
reed@google.com
ec4400824c commit http://codereview.chromium.org/8274009/
git-svn-id: http://skia.googlecode.com/svn/trunk@2479 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-13 19:16:20 +00:00
reed@google.com
da96563e31 add FillIRect variant that takes a rasterclip
git-svn-id: http://skia.googlecode.com/svn/trunk@2478 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-13 15:29:01 +00:00
bsalomon@google.com
e295313f01 move utils/SkEGLContext to gpu/SkGLContext, some gpu.gyp cleanup, set eol style LF on all gpu files
Review URL: http://codereview.appspot.com/5242056/



git-svn-id: http://skia.googlecode.com/svn/trunk@2474 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-13 13:33:08 +00:00
reed@google.com
1ba7137fc0 add rasterclip entrypoints for scan converting paths
git-svn-id: http://skia.googlecode.com/svn/trunk@2473 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-12 20:42:05 +00:00
bsalomon@google.com
d38f137e9b Move gpu/include/* to include/gpu and gpu/src/* to src/gpu
Review URL: http://codereview.appspot.com/5250070/



git-svn-id: http://skia.googlecode.com/svn/trunk@2471 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-12 19:53:16 +00:00
reed@google.com
0017708a5b use SkRasterClip inside canvas (check-point for soft clipping)
git-svn-id: http://skia.googlecode.com/svn/trunk@2462 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-12 14:34:30 +00:00
reed@google.com
58af9a6470 separate SkBlitMask decl into its own header
git-svn-id: http://skia.googlecode.com/svn/trunk@2461 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-12 13:43:52 +00:00
reed@google.com
071eef918d add bool argument to canvas' clipRect and clipPath for antialiasing
(currently ignored)



git-svn-id: http://skia.googlecode.com/svn/trunk@2459 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-12 11:52:53 +00:00
reed@google.com
294dd7b3d7 change getLastPt to return a bool
git-svn-id: http://skia.googlecode.com/svn/trunk@2453 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-11 11:58:32 +00:00
reed@google.com
5e2457ef2e add getTotalClipBounds() as a partial replacement for getTotalClip. This can be
faster than getTotalClip, since it doesn't need to compute the actual complex
region for the answer.



git-svn-id: http://skia.googlecode.com/svn/trunk@2452 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-10 21:24:37 +00:00
bungeman@google.com
b29c883fb4 Add xps device to skia.
http://codereview.appspot.com/5076041/


git-svn-id: http://skia.googlecode.com/svn/trunk@2437 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-10 13:19:10 +00:00
bungeman@google.com
07faed1102 Setting perspective in fixed point.
http://codereview.appspot.com/5088043/


git-svn-id: http://skia.googlecode.com/svn/trunk@2435 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-07 21:55:56 +00:00
bungeman@google.com
cf385232c4 Don't let templates live in shadows.
git-svn-id: http://skia.googlecode.com/svn/trunk@2434 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-07 21:10:39 +00:00
bungeman@google.com
a12cc7fda0 Separate code paths of SkTArray at compile time.
http://codereview.appspot.com/5243043/


git-svn-id: http://skia.googlecode.com/svn/trunk@2433 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-07 20:54:15 +00:00
reed@google.com
0abb499daf add SkAlphaBlend255
git-svn-id: http://skia.googlecode.com/svn/trunk@2426 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-06 20:04:36 +00:00
reed@google.com
644fc767bc remove mention of obsolete symbol SK_SUPPORT_888_TEXT
git-svn-id: http://skia.googlecode.com/svn/trunk@2421 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-06 13:24:52 +00:00
reed@google.com
2d4297cfa4 use SK_OVERRIDE
git-svn-id: http://skia.googlecode.com/svn/trunk@2420 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-06 13:14:12 +00:00
reed@google.com
632e1a281b move call to nothingToDraw into our iterator, so it sees the results of filters and loopers
before making its decision.



git-svn-id: http://skia.googlecode.com/svn/trunk@2417 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-06 12:37:00 +00:00
bsalomon@google.com
fa6ac938e6 Fixup rendering of empty paths (including inverted fills)
Add GM and Sample that draw empty paths with various styles and fills

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



git-svn-id: http://skia.googlecode.com/svn/trunk@2414 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-05 19:57:55 +00:00
bungeman@google.com
02f5584185 Change SkAutoMaskImage so that we're less likely to write leaky code.
http://codereview.appspot.com/5180047/


git-svn-id: http://skia.googlecode.com/svn/trunk@2409 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-04 21:25:00 +00:00
bungeman@google.com
18ac1ba3d1 Make asBlur method const.
http://codereview.appspot.com/5190041/

This change makes asBlur const consistent with SkShader::asAGradient and asABitmap.


git-svn-id: http://skia.googlecode.com/svn/trunk@2404 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-04 15:11:38 +00:00
reed@google.com
dcd0f3a980 quick-rejects based on xfermode, using SkPaint::nothingToDraw()
git-svn-id: http://skia.googlecode.com/svn/trunk@2402 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-04 01:17:15 +00:00
reed@google.com
2c508f2dc2 add force-rle parameter to help with aaclip testing
git-svn-id: http://skia.googlecode.com/svn/trunk@2401 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 21:15:46 +00:00
reed@google.com
c74ab18130 add accessors to irect
git-svn-id: http://skia.googlecode.com/svn/trunk@2399 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 20:27:14 +00:00
vandebo@chromium.org
5676b4a23a Revert r2122, r2116, r2108 Now that Chrome's PlatformDevice doesn't inherit from SkDevice.
Review URL: http://codereview.appspot.com/5178045

git-svn-id: http://skia.googlecode.com/svn/trunk@2396 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 19:03:48 +00:00
tomhudson@google.com
1341304449 Use SK_OVERRIDE to add a little extra robustness against name changes.
git-svn-id: http://skia.googlecode.com/svn/trunk@2395 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-10-03 16:01:10 +00:00
reed@google.com
3253898f72 need these for the forceaa change
git-svn-id: http://skia.googlecode.com/svn/trunk@2391 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-30 20:57:05 +00:00
bsalomon@google.com
92669014aa Add SkSTArray, hide stack storage cons in SkTArray, unify SkTArray init logic
Review URL: http://codereview.appspot.com/5127044/



git-svn-id: http://skia.googlecode.com/svn/trunk@2342 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-27 19:10:05 +00:00
tomhudson@google.com
c12e1b138e Replace SkMath.h includes as required for fixed point.
git-svn-id: http://skia.googlecode.com/svn/trunk@2341 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-27 18:03:23 +00:00
tomhudson@google.com
889bd8bd7f Make SkMath.h less visible in public header files.
git-svn-id: http://skia.googlecode.com/svn/trunk@2340 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-27 17:38:17 +00:00
reed@google.com
894aa9a7af experimental
git-svn-id: http://skia.googlecode.com/svn/trunk@2320 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-23 14:49:49 +00:00
reed@google.com
10296ccb6a add segment types query to SkPath (i.e. does it have any quads)
git-svn-id: http://skia.googlecode.com/svn/trunk@2292 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-21 12:29:05 +00:00
bsalomon@google.com
4fa6694c58 Resubmit 2289 with fix for glsl version
git-svn-id: http://skia.googlecode.com/svn/trunk@2291 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-20 19:06:12 +00:00
bsalomon@google.com
1fac5ca505 Revert 2289. GLSL version detection not robust enough. May think we don't have GLSL 1.50 support based on OpenGL version. We have to look at the available extensions, not just GL version.
git-svn-id: http://skia.googlecode.com/svn/trunk@2290 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-20 17:57:44 +00:00
bsalomon@google.com
98874cdda0 [GPU] Use new Var type for inputs/outputs of FS and VS
Review URL: http://codereview.appspot.com/5056048/



git-svn-id: http://skia.googlecode.com/svn/trunk@2289 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-20 17:33:24 +00:00
bungeman@google.com
2e2f3f58b5 Update SkCoInitialize to better match spec.
http://codereview.appspot.com/5036044/


git-svn-id: http://skia.googlecode.com/svn/trunk@2274 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-09-16 15:37:20 +00:00