mtklein@google.com
3a19fb58a6
Sketch of SK_ONCE
...
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/26563002
git-svn-id: http://skia.googlecode.com/svn/trunk@11674 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 16:12:23 +00:00
reed@google.com
baed71fbfe
add counting to Globals, and refactor some for clarity
...
BUG=
Review URL: https://codereview.chromium.org/24447003
git-svn-id: http://skia.googlecode.com/svn/trunk@11484 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 19:28:27 +00:00
commit-bot@chromium.org
97f8167622
We don't flatten or unflatten SkPaintOptionsAndroid. Reproduce and fix.
...
BUG=skia:1625
R=djsollen@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/24075010
git-svn-id: http://skia.googlecode.com/svn/trunk@11472 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 15:16:12 +00:00
robertphillips@google.com
ca0c8389e2
Move bound and isFinite into pathref
...
https://codereview.chromium.org/24350006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11467 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 12:18:23 +00:00
reed@google.com
d28ba8010c
promote SkImage::AlphaType to SkAlphaType
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/24130009
git-svn-id: http://skia.googlecode.com/svn/trunk@11421 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 19:33:52 +00:00
caryclark@google.com
570863f2e2
path ops work in progress
...
path ops work in progress
BUG=
Review URL: https://codereview.chromium.org/21359002
git-svn-id: http://skia.googlecode.com/svn/trunk@11291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 15:55:01 +00:00
robertphillips@google.com
24ddde9758
Revert 11247, 11250, 11251, 11257, and 11279 to unblock DEPS roll ( https://codereview.chromium.org/24159002/ )
...
11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11257 Canary build fix - https://codereview.chromium.org/23532068
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11288 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 14:04:05 +00:00
robertphillips@google.com
ba6e954140
Revert the revert of 11247, 11250, 11251 and 11279 (Chrome already relies on changes in r11247)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11287 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 13:40:12 +00:00
robertphillips@google.com
478884f7d3
Revert 11247, 11250, 11251 and 11279 to unblock DEPS roll ( https://codereview.chromium.org/24159002/ )
...
11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11285 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 13:19:11 +00:00
commit-bot@chromium.org
5792cded61
Initial error handling code
...
I made it as simple as possible. The impact seems minimal and it should do what's necessary to make this code secure.
BUG=
R=reed@google.com , scroggo@google.com , djsollen@google.com , sugoi@google.com , bsalomon@google.com , mtklein@google.com , senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11247 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 12:39:34 +00:00
robertphillips@google.com
53238bc960
Move SkBitmapDevice functions to their own file
...
https://codereview.chromium.org/23553006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11022 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-30 13:12:10 +00:00
commit-bot@chromium.org
e029440758
Replace SkTScopedPtr with SkAutoTDelete in Skia.
...
BUG=
R=djsollen@google.com , reed@google.com , vandebo@chromium.org
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/23621005
git-svn-id: http://skia.googlecode.com/svn/trunk@11016 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-29 22:14:04 +00:00
reed@google.com
1c028bd395
fix state machine so we know simple only loops once, but we can call maprect in debug mode
...
Revert "Revert of r10943."
This reverts commit 9e83074cce521d3cc3b8b3a9b819a612a07d800a.
BUG=
R=tomhudson@google.com
Review URL: https://codereview.chromium.org/23618005
git-svn-id: http://skia.googlecode.com/svn/trunk@10981 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-28 15:23:19 +00:00
rmistry@google.com
e09d6f4819
Revert of r10943.
...
Review URL: https://codereview.chromium.org/23626002
git-svn-id: http://skia.googlecode.com/svn/trunk@10944 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-27 18:53:41 +00:00
reed@google.com
42cb6c0247
add SkDeviceLooper to handle larger-than-fixedpoint
...
BUG=
Review URL: https://codereview.chromium.org/23392006
git-svn-id: http://skia.googlecode.com/svn/trunk@10943 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-27 17:53:52 +00:00
robertphillips@google.com
9241e33ca9
Chromium staging for SkDevice refactoring
...
https://codereview.chromium.org/23332009/
git-svn-id: http://skia.googlecode.com/svn/trunk@10844 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-21 13:54:44 +00:00
commit-bot@chromium.org
34504ad924
Adding 2 functions to the Skia API
...
I need wrappers for both SkOrderedReadBuffer and SkOrderedWriteBuffer inside Chromium in order to do the IPC serialization of Skia SkImageFilter objects.
See https://codereview.chromium.org/21271002/
BUG=
R=djsollen@google.com , scroggo@google.com , reed@google.com
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/22591002
git-svn-id: http://skia.googlecode.com/svn/trunk@10642 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-08 19:20:05 +00:00
reed@google.com
602a1d7025
add scaledimagecache
...
BUG=
Review URL: https://codereview.chromium.org/20005003
git-svn-id: http://skia.googlecode.com/svn/trunk@10286 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-23 19:13:54 +00:00
skia.committer@gmail.com
1f3c73825b
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@10223 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-20 07:00:58 +00:00
humper@google.com
138ebc3e40
The image resampling code has been transplanted from Chrome; it's incredibly fast.
...
We've tested this CL plumbed into Chrome and done benchmarking with excellent results.
This CL can land independent of any Chrome changes; it's completely internal to skia.
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/19335002
git-svn-id: http://skia.googlecode.com/svn/trunk@10206 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-19 20:20:04 +00:00
reed@google.com
eed6f1b76b
pull mipmap class into its own (private) header
...
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/19462007
git-svn-id: http://skia.googlecode.com/svn/trunk@10161 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-18 19:53:31 +00:00
tfarina@chromium.org
883fe7f8b1
Move implementation of SkFilterShader into its source file.
...
Since SkFilterShader has its own header file, makes more sense to have a
separate source file to implement it rather than placing it in a "random"
SkColorFilter.cpp file.
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/19305004
git-svn-id: http://skia.googlecode.com/svn/trunk@10101 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-16 13:05:27 +00:00
humper@google.com
b088947f27
New bitmap filter checkin; this time with less build breakage
...
BUG=
Review URL: https://codereview.chromium.org/18942002
git-svn-id: http://skia.googlecode.com/svn/trunk@9944 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 21:37:14 +00:00
humper@google.com
1a8940e558
Revert "More general image filter interface; tested implementation of standalone"
...
This reverts commit 4df3e8b079e019af5f60c13e7e6ec6589663962a.
git-svn-id: http://skia.googlecode.com/svn/trunk@9937 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 18:02:06 +00:00
humper@google.com
25fc6b9bfb
More general image filter interface; tested implementation of standalone
...
image scaler (not yet plumbed). High quality downsampler. Fast SSE
resampler.
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/17381008
git-svn-id: http://skia.googlecode.com/svn/trunk@9936 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-09 17:48:15 +00:00
reed@google.com
6ba4572eed
remove dst/rendertarget support for kARGB_4444_Config
...
BUG=
Review URL: https://codereview.chromium.org/17335008
git-svn-id: http://skia.googlecode.com/svn/trunk@9727 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-21 18:30:53 +00:00
reed@google.com
99ac02bb70
SkDocument base for pdf, xps, etc.
...
R=scroggo@google.com
Review URL: https://codereview.chromium.org/16660002
git-svn-id: http://skia.googlecode.com/svn/trunk@9476 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-07 20:30:16 +00:00
scroggo@google.com
7def5e1630
Separate core and images project.
...
SkImage calls functions on SkImageDecoder and SkImageEncoder. This
is desired behavior, and it is also desired to include SkImage as
a part of core. In order to keep core from depending on images,
update SkImageDecoder_empty.cpp to implement all of SkImageDecoder
and SkImageEncoder. This file will be built by chrome (in
https://codereview.chromium.org/15960015 ).
Move force_linking from SkImageDecoder.cpp to its own file. It must
be called to force linking with the image decoders if desired. Call
the function in tools that need it:
sk_image
render_pictures
render_pdfs
sk_hello
filter
bench_pictures
debugger
SkImageDecoder:
Derive from SkNoncopyable, instead of duplicating its
hiding of constructors.
skhello:
Return rather than trying to write a null SkData to the stream.
Revert "Hamfistedly removed core dependence on images"
(commit 0f05f682a90bc125323677abf3476e1027d174f5) and
"Move SkImage::encode to SkImage_Codec.cpp."
(commit 83e47a954d0bf65439f3d9c0c93213063dd70da3.)
These two commits were temporary fixes that this change
cleans up.
SkSnapshot.cpp:
Check for a NULL encoder returned by SkImageEncoder::Create.
BUG=https://code.google.com/p/skia/issues/detail?id=1275
R=djsollen@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/15806010
git-svn-id: http://skia.googlecode.com/svn/trunk@9364 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:00:10 +00:00
bungeman@google.com
6cab1a4b6a
Change SkStream.
...
https://codereview.chromium.org/15298009/
git-svn-id: http://skia.googlecode.com/svn/trunk@9312 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-29 13:43:31 +00:00
commit-bot@chromium.org
8b79028d27
Move SkDrawLooper implementation to its own file.
...
It previously lived in SkPaint.cpp.
BUG=
R=reed@google.com , tomhudson@chromium.org , jbroman@chromium.org
Author: jbroman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/15896004
git-svn-id: http://skia.googlecode.com/svn/trunk@9272 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-24 14:57:53 +00:00
reed@google.com
4c69a064b4
clone of https://codereview.chromium.org/15316014/ with teaks
...
BUG=
Review URL: https://codereview.chromium.org/15904005
git-svn-id: http://skia.googlecode.com/svn/trunk@9264 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-23 20:11:56 +00:00
reed@google.com
8b7463db00
remove dead code (SkBitmapSampler)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@9062 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-08 15:32:41 +00:00
robertphillips@google.com
879f6c7c0c
Hamfistedly removed core dependence on images
...
https://codereview.chromium.org/14805002/
git-svn-id: http://skia.googlecode.com/svn/trunk@8947 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 00:12:03 +00:00
caryclark@google.com
45a75fb4d0
path ops : make it real
...
Add an option to SkCanvas to turn on path
ops when combining clips.
Allow Op() to use one of the input paths
as an output path.
Fix a bug in Op() when the minuend is empty
and the subtrahend is not (for difference).
Change the build to allow core to depend on pathops.
Review URL: https://codereview.chromium.org/14474002
git-svn-id: http://skia.googlecode.com/svn/trunk@8855 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 13:34:40 +00:00
reed@google.com
8c5c7a905b
add SkDataTable, to efficiently store an immutable array. Includes a builder
...
helper class.
Review URL: https://codereview.chromium.org/14188049
git-svn-id: http://skia.googlecode.com/svn/trunk@8779 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-19 20:16:01 +00:00
humper@google.com
75e3ca127c
Error checking / reporting API
...
Review URL: https://codereview.chromium.org/13699004
git-svn-id: http://skia.googlecode.com/svn/trunk@8566 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 21:44:11 +00:00
senorblanco@chromium.org
d043ccee37
Allow single-pass filters (which use asNewEffect()) to participate in the image filter DAG. This was done by introducing the SkSinglePassImageFilter abstract base class, which implements canFilterImageGPU() and filterImageGPU() on behalf of the derived class. The derived class still only needs to asNewEffect(). This allows us to recurse on the filter input in SkSinglePassImageFilter::onFilterImageGPU(). It also allows us to remove any knowledge of single-pass image filters from SkGpuDevice and from the SkImageFilter base class as well.
...
BUG=
Review URL: https://codereview.chromium.org/13602013
git-svn-id: http://skia.googlecode.com/svn/trunk@8563 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 19:43:22 +00:00
robertphillips@google.com
f735cb3ea3
Remove SkMMapStream.h from core.gypi
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8214 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 12:29:06 +00:00
scroggo@google.com
bb281f7f96
Improvements/additions to SkImageCache/SkLazyPixelRef.
...
SkPurgeableImageCache:
New image cache that uses virtual memory to store the pixels. Combines
features of SkAshmemImageCache (which has been removed) with SkPurgeableMemoryBlock, which has android and Mac versions.
SkImageCache:
Modified the API. pinCache now returns a status out parameter which
states whether the pinned memory retained the old data. This allows
allocAndPinCache to only be used for allocations.
Add a new debug only interface to purge unpinned data.
Updates to documentation, clarifying behavior.
Changed CachedStatus to MemoryStatus
SkLruImageCache:
Implement the new function purgeAllUnpinnedCaches and change implementation
of pinCache for the new behavior.
SkLazyPixelRef:
Rewrite onLockPixels to account for the new behavior of pinCache.
BitmapFactoryTest:
Test the new SkPurgeableImageCache.
Write tests which directly test the SkImageCaches.
Create a larger bitmap, since some of the SkImageCaches are designed
to handle large bitmaps.
bench_ and render_pictures:
Consolidate lazy_decode_bitmap into one function.
Allow using a flag to specify using the purgeable image cache.
Clean up some #includes.
Review URL: https://codereview.chromium.org/12433020
git-svn-id: http://skia.googlecode.com/svn/trunk@8207 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 21:37:39 +00:00
reed@google.com
e1575aa216
reland 8200 w/ fix for android (use fullpath instead of path)
...
Review URL: https://codereview.chromium.org/12921003
git-svn-id: http://skia.googlecode.com/svn/trunk@8206 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 21:08:46 +00:00
reed@google.com
070235e746
revert 8204 -- what is happening???
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8205 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 20:53:49 +00:00
reed@google.com
4f7e846cd8
reland 8200 w/ fix for android (need fullpath instead of path)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8204 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 20:49:28 +00:00
reed@google.com
1311f7e7f4
revert 8200 to figure out android break
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8201 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 19:32:58 +00:00
reed@google.com
d5ea2aeb60
move SK_MMAP_SUPPORT into SkPreConfig, so we can know about its availability
...
throughout the code.
Add SkData::NewFromMMap() help factory.
Refactor (now gone) SkMMapStream into SkStream::NewFromFile() factory
Review URL: https://codereview.chromium.org/12919013
git-svn-id: http://skia.googlecode.com/svn/trunk@8200 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 19:08:46 +00:00
scroggo@google.com
d9ef3a21d4
Create a platform-dependent object for accessing purgeable memory.
...
Siphoned off from https://codereview.chromium.org/12433020/
Create a Skia class which can provide purgeable memory in a platform-
dependent way. Include an implementation for Ashmem and Mac/iOS.
Review URL: https://codereview.chromium.org/12645006
git-svn-id: http://skia.googlecode.com/svn/trunk@8176 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-15 18:08:09 +00:00
reed@google.com
6ec97b6e4b
refactor fonthost_tables into wrapper (fonthost) and impl (fontstream)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7958 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-04 15:16:06 +00:00
reed@google.com
1a6880597e
move SkFDStream out of images into core
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7846 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-25 18:17:12 +00:00
scroggo@google.com
f8d7d27313
Create SkLazyPixelRef which performs lazy decoding.
...
The new pixel ref behaves similarly to SkImageRef, with some key differences:
It does not depend on the images project.
It requires an SkImageCache, which handles allocation and caching of the pixel
memory.
It takes a function signature for decoding which decodes into already allocated
pixel memory rather than into an SkBitmap.
Add two implementations of SkImageCache: SkLruImageCache and SkAshmemImageCache.
Replace SkSerializationHelpers::DecodeBitmap with SkPicture::InstallPixelRefProc,
and update sites that referenced it.
SkBitmapFactory now sets the pixel ref to a new object of the new
class SkLazyPixelRef, provided it has an SkImageCache for caching.
Provide an option to do lazy decodes in render_pictures and bench_pictures.
SkPicture:
Eliminate the default parameters in the constructor.
If a proc for decoding bitmaps is installed, use it to decode any encoded
data in subpictures.
When parsing deserializing subpictures, check for success.
When serializing subpictures, pass the picture's bitmap encoder to the
subpicture's call to serialize.
Update BitmapFactoryTest to test its new behavior.
BUG=https://code.google.com/p/skia/issues/detail?id=1008
BUG=https://code.google.com/p/skia/issues/detail?id=1009
Review URL: https://codereview.appspot.com/7060052
git-svn-id: http://skia.googlecode.com/svn/trunk@7835 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-22 21:38:35 +00:00
robertphillips@google.com
3b0a9fe567
Update filter tool to allow more flexible filtering
...
https://codereview.appspot.com/7227055/
git-svn-id: http://skia.googlecode.com/svn/trunk@7492 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-31 15:56:22 +00:00
robertphillips@google.com
4991b8f234
Added toString to SkDrawLooper-derived classes
...
https://codereview.appspot.com/7195054/
git-svn-id: http://skia.googlecode.com/svn/trunk@7422 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-28 20:21:59 +00:00