senorblanco@chromium.org
254eae2b04
Change SkLightingImageFilter to derive from SkSingleInputImageFilter, so that it can participate in filter DAGs.
...
No tests yet.
Review URL: https://codereview.appspot.com/6620055
git-svn-id: http://skia.googlecode.com/svn/trunk@5832 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 17:38:00 +00:00
bsalomon@google.com
88becf450f
Rename GrPaint fields/enums/members texture->color mask->coverage.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6615046
git-svn-id: http://skia.googlecode.com/svn/trunk@5827 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 14:54:42 +00:00
bsalomon@google.com
af84e748ce
Move setPaint from GrContext to GrDrawState.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6624045
git-svn-id: http://skia.googlecode.com/svn/trunk@5823 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 13:23:24 +00:00
scroggo@google.com
5a7c6be72b
Add the ability to provide function pointers to SkPicture serialization
...
and deserialization for encoding and decoding bitmaps.
Remove kForceFlattenBitmapPixels_Flag, which is no longer used.
When an SkOrderedReadBuffer needs to read a bitmap, if it does not
have an image decoder, use a dummy bitmap.
In GM, add a tolerance option for color differences, used when
testing picture serialization, so it can assume two images are the
same even though PNG encoding/decoding may have resulted in small
differences.
Create dummy implementations for SkImageDecoder and SkImageEncoder
functions in SkImageDecoder_empty so that a project that does not
want to include the images project it can still build.
Allow ports to build without images project.
In Mac's image encoder, copy 4444 to 8888 before encoding.
Add SkWriter32::reservePad, to provide a pointer to write non 4 byte
aligned data, padded with zeroes.
In bench_ and render_ pictures, pass decode function to SkPicture
creation from a stream.
BUG=https://code.google.com/p/skia/issues/detail?id=842
Review URL: https://codereview.appspot.com/6551071
git-svn-id: http://skia.googlecode.com/svn/trunk@5818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 21:46:08 +00:00
scroggo@google.com
94bc60f986
Lock gFTMutex when modifying FT globals.
...
This prevents a crash when running bench_pictures with multiple threads.
Also remove an unused function and fix a typo in SkFontHost.
Review URL: https://codereview.appspot.com/6625043
git-svn-id: http://skia.googlecode.com/svn/trunk@5816 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 20:45:06 +00:00
bsalomon@google.com
7823d9a07f
Disable SK_DEBUG_PATH_REF in debug builds.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6602056
git-svn-id: http://skia.googlecode.com/svn/trunk@5810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 17:55:30 +00:00
senorblanco@chromium.org
3bc16c8bc1
Implement GPU path for matrix convolution. Note that when not convolving alpha,
...
the premultiplying is done less efficiently than in the raster path: it's
done on each texture access, rather than as a pre-processing pass. This was
so I could do the filter as a single custom stage; will try the optimization
separately.
This implementation gives a ~30X speedup on the GPU results for the
matrixconvolution bench (~10X due to the GPU, and ~3X due to texture
uploads/readback removal).
Note: this changes the matrixconvolution for the software path as well, so
it will likely break the bots until that test is rebaselined.
Review URL: https://codereview.appspot.com/6585069/
git-svn-id: http://skia.googlecode.com/svn/trunk@5809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 17:18:20 +00:00
bsalomon@google.com
e6e62d1de9
Make numTextures() be non-virtual on GrCustomStage.
...
R=tomhudson@google.com ,robertphillips@google.com,senorblanco@chromium.org
Review URL: https://codereview.appspot.com/6586081
git-svn-id: http://skia.googlecode.com/svn/trunk@5805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 14:38:48 +00:00
skia.committer@gmail.com
7cc7f49479
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 02:01:34 +00:00
bsalomon@google.com
ae09f2dc3f
Adds extra debugging to SkPathRef that can optionally be turned on in a release build.
...
This is pretty hacky but hopefully will be quite short-lived.
Review URL: https://codereview.appspot.com/6584074
git-svn-id: http://skia.googlecode.com/svn/trunk@5793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 19:57:01 +00:00
bsalomon@google.com
1dfe88e00a
Revert r5557 (which itself was a revert of r5433). Relands SkPathRef. Will follow with change for extra debug checks to attempt to ferret out http://www.crbug.com/148637 .
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:46:20 +00:00
bungeman@google.com
4f45258d45
Delete SkStream_Win.h as it appears to never have been used.
...
https://code.google.com/p/skia/issues/detail?id=281
git-svn-id: http://skia.googlecode.com/svn/trunk@5781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 04:46:10 +00:00
reed@google.com
425a8c71e4
add getSeed()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5775 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 17:51:29 +00:00
bsalomon@google.com
2b64f84b4b
Add SkNativeGLContext implementation for iOS.
...
R=caryclark@google.com
Review URL: https://codereview.appspot.com/6589055
git-svn-id: http://skia.googlecode.com/svn/trunk@5767 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 15:25:12 +00:00
skia.committer@gmail.com
dc3a4e5fa8
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5762 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 02:01:24 +00:00
reed@google.com
5957f47e8d
retool so we don't need to call SkCanvas::setDevice
...
Review URL: https://codereview.appspot.com/6591054
git-svn-id: http://skia.googlecode.com/svn/trunk@5759 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 20:31:56 +00:00
robertphillips@google.com
ccb3950409
Speculative render target ref/unref fixes
...
https://codereview.appspot.com/6592051/
git-svn-id: http://skia.googlecode.com/svn/trunk@5754 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 18:25:13 +00:00
reed@google.com
7ec0015ec3
delete obsolete/unused SkGpuCanvas
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5752 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 18:06:05 +00:00
tfarina@chromium.org
887760f60b
views: Fix a typo in SkEvent.h
...
WndProc is not implemented by unix/linux and does not even compile fixing the
typoe, so just remove these function declarations.
R=bsalomon@google.com
Review URL: https://codereview.appspot.com/6561062
git-svn-id: http://skia.googlecode.com/svn/trunk@5749 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 16:14:21 +00:00
junov@google.com
52a00cac51
Adding virtual method to SkDeferredCanvas::NotificationClient for signaling when commands are skipped due to the skip on clear optimization.
...
TEST=DeferredCanvas unit test
BUG=http://code.google.com/p/chromium/issues/detail?id=116840
Review URL: https://codereview.appspot.com/6590050
git-svn-id: http://skia.googlecode.com/svn/trunk@5747 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 15:27:14 +00:00
reed@google.com
dde646afb5
re-land removal of setBitmapDevice
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5746 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 14:58:57 +00:00
robertphillips@google.com
35e535a10f
Rolling back r5732 due to Chrome Mac compiler issues
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5744 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-30 21:05:15 +00:00
skia.committer@gmail.com
22b460cef6
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5735 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-29 02:01:02 +00:00
reed@google.com
768d59b97d
remove setBitmapDevice -- no longer called, and is a necessary step on our way
...
to removing setDevice (and hopefully getDevice after that).
git-svn-id: http://skia.googlecode.com/svn/trunk@5732 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 20:59:03 +00:00
robertphillips@google.com
bac6b0575a
Update Ganesh to support fractional rects in drawBitmapRect
...
https://codereview.appspot.com/6561070/
git-svn-id: http://skia.googlecode.com/svn/trunk@5724 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 18:06:49 +00:00
senorblanco@chromium.org
9c39744a00
Fix recursive GPU processing for SkImageFilter. Plumb through the
...
SkImageFilter::Proxy parameter to the GPU recursion path. Extract
DeviceImageFilterProxy from SkCanvas.cpp into its own .h, and rename it.
https://codereview.appspot.com/6575059/
git-svn-id: http://skia.googlecode.com/svn/trunk@5720 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 21:57:45 +00:00
reed@google.com
aa400ee34c
doh, fix typo
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5717 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 21:03:49 +00:00
reed@google.com
4c9e2aa7c7
eliminate (unused) extra param to update(), and thereby remove (bad bad bad) setBitmapDevice call.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5716 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 20:58:01 +00:00
reed@google.com
34dc9a2dae
allow chrome to use old drawBitmapRect beahvior for now, using SK_SUPPORT_INT_SRCRECT_DRAWBITMAPRECT
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5710 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 15:46:45 +00:00
tfarina@chromium.org
e229e92ea5
Remove deprecated SkOSWindow_wxwidgets.h
...
It seems we never really supported WxWidgets.
R=bsalomon@google.com
Review URL: https://codereview.appspot.com/6569062
git-svn-id: http://skia.googlecode.com/svn/trunk@5708 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 13:44:57 +00:00
bsalomon@google.com
373ebc6345
Suppress some warnings on linux.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6572046
git-svn-id: http://skia.googlecode.com/svn/trunk@5687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:08:56 +00:00
mike@reedtribe.org
74bb77ee4c
add getMetaData() to SkCanvas (as part of our master plan to remove
...
subclasses of SkCanvas and SkDevice from our clients.
git-svn-id: http://skia.googlecode.com/svn/trunk@5679 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 02:24:45 +00:00
reed@google.com
33535f3c48
Reimplement drawBitmapRectToRect to correctly handle fraction srcRect.
...
The prev impl relied on drawBitmap "deducing" the destination rect by applying
the computed matrix to the bitmap's bounds. This cannot be done if the srcRect
is fractional, and therefore not representable w/ a bitmap.
The new impl computes the same matrix, but calls down to the device via drawRect
+ a bitmap_shader. This allows us to specfiy the dstRect explicitly.
The possible down-side is that we now rely on the device subclass to efficiently
handle draRect+shader, instead of calling its drawBitmap entry-point.
To give the device the chance to handle this differently, I now call through to
a new device virtual: drawBitmapRect. The default impl is to create the shader
and call drawRect, but a subclass can intercept that.
For now, the GPU override of drawBitmapRect is mimicing the old behavior (by
rounding the srcRect to an iRect). This preserves its ability to call drawBitmap
which handles very-large textures, but shows some gittering/imprecision, due to
the rounding. ... this is the same GPU behavior we have before this CL.
Review URL: https://codereview.appspot.com/6542065
git-svn-id: http://skia.googlecode.com/svn/trunk@5663 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 15:37:50 +00:00
senorblanco@chromium.org
8640d5024d
This patch adds support for optional processing of the alpha channel in
...
the matrix convolution filter. Test cases are added to the GM and the
bench.
NOTE: This will require rebaselining the matrixconvolution GM, so it will
likely turn the bots red until that is done.
https://codereview.appspot.com/6547049/
git-svn-id: http://skia.googlecode.com/svn/trunk@5661 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 14:32:42 +00:00
robertphillips@google.com
0e82c6729f
"fix" chrome build
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5655 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 00:39:51 +00:00
caryclark@google.com
594dd3cd78
iOS support work in progress
...
include/core/SkTypes.h
- address unsigned warning
include/core/SkInstCnt.h
src/core/SkInstCnt.cpp
gyp/common.gypi
- always define SK_ENABLE_INST_COUNT for debug builds
src/views/mac/SkNSView.mm
- only call glClear if there is a GL context
src/ports/SkImageDecoder_CG.cpp
- fix iOS hack by using proper include
gyp/opts.gyp
- exclude more ARM files from iOS for now (see issue 900)
gyp/common_conditions.gypi
- add release, more ios specific common settings
gyp/bench.gyp
- add iOS condition
gyp/SampleApp.gyp
- remove precompiled header, hardcoded SDK path
- add more frameworks
gyp/debugger.gyp
- fix syntax error
- add iOS/Android condition
gyp/core.gyp
- remove hardcoded SDK path, add more frameworks
gyp/common_variables.gypi
- add ios SDK path
- add ios SDK version
gyp/iOSSampleApp.gyp
- remove obsolete project
gyp/zlib.gyp
- add ios library path
Review URL: https://codereview.appspot.com/6551070
git-svn-id: http://skia.googlecode.com/svn/trunk@5649 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 19:33:57 +00:00
robertphillips@google.com
cdb426d55a
Fix for GrTextureStripAtlas memory leak
...
https://codereview.appspot.com/6549050/
git-svn-id: http://skia.googlecode.com/svn/trunk@5648 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 19:33:59 +00:00
scroggo@google.com
a0c2bc2438
Make flattenables no longer depend on global static initializers.
...
Instead, force all builds to call InitializeFlattenables.
Remove the make_debugger script, which was created to force
rebuilding without global static initializers so that all flattenables
would be linked. It is no longer necessary since all flattenables
will be linked thanks to InitializeFlattenables, which now can (and
must) be called when global static initializers are turned on.
BUG=https://code.google.com/p/skia/issues/detail?id=903
BUG=https://code.google.com/p/skia/issues/detail?id=902
Review URL: https://codereview.appspot.com/6548044
git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 17:54:46 +00:00
junov@chromium.org
a38dfb6981
Adding hasPendingCommands API method to SkDeferredCanvas
...
BUG=http://code.google.com/p/chromium/issues/detail?id=146178
Review URL: https://codereview.appspot.com/6550050
git-svn-id: http://skia.googlecode.com/svn/trunk@5632 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 22:10:33 +00:00
junov@chromium.org
fb10389403
Adding a silent playback option to SkGPipeRead
...
Testing state consistency after silent playback in CanvasTest indirectly
through SkDeferredCanvas.
BUG=http://code.google.com/p/chromium/issues/detail?id=146178
TEST=CanvasTest unit test, and bench with --mode deferredSilent
Review URL: https://codereview.appspot.com/6542047
git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 19:35:43 +00:00
reed@google.com
af777278c5
remove use of SkRefPtr in public header (SkPDFDocument.h)
...
Review URL: https://codereview.appspot.com/6546048
git-svn-id: http://skia.googlecode.com/svn/trunk@5612 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 18:19:26 +00:00
reed@google.com
52657c75b5
remove unused parameter (that also slowed us down) to SkAutoTDelete
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5611 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 18:04:12 +00:00
reed@google.com
fc641d09e5
remove all SkRefPtr from SkPDFDevice.h
...
Review URL: https://codereview.appspot.com/6542049
git-svn-id: http://skia.googlecode.com/svn/trunk@5609 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 17:52:20 +00:00
caryclark@google.com
867cbd8bc2
first cut at making iOS work
...
Replace __arm__ with SK_CPU_ARM
add support for iOS simulator and device
fix const warning in iOSSampleApp
update gyp files
https://code.google.com/p/skia/issues/detail?id=900
tracks fixing missing arm assembly
Review URL: https://codereview.appspot.com/6552045
git-svn-id: http://skia.googlecode.com/svn/trunk@5606 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 15:45:41 +00:00
bsalomon@google.com
db545aec72
Fix GrTextureAccess::operator ==
...
compare the textures, correctly intepret memcmp result, don't compare last byte of swizzle array which must be 0.
BUG=895
Review URL: https://codereview.appspot.com/6542048
git-svn-id: http://skia.googlecode.com/svn/trunk@5605 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 15:37:30 +00:00
reed@google.com
2a006c1127
begin to skiafy PDF headers : removing use of SkRefPtr
...
Review URL: https://codereview.appspot.com/6526050
git-svn-id: http://skia.googlecode.com/svn/trunk@5596 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-19 17:05:55 +00:00
skia.committer@gmail.com
c1ad022608
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5594 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-19 02:01:47 +00:00
senorblanco@chromium.org
5faa2dc266
Implements a matrix convolution filter (raster path only). The filtering loop
...
is templated on the tiling mode for speed: interior pixels are unconditionally
fetched; border pixels apply the appropriate tiling mode before fetching. It
handles target, bias, divisor (as gain), and edge modes (named to be more
skia-like). It does not handle the "preserveAlpha" semantics of
feConvolveMatrix, nor "kernelUnitLength".
git-svn-id: http://skia.googlecode.com/svn/trunk@5592 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:32:34 +00:00
reed@google.com
7112173c3c
re-re-land 5578
...
will follow w/ new .skp files to keep the waterfall green (I hope)
git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 15:14:33 +00:00
bsalomon@google.com
1ce49fc917
Move GrTextureParams from GrSamplerState to GrTextureAccess
...
Review URL: https://codereview.appspot.com/6496135/
git-svn-id: http://skia.googlecode.com/svn/trunk@5582 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 14:14:49 +00:00