thakis@chromium.org
368b419200
Mark SkColorFilter and SkCreateCGImageRefWithColorspace as SK_API.
...
Required for the chromium/mac components build.
BUG=chromium:90078
Review URL: https://codereview.appspot.com/5642073/
git-svn-id: http://skia.googlecode.com/svn/trunk@3160 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-09 22:09:41 +00:00
senorblanco@chromium.org
dfad3832cb
Add SK_API to SkPixelRef and TextureCacheEntry.
...
Review URL: http://codereview.appspot.com/5649044/
git-svn-id: http://skia.googlecode.com/svn/trunk@3158 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-09 16:07:08 +00:00
bsalomon@google.com
6e85937606
Make SkGLContext's FBO creation more robust (allows test apps to run on Intel GPUs)
...
Review URL: http://codereview.appspot.com/5647059/
git-svn-id: http://skia.googlecode.com/svn/trunk@3157 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-09 15:25:13 +00:00
senorblanco@chromium.org
297676545d
Export the texture pixelref classes via SK_API. This is necessary to reference
...
them from another DLL in the windows shared build.
Review URL: http://codereview.appspot.com/5646056/
git-svn-id: http://skia.googlecode.com/svn/trunk@3155 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-08 20:27:16 +00:00
vandebo@chromium.org
f724c4df1c
Add SK_API to SkTableColorFilter
...
Patch from dmazzoni@chromium.org original CL: http://codereview.appspot.com/5645055/
Review URL: https://codereview.appspot.com/5642060
git-svn-id: http://skia.googlecode.com/svn/trunk@3153 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-08 17:01:54 +00:00
reed@google.com
e7a0a16599
store luminance in a new field
...
Review URL: https://codereview.appspot.com/5644047
git-svn-id: http://skia.googlecode.com/svn/trunk@3149 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-07 21:25:33 +00:00
junov@chromium.org
1f9767c03b
Fixing backing store access in SkDeferredCanvas.
...
Chromium CL required for rolling skia DEPS past this change is posted here: https://chromiumcodereview.appspot.com/9341003/
BUG=http://code.google.com/p/skia/issues/detail?id=475
REVIEW=http://codereview.appspot.com/5626047/
TEST=DeferredCanvas unit test
git-svn-id: http://skia.googlecode.com/svn/trunk@3147 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-07 16:27:57 +00:00
bsalomon@google.com
4bcb0c6e03
Reland 3144 with assertion fix.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3146 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-07 16:06:47 +00:00
bsalomon@google.com
0439e56996
revert 3144
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3145 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-07 15:57:36 +00:00
bsalomon@google.com
aa67735579
Allow chrome to limit the number of FBO status checks
...
Review URL: https://codereview.appspot.com/5635052
git-svn-id: http://skia.googlecode.com/svn/trunk@3144 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-07 15:44:39 +00:00
junov@chromium.org
2c23708e44
Removing some dead code in SkDeferredCanvas
...
REVIEW=http://codereview.appspot.com/5620062/
git-svn-id: http://skia.googlecode.com/svn/trunk@3140 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-03 18:32:38 +00:00
bungeman@google.com
f8d1aee252
Open type table definitions.
...
http://codereview.appspot.com/5577064/
git-svn-id: http://skia.googlecode.com/svn/trunk@3131 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-02 19:15:21 +00:00
bsalomon@google.com
75f9f25d8b
Add code path for Gr client to resolve an Gr-created MSAA render target.
...
Review URL: http://codereview.appspot.com/5580049/
git-svn-id: http://skia.googlecode.com/svn/trunk@3112 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-31 13:35:56 +00:00
bsalomon@google.com
78d6cf9f43
Remove GrAALevel enum, use explicit sample count
...
Review URL: http://codereview.appspot.com/5600045/
git-svn-id: http://skia.googlecode.com/svn/trunk@3106 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-30 18:09:31 +00:00
reed@google.com
9efd9a048a
extend fastbounds impls to include maskfilters and drawloopers. This allows
...
us to perform quick-rejects when drawing objects with shadows (esp. text).
WebKit draws shadows w/ a looper (fg and shadow) and a maskfilter on the
shadow layer.
git-svn-id: http://skia.googlecode.com/svn/trunk@3103 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-30 15:41:43 +00:00
junov@chromium.org
bf6c1e4aff
Adding a flush method to SkCanvas
...
BUG=http://code.google.com/p/skia/issues/detail?id=467
REVIEW=http://codereview.appspot.com/5600044/
TEST=gm uses the new code path on all its test cases
git-svn-id: http://skia.googlecode.com/svn/trunk@3102 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-30 14:53:22 +00:00
bsalomon@google.com
7d72c45a9e
code cleanup for single_pass_path() and remove enum GrConvexHint
...
Review URL: code cleanup for single_pass_path() and remove enum GrConvexHint
git-svn-id: http://skia.googlecode.com/svn/trunk@3099 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-30 14:02:44 +00:00
vandebo@chromium.org
74b4619616
Formatting cleanup: remove extra whitespace
...
Change by arthurhsu@chromium.org , original CL: http://codereview.appspot.com/5587049/
Review URL: https://codereview.appspot.com/5594043
git-svn-id: http://skia.googlecode.com/svn/trunk@3098 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-28 01:45:11 +00:00
twiz@google.com
05e70247c3
Expose functionality to purge the GPU texture cache while running SampleApp.
...
Press 'p' to purge the cache. A summary of the number of bytes of video memory
released is output to the command prompt.
Review URL: https://codereview.appspot.com/5587045
git-svn-id: http://skia.googlecode.com/svn/trunk@3097 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-27 19:12:00 +00:00
bsalomon@google.com
b1caea00d8
Rip out GrPlatformSurface (has been deprecated for some time, use GrPlatformTexture or GrPlatformRenderTarget instead)
...
Review URL: http://codereview.appspot.com/5576052/
git-svn-id: http://skia.googlecode.com/svn/trunk@3094 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-27 00:47:24 +00:00
digit@google.com
1771cbf43d
posix: Avoid static initializers in static/global mutexes
...
This patch removes static initializers related to static and
global mutexes from the final library's machine code when
building on a pthread-capable system.
We use PTHREAD_MUTEX_INITIALIZER to perform POD-style
initialization. You need a line like the following to declare
a global mutex with it:
SkBaseMutex gMutex = { PTHREAD_MUTEX_INITIALIZER };
We introduce the SK_DECLARE_STATIC_MUTEX and SK_DECLARE_GLOBAL_MUTEX
macros to be able to declare static/global mutexes in the source tree
uniformly.
SkMutex is now defined as a sub-class of SkBaseMutex, with standard
construction/destruction semantics. This is useful if the mutex
object is a member of another C++ class, or allocated dynamically.
We also modify a few places to refer to SkBaseMutex instead of a
SkMutex, where it makes sense. Generally speaking, client code
should hold and use pointers to SkBaseMutex whenever they can
now.
We defined a new built-time macro named SK_USE_POSIX_THREADS
to indicate that we're using a pthread-based SkThread.h
interface. The macro will also be used in future patches
to implement other helper thread synchronization classes.
Finally, we inline the acquire() and release() functions in the
case of Posix to improve performance a bit.
Running: 'bench -repeat 10 -match mutex' on an Android device or
a 2.4GHz Xeon Linux desktop shows the following improvements:
Before After
Galaxy Nexus 1.64 1.45
Nexus S 1.47 1.16
Xoom 1.86 1.66
Xeon 0.36 0.31
This removes 5 static mutex initializers from the library
Review URL: https://codereview.appspot.com/5501066
git-svn-id: http://skia.googlecode.com/svn/trunk@3091 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-26 21:26:40 +00:00
reed@google.com
8bb3ba151e
need to include SkColorFilter.h since we reference some methods on it
...
in our inline functions.
git-svn-id: http://skia.googlecode.com/svn/trunk@3089 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-26 04:13:31 +00:00
reed@google.com
6d428d3e6e
Make SkRegion::operator== a member function, rather than a privately-declared
...
friend. Without this, calling code has access to operator==, but can fail to
link because the implementation is assumed to have static linkage.
http://codereview.appspot.com/5577047/
git-svn-id: http://skia.googlecode.com/svn/trunk@3088 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-25 21:53:53 +00:00
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