bungeman@google.com
a95a066f4a
Fix Windows build break introduced in r13864.
...
Need SkToBool(...).
git-svn-id: http://skia.googlecode.com/svn/trunk@13870 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 23:26:50 +00:00
commit-bot@chromium.org
1c30818f66
fix non-gpu build
...
BUG=
R=bungeman@google.com
TBR=bungeman@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/197283040
git-svn-id: http://skia.googlecode.com/svn/trunk@13868 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 22:54:40 +00:00
commit-bot@chromium.org
2472b3219e
Only use analytic effect-based clipping when AA is required by at least one element.
...
BUG=352718
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/204983003
git-svn-id: http://skia.googlecode.com/svn/trunk@13867 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 21:26:35 +00:00
commit-bot@chromium.org
eb9547c1d6
stub for ganesh veto
...
BUG=skia:
R=bsalomon@google.com , nduca@chromium.org
Author: humper@google.com
Review URL: https://codereview.chromium.org/197803002
git-svn-id: http://skia.googlecode.com/svn/trunk@13866 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 21:24:25 +00:00
commit-bot@chromium.org
e14792d99f
hide Config8888 entirely
...
BUG=skia:
R=bsalomon@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/203993002
git-svn-id: http://skia.googlecode.com/svn/trunk@13865 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 21:20:24 +00:00
commit-bot@chromium.org
d8a57af725
Adding a new SkSurface factory for generating surfaces from the scratch texture pool.
...
TEST=Surface unit test
BUG=crbug.com/351798
R=bsalomon@google.com , robertphillips@google.com , reed@google.com
Author: junov@chromium.org
Review URL: https://codereview.chromium.org/201153023
git-svn-id: http://skia.googlecode.com/svn/trunk@13864 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 21:19:16 +00:00
senorblanco@chromium.org
b9c95978c6
Use rounding to 8888 in lighting filters, raster path.
...
when converting float -> 8-bit BGRA in lighting filters, use rounding
rather than floor(). This makes the GPU and raster paths match more
closely (as tested by Blink test
feDiffuseLighting-linearrgb-lighting-color.svg).
Will affect the LSB of lighting, imagefiltersscaled GMs.
R=junov@chromium.org
BUG=skia:
Review URL: https://codereview.chromium.org/205073002
git-svn-id: http://skia.googlecode.com/svn/trunk@13863 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 19:44:41 +00:00
commit-bot@chromium.org
8e13a159f3
Fixed cross compilation with mingw.
...
Tested in Mozilla source tree. I tried to use skia build system, but it's up to the task for cross compilation.
SkHRESULT.cpp - Use proper file name (that matters on case sensitive OSes)
SkAtomics_win.h - Don't use pragma intrinsic on GCC (this causes massive warnings)
SkOSFile_win.cpp - This one is tricky. GCC doesn't allow (void*) casts in template argument constants and INVALID_HANDLE_VALUE looks like this:
((HANDLE)(LONG_PTR)-1)
where HANDLE is typedefed to void*. Changed the code to use LONG_PTR as template argument and cast it when needed.
BUG=skia:
R=bungeman@google.com , reed@google.com
Author: cjacek@gmail.com
Review URL: https://codereview.chromium.org/198643004
git-svn-id: http://skia.googlecode.com/svn/trunk@13862 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 19:28:00 +00:00
senorblanco@chromium.org
b7b7eb32f4
Fix accessBitmap() with deferred clear, GPU path.
...
When accessBitmap() is called on a GPU device which has deferred clear,
and no drawing has been done, force the clear before returning the
bitmap.
This is covered by the top right test case in the imagefilterscropexpand
GM, where an offset image filter is drawn but the resulting bitmap is
cropped out, resulting in no drawing to the offscreen. It should be
empty, but without this fix it results in garbage (previous scratch
texture contents).
BUG=skia:
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/204903002
git-svn-id: http://skia.googlecode.com/svn/trunk@13860 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 18:24:04 +00:00
commit-bot@chromium.org
fffb2cd463
Revert of SkPaint: eliminate some dead bytes in 64-bit build. ( https://codereview.chromium.org/203203003/ )
...
Reason for revert:
Causing RunTest failures on Android.
Original issue's description:
> SkPaint: eliminate some dead bytes in 64-bit build.
>
> + memcpy-based copy constructor was hiding this gap -> manual copy constructor.
> + Split tests for finer-grained failures.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13856
R=reed@google.com , mtklein@google.com , mtklein@chromium.org
TBR=mtklein@chromium.org , mtklein@google.com , reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: jcgregorio@google.com
Review URL: https://codereview.chromium.org/204543002
git-svn-id: http://skia.googlecode.com/svn/trunk@13858 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 14:36:29 +00:00
commit-bot@chromium.org
fa4dc2c4cb
SkPaint: eliminate some dead bytes in 64-bit build.
...
+ memcpy-based copy constructor was hiding this gap -> manual copy constructor.
+ Split tests for finer-grained failures.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/203203003
git-svn-id: http://skia.googlecode.com/svn/trunk@13856 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 11:42:34 +00:00
skia.committer@gmail.com
2002d881e8
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13855 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 03:02:22 +00:00
commit-bot@chromium.org
70512af9dd
Add a means of extracting active operations from SkPicture
...
For the "pull forward" task I will be comparing the two cases:
analyze the whole skp and use the BBH information
analyze only the active portion of the skp
In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it.
Committed: http://code.google.com/p/skia/source/detail?r=13836
R=reed@google.com , bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/195793010
git-svn-id: http://skia.googlecode.com/svn/trunk@13853 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 17:45:32 +00:00
robertphillips@google.com
14bdd527ee
Revert of r13836 due to Chromium cc_unittests failures
...
https://codereview.chromium.org/203333005/
git-svn-id: http://skia.googlecode.com/svn/trunk@13850 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 13:56:09 +00:00
commit-bot@chromium.org
92362383a4
Remove SkCanvas matrix ops return value.
...
The internal SkMatrix ops can no longer fail -> we can remove the bool
return value.
R=bsalomon@google.com , reed@google.com , robertphillips@google.com , scroggo@google.com , fmalita@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/200223008
git-svn-id: http://skia.googlecode.com/svn/trunk@13849 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 12:51:48 +00:00
commit-bot@chromium.org
a1dfa0cf05
Slightly faster quadtree searching
...
BUG=skia:2125
R=tomhudson@google.com , mtklein@google.com , robertphillips@google.com , reed@google.com
Author: iancottrell@google.com
Review URL: https://codereview.chromium.org/196383026
git-svn-id: http://skia.googlecode.com/svn/trunk@13847 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 09:07:27 +00:00
skia.committer@gmail.com
db0c875377
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13845 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 03:02:11 +00:00
senorblanco@chromium.org
d9cdff67a4
Fix GPU displacement with expanding crop rects.
...
Fix GPU displacement with expanding crop rects, and re-enable the
imagefilterscropexpand GM. There were two bugs: the result texture was
being created at input color bitmap size, not the cropped bounds size,
and the matrix in GrContext was not being set to identity before draw.
R=junov@chromium.org
Review URL: https://codereview.chromium.org/195973007
git-svn-id: http://skia.googlecode.com/svn/trunk@13844 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 23:41:40 +00:00
commit-bot@chromium.org
1301bf3abf
add initial scraper for dashing
...
BUG=skia:
R=bsalomon@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/196603027
git-svn-id: http://skia.googlecode.com/svn/trunk@13843 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 23:09:47 +00:00
robertphillips@google.com
e4ff3e6fe8
Update SkXPSDevice.cpp too
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13842 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 22:34:32 +00:00
commit-bot@chromium.org
a713f9c6f6
add new readPixels with direct memory parameters
...
BUG=skia:
R=scroggo@google.com , bsalomon@google.com , robertphillips@google.com , fmalita@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/199413013
git-svn-id: http://skia.googlecode.com/svn/trunk@13840 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 21:31:26 +00:00
commit-bot@chromium.org
f338d7c860
Add nine patch type to SkRRect.
...
BUG=skia:2181
Committed: http://code.google.com/p/skia/source/detail?r=13833
R=robertphillips@google.com , reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/196343015
git-svn-id: http://skia.googlecode.com/svn/trunk@13839 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 21:17:30 +00:00
commit-bot@chromium.org
bab3fc4c90
Revert of Add nine patch type to SkRRect. ( https://codereview.chromium.org/196343015/ )
...
Reason for revert:
causes tests to have infinite loop
Original issue's description:
> Add nine patch type to SkRRect.
>
> BUG=skia:2181
>
> Committed: http://code.google.com/p/skia/source/detail?r=13833
R=robertphillips@google.com , reed@google.com
TBR=reed@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2181
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/202163004
git-svn-id: http://skia.googlecode.com/svn/trunk@13837 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 19:47:40 +00:00
commit-bot@chromium.org
ecb745dba7
Add a means of extracting active operations from SkPicture
...
For the "pull forward" task I will be comparing the two cases:
analyze the whole skp and use the BBH information
analyze only the active portion of the skp
In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it.
R=reed@google.com , bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/195793010
git-svn-id: http://skia.googlecode.com/svn/trunk@13836 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 18:11:57 +00:00
commit-bot@chromium.org
4ef54f8d72
remove SK_SUPPORT_LEGACY_WRITEPIXELSCONFIG -- dead code
...
BUG=skia:
R=halcanary@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/201973003
git-svn-id: http://skia.googlecode.com/svn/trunk@13834 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 17:03:18 +00:00
commit-bot@chromium.org
761b8e5572
Add nine patch type to SkRRect.
...
BUG=skia:2181
R=robertphillips@google.com , reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/196343015
git-svn-id: http://skia.googlecode.com/svn/trunk@13833 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 15:39:01 +00:00
robertphillips@google.com
1c556dba15
Reverting r13831 (Add a means of extracting active operations from SkPicture) due to Mac compiler issue
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13832 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 15:10:02 +00:00
robertphillips@google.com
0b23f9e15f
Add a means of extracting active operations from SkPicture
...
https://codereview.chromium.org/195793010/
git-svn-id: http://skia.googlecode.com/svn/trunk@13831 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 14:56:13 +00:00
bungeman@google.com
1d1f2347d3
SkFontStyleSet_DirectWrite::getStyle to properly handle NULL out params.
...
R=reed@google.com
Review URL: https://codereview.chromium.org/201213003
git-svn-id: http://skia.googlecode.com/svn/trunk@13829 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 14:04:50 +00:00
commit-bot@chromium.org
949b9986de
Fast implementation of QuadTree
...
Rewritten to avoid memory allocations.
BUG=skia:2242
R=tomhudson@google.com , mtklein@google.com , reed@google.com , robertphillips@google.com
Author: iancottrell@google.com
Review URL: https://codereview.chromium.org/187233002
git-svn-id: http://skia.googlecode.com/svn/trunk@13826 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 10:38:34 +00:00
skia.committer@gmail.com
eb849e5fd1
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13825 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 03:02:17 +00:00
commit-bot@chromium.org
42b08932e8
add NewRasterDirect for creating a canvas drawing to pre-allocated pixels
...
R=reed@google.com
TBR=scroggo@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/196923004
git-svn-id: http://skia.googlecode.com/svn/trunk@13824 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 02:13:07 +00:00
robertphillips@google.com
0f03f43e44
Move SkNoSaveLayerCanvas.h to include/utils
...
https://codereview.chromium.org/197243005
git-svn-id: http://skia.googlecode.com/svn/trunk@13823 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-16 21:59:11 +00:00
commit-bot@chromium.org
145d1c0fdc
Proposed SkCanvas API for preLoading textures to VRAM v2.0
...
This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/ ). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)).
Committed: http://code.google.com/p/skia/source/detail?r=13810
R=reed@google.com , bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/197123003
git-svn-id: http://skia.googlecode.com/svn/trunk@13822 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-16 19:46:36 +00:00
skia.committer@gmail.com
f0f9f5f904
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13820 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-15 03:02:32 +00:00
commit-bot@chromium.org
e78f7cfced
change tooBitForLCD to compare against linear size of the text, not the area
...
BUG=skia:
R=bungeman@google.com , alokp@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/200643003
git-svn-id: http://skia.googlecode.com/svn/trunk@13817 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 22:59:05 +00:00
commit-bot@chromium.org
0bed43c926
Get correct text metrics for distance fields, and fix dropouts due to thin features.
...
BUG=skia:2173
R=robertphillips@google.com , reed@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/200423003
git-svn-id: http://skia.googlecode.com/svn/trunk@13815 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 21:22:38 +00:00
robertphillips@google.com
5ed01d1f8f
Revert r13810 (Proposed SkCanvas API for preLoading textures to VRAM v2.0)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13811 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 18:50:07 +00:00
commit-bot@chromium.org
1ab85c8719
Proposed SkCanvas API for preLoading textures to VRAM v2.0
...
This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/ ). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)).
R=reed@google.com , bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/197123003
git-svn-id: http://skia.googlecode.com/svn/trunk@13810 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 18:23:12 +00:00
senorblanco@chromium.org
118252962f
Implement support for expanding crop rects in image filters
...
NOTE: this patch set is based on https://codereview.chromium.org/189913021/ ,
and needs that patch to land first.
Until now, crop rects in Skia have only been able to reduce
the size of the destination bounds, but not expand them.
SVG semantics require the latter as well. The heart of
the change is in applyCropRect(), which now assigns each
edge, instead of doing an intersection with the crop rect.
In order to support this (and still work well with tiled
drawing) we need to clip the resulting crop rect to the
clipping region of the filters. This uses the Context struct
previously landed from https://codereview.chromium.org/189913021/ .
Many of the pixel loops are not yet ready to handle a
destination rect larger than the source rect. So we provide
a convenience version of applyCropRect() which creates an
offscreen and pads it out with transparent black. Once the
pixel loops and shaders have been fixed to support larger
destination bounds, they should be switched back to the
non-drawing version of applyCropRect().
BUG=skia:
R=bsalomon@google.com , reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=13805
Review URL: https://codereview.chromium.org/198003008
git-svn-id: http://skia.googlecode.com/svn/trunk@13809 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 17:44:41 +00:00
senorblanco@chromium.org
29089179a6
Revert "Implement support for expanding crop rects in image filters"
...
Breaking ImageFilterTests unit test.
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/196353021
git-svn-id: http://skia.googlecode.com/svn/trunk@13806 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 16:48:39 +00:00
senorblanco@chromium.org
0ef0501baf
Implement support for expanding crop rects in image filters
...
NOTE: this patch set is based on https://codereview.chromium.org/189913021/ ,
and needs that patch to land first.
Until now, crop rects in Skia have only been able to reduce
the size of the destination bounds, but not expand them.
SVG semantics require the latter as well. The heart of
the change is in applyCropRect(), which now assigns each
edge, instead of doing an intersection with the crop rect.
In order to support this (and still work well with tiled
drawing) we need to clip the resulting crop rect to the
clipping region of the filters. This uses the Context struct
previously landed from https://codereview.chromium.org/189913021/ .
Many of the pixel loops are not yet ready to handle a
destination rect larger than the source rect. So we provide
a convenience version of applyCropRect() which creates an
offscreen and pads it out with transparent black. Once the
pixel loops and shaders have been fixed to support larger
destination bounds, they should be switched back to the
non-drawing version of applyCropRect().
BUG=skia:
R=bsalomon@google.com , reed@google.com
Review URL: https://codereview.chromium.org/198003008
git-svn-id: http://skia.googlecode.com/svn/trunk@13805 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 16:35:08 +00:00
senorblanco@chromium.org
4cb543d605
Implement support for a Context parameter in image filters
...
Some upcoming work (support for expanding crop rects) requires
the clip bounds to be available during filter traversal. This change
replaces the SkMatrix parameter in the onFilterImage() traversals
with a Context parameter. It contains the CTM, as well as the clip
bounds.
BUG=skia:
R=reed@google.com
Review URL: https://codereview.chromium.org/189913021
git-svn-id: http://skia.googlecode.com/svn/trunk@13803 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 15:44:01 +00:00
reed@google.com
0d30c51c6c
check for null-device pixels in onWritePixels, so we don't crash
...
https://code.google.com/p/chromium/issues/detail?id=352616
Review URL: https://codereview.chromium.org/196223013
git-svn-id: http://skia.googlecode.com/svn/trunk@13802 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 14:02:58 +00:00
skia.committer@gmail.com
bc3d92a7d8
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13800 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 03:02:26 +00:00
commit-bot@chromium.org
44c48d062f
De-virtualize SkCanvas matrix ops.
...
This moves the matrix management logic into non-virtual SkCanvas
methods, and turns the virtuals into protected notifiers.
R=reed@google.com , robertphillips@google.com , bsalomon@google.com
BUG=skia:2297
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/195793012
git-svn-id: http://skia.googlecode.com/svn/trunk@13799 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 20:03:58 +00:00
commit-bot@chromium.org
1037d92bbc
Added Z scale when X and Y scale to spot lights and point lights
...
Z scale is set as the average of X scale and Y scale.
BUG=skia:
R=senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/198013002
git-svn-id: http://skia.googlecode.com/svn/trunk@13798 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 19:45:41 +00:00
commit-bot@chromium.org
3da3b621c3
getDeviceCapabilities is no longer need, so remove it
...
BUG=skia:
R=bungeman@google.com , vandebo@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/198943003
git-svn-id: http://skia.googlecode.com/svn/trunk@13797 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 19:38:10 +00:00
bsalomon@google.com
44a435bc1a
Attempt to fix -1->unsigned warning on mac 10.6
...
TBR=bungeman@google.com
Review URL: https://codereview.chromium.org/199433002
git-svn-id: http://skia.googlecode.com/svn/trunk@13796 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 19:20:32 +00:00
commit-bot@chromium.org
0f10f7bf1f
Allow toString capability to be toggled independent of developer mode.
...
This change is motivated by the desire to see the text information in the debugger when not in developer mode. It is structured so user's can disable it if the capability is not wanted.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/197763008
git-svn-id: http://skia.googlecode.com/svn/trunk@13795 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 18:02:17 +00:00
commit-bot@chromium.org
fa5edbe575
Add effect-based clip for nine-patch SkRRects.
...
BUG=skia:2181
R=jvanverth@google.com , robertphillips@google.com , rmistry@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/194703011
git-svn-id: http://skia.googlecode.com/svn/trunk@13794 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 18:01:05 +00:00
commit-bot@chromium.org
98e22b84ca
Fix distance field edge detection.
...
When computing the initial edges for distance field generation, I was skipping
the outer pixels of glyphs to avoid accessing out of range memory. However,
there might be an edge transition on those pixels. This detects those cases.
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/197423003
git-svn-id: http://skia.googlecode.com/svn/trunk@13791 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 17:11:44 +00:00
commit-bot@chromium.org
ea163cc3a7
Changes to SkFontHost_linux
...
* Use SkOSPath::SkPathJoin() rather than append so that
SK_FONT_FILE_PREFIX does not have to end in a '/'.
* Add another font to the default font list.
Motivation: Some tests fail when there are no default fonts.
BUG=skia:2282
R=bungeman@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/195733007
git-svn-id: http://skia.googlecode.com/svn/trunk@13789 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 16:24:49 +00:00
skia.committer@gmail.com
affa77db64
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13782 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-13 03:02:23 +00:00
commit-bot@chromium.org
1db03d2fad
remove SK_SUPPORT_LEGACY_COPYTO_CONFIG
...
TBR=robertphillips@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/196413009
git-svn-id: http://skia.googlecode.com/svn/trunk@13780 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 21:47:51 +00:00
bungeman@google.com
562b2e67a2
Fix (1 << 31) to (1u << 31) in SkOTTable_OS_2.
...
When ints are 32 bits, (1 << 31) is undefined.
R=reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=13757
Review URL: https://codereview.chromium.org/189093020
git-svn-id: http://skia.googlecode.com/svn/trunk@13779 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 21:41:06 +00:00
senorblanco@chromium.org
2ca677e75d
Fix GPU colormatrix color filter with saturated alpha.
...
Clamp RGBA values before unpremultiplying, to match the raster path. This causes a problem when the resulting
alpha is >1.0, resulting in overly saturated RGB.
Covered by the setYUV2RGB() test case in the colormatrix GM.
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/196133006
git-svn-id: http://skia.googlecode.com/svn/trunk@13778 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 21:37:42 +00:00
commit-bot@chromium.org
e54a23fcfa
De-virtualize SkCanvas save/restore.
...
This moves the state management logic into non-virtual SkCanvas methods,
and turns the virtuals into protected notifiers.
R=reed@google.com , robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/194713008
git-svn-id: http://skia.googlecode.com/svn/trunk@13776 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 20:21:48 +00:00
reed@google.com
9c135db83d
support direct writing to top layer, and hide getTopLayer()
...
this should remove many of the chrome callers that today call
accessBitmap on the toplayer, so they can read/write those pixels.
The ultimate fix will be to support custom allocation of raster layers
(via GDI/cairo/mac) so we can remove PlatformDevice subclassing in
skia/ext
BUG=skia:
R=bsalomon@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/197433002
git-svn-id: http://skia.googlecode.com/svn/trunk@13774 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 18:28:35 +00:00
fmalita@google.com
9d201d6364
Remove unused zero_fill() in GrAtlas.cpp
...
Triggers warnings with some local clang builds.
R=jvanverth@google.com
Review URL: https://codereview.chromium.org/197663003
git-svn-id: http://skia.googlecode.com/svn/trunk@13773 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 17:31:20 +00:00
bsalomon@google.com
2ae9501e6f
Fix unit tests
...
Review URL: https://codereview.chromium.org/197823002
git-svn-id: http://skia.googlecode.com/svn/trunk@13772 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 17:29:46 +00:00
robertphillips@google.com
1e35304734
Fix for test failure
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13771 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 17:16:59 +00:00
commit-bot@chromium.org
ae79612092
Add compile flag to force usage of distance fields for all SkPaints.
...
BUG=skia:2173
R=reed@google.com , robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/195213003
git-svn-id: http://skia.googlecode.com/svn/trunk@13770 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 17:05:46 +00:00
commit-bot@chromium.org
c30dcb9b12
Add capture snapshot as data to SkWriter32, use it to optimise record->playback.
...
This is a new way of implementing https://codereview.chromium.org/155863005/
It uses copy on write semantics to return a buffer without copying it, so that record -> playback does not need to copy the buffer.
BUG=skia:2125
R=tomhudson@google.com , mtklein@google.com , reed@google.com , iancottrell@chromium.org
Author: iancottrell@google.com
Review URL: https://codereview.chromium.org/167113003
git-svn-id: http://skia.googlecode.com/svn/trunk@13769 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 17:04:28 +00:00
commit-bot@chromium.org
84cd099704
Clean up SkImageFilter.
...
Rename more occurences of 'target' to 'kernelOffset'.
This is a follow-up patch to
https://codereview.chromium.org/182983003/
BUG=skia:2187
R=senorblanco@chromium.org
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/197013003
git-svn-id: http://skia.googlecode.com/svn/trunk@13768 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 16:36:08 +00:00
commit-bot@chromium.org
4355f21dbc
Add elliptical-corner rrect clip effect. Currently only handles the case where all corners have the same pair of radii.
...
BUG=skia:2181
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/194603004
git-svn-id: http://skia.googlecode.com/svn/trunk@13766 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 15:32:50 +00:00
commit-bot@chromium.org
069a55a7fe
Revert of Revert of Revert "De-virtualize SkCanvas save/restore." ( https://codereview.chromium.org/196323003/ )
...
Reason for revert:
Pulling out to rename the virtuals.
Original issue's description:
> Revert of Revert "De-virtualize SkCanvas save/restore." (https://codereview.chromium.org/194923008/ )
>
> Reason for revert:
> Re-landing after roll fix.
>
> Original issue's description:
> > Revert "De-virtualize SkCanvas save/restore."
> >
> > (To allow a roll fix into the tree).
> >
> > This reverts commit edf702204be42c945254191f9f9cd6585b3d189b.
> >
> > R=halcanary@google.com
> >
> > Committed: https://code.google.com/p/skia/source/detail?r=13748
>
> TBR=halcanary@google.com ,fmalita@chromium.org
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: http://code.google.com/p/skia/source/detail?r=13754
R=halcanary@google.com , fmalita@chromium.org
TBR=fmalita@chromium.org , halcanary@google.com
NOTREECHECKS=true
NOTRY=true
Author: fmalita@google.com
Review URL: https://codereview.chromium.org/197553002
git-svn-id: http://skia.googlecode.com/svn/trunk@13765 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 15:08:22 +00:00
commit-bot@chromium.org
9e5f85e89d
Fixing SkPicture serialization
...
Fixed a few issues while attempting to use the new
serialization path for SkPicture inside a fuzzer:
- SkReadBuffer and SkValidatingReadBuffer both had a fReader
member instead of sharing the same member, which leads to
problems if a base class function is used
- In SkPicture, a header is now written as a single chunk of
data, so it also has to be read as a single chunk of data
- In the SkPicturePlayback destructor, a bad deserialization
would lead to a crash if we don't safely unref fOpData
- Also in SkPicturePlayback, if we only use a ReadBuffer for
the whole deserialization, additional tags must be added to
parseBufferTag()
- SkValidatingReadBuffer::readBitmap() was broken, but this
path wasn't usen't since the only use case for
SkValidatingReadBuffer is currently image filters and
bitmaps are unflattened as part of the deserialization of
SkBitmapSource
- SkPictureImageFilter was not deserializable. Added it to
SkGlobalInitialization*
- Added a test that exercises the SkPicture serialization /
deserialization code
BUG=skia:
R=senorblanco@google.com , senorblanco@chromium.org , reed@google.com , robertphillips@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/195223003
git-svn-id: http://skia.googlecode.com/svn/trunk@13764 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 14:46:41 +00:00
commit-bot@chromium.org
79fbb40bca
[WIP] Add Context to SkDrawLooper.
...
SkDrawLooper carries some state during draws. This CL extracts this state into
a separate class Context, which is then passed by the users of SkDrawLooper
into the appropriate methods.
This is a step towards making SkDrawLooper immutable.
BUG=skia:2141
R=scroggo@google.com , reed@google.com , sugoi@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/155513012
git-svn-id: http://skia.googlecode.com/svn/trunk@13760 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 09:42:01 +00:00
bungeman@google.com
ad07e69d4c
Revert the rest of r13757.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13759 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 04:00:25 +00:00
bungeman@google.com
e60ae2eca3
Revert 13757.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13758 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 03:46:48 +00:00
bungeman@google.com
3258a5348b
Fix (1 << 31) to (1u << 31) in SkOTTable_OS_2.
...
When ints are 32 bits, (1 << 31) is undefined.
R=reed@google.com
Review URL: https://codereview.chromium.org/189093020
git-svn-id: http://skia.googlecode.com/svn/trunk@13757 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 03:13:48 +00:00
commit-bot@chromium.org
2cccf83326
make onReadPixels protected and have default impl (so we can remove chrome override)
...
R=reed@google.com
TBR=bsalomon@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/196543004
git-svn-id: http://skia.googlecode.com/svn/trunk@13756 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 03:04:08 +00:00
skia.committer@gmail.com
0b70816eb1
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13755 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 03:02:18 +00:00
commit-bot@chromium.org
4fcd92d0bf
Revert of Revert "De-virtualize SkCanvas save/restore." ( https://codereview.chromium.org/194923008/ )
...
Reason for revert:
Re-landing after roll fix.
Original issue's description:
> Revert "De-virtualize SkCanvas save/restore."
>
> (To allow a roll fix into the tree).
>
> This reverts commit edf702204be42c945254191f9f9cd6585b3d189b.
>
> R=halcanary@google.com
>
> Committed: https://code.google.com/p/skia/source/detail?r=13748
R=halcanary@google.com , fmalita@chromium.org
TBR=fmalita@chromium.org , halcanary@google.com
NOTREECHECKS=true
NOTRY=true
Author: fmalita@google.com
Review URL: https://codereview.chromium.org/196323003
git-svn-id: http://skia.googlecode.com/svn/trunk@13754 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 23:47:35 +00:00
commit-bot@chromium.org
e63306df4d
Only set USE_ANDROID_NDK_CPU_FEATURES if it's not already been explicitly set
...
R=djsollen@google.com , reed@google.com
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/189263015
git-svn-id: http://skia.googlecode.com/svn/trunk@13750 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 22:57:21 +00:00
commit-bot@chromium.org
c169f44460
fix build error in chromium
...
NOTREECHECKS=true
NOTRY=true
R=fmalita@google.com , jvanverth@google.com , fmalita@chromium.org
TBR=fmalita@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/195223004
git-svn-id: http://skia.googlecode.com/svn/trunk@13749 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 21:50:00 +00:00
fmalita@google.com
f1292bc01f
Revert "De-virtualize SkCanvas save/restore."
...
(To allow a roll fix into the tree).
This reverts commit edf702204be42c945254191f9f9cd6585b3d189b.
R=halcanary@google.com
Review URL: https://codereview.chromium.org/194923008
git-svn-id: http://skia.googlecode.com/svn/trunk@13748 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 21:46:56 +00:00
fmalita@google.com
80b10518a2
De-virtualize SkCanvas save/restore.
...
This moves the state management logic into non-virtual SkCanvas methods,
and turns the virtuals into protected notifiers.
R=robertphillips@google.com , reed@google.com
Review URL: https://codereview.chromium.org/194713008
git-svn-id: http://skia.googlecode.com/svn/trunk@13747 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 21:04:41 +00:00
robertphillips@google.com
53ba425c91
Drop executable flag from headers so that they can be packaged
...
https://codereview.chromium.org/194883004/
git-svn-id: http://skia.googlecode.com/svn/trunk@13746 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 19:55:51 +00:00
senorblanco@chromium.org
06342a2666
Fix SkOffsetImageFilter to use a temporary for bounds computations.
...
SkOffsetImageFilter::onFilterBounds() was writing to *dst, and later
referring to src. These may be the same memory location, so the results
were incorrect.
Covered by the 5th test case in offsetimagefilter.
BUG=skia:
Review URL: https://codereview.chromium.org/195163004
git-svn-id: http://skia.googlecode.com/svn/trunk@13744 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 18:29:42 +00:00
bsalomon@google.com
de9f251427
Fix radical assumption that 0.5 in double is exactly convertible to float.
...
BUG=skia:2181
Review URL: https://codereview.chromium.org/195423002
git-svn-id: http://skia.googlecode.com/svn/trunk@13742 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 17:09:17 +00:00
commit-bot@chromium.org
b97c3ffddf
Enable use of distance fields via SkPaint flag.
...
Now that distance field generation is fast enough to make it practical, this makes distances field fonts easily available to anyone who wants to try them out (i.e Chromium).
BUG=skia:2173
R=reed@google.com , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/193163003
git-svn-id: http://skia.googlecode.com/svn/trunk@13741 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 17:07:15 +00:00
commit-bot@chromium.org
8065ec50f1
Add new module for distance field generation.
...
This improves the speed over the previous method by 10x+, and makes using distance fields practical.
BUG=skia:2173
Committed: http://code.google.com/p/skia/source/detail?r=13729
R=bsalomon@google.com , robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/178543007
git-svn-id: http://skia.googlecode.com/svn/trunk@13740 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 15:57:40 +00:00
commit-bot@chromium.org
c5c748c147
Handle rrects with one circular corner and three square corners in GrRRectEffect.
...
BUG=skia:2181
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/193263002
git-svn-id: http://skia.googlecode.com/svn/trunk@13739 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 15:54:51 +00:00
commit-bot@chromium.org
821397018f
plumbing for GPU fast blur
...
BUG=skia:2281
R=bsalomon@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/193193002
git-svn-id: http://skia.googlecode.com/svn/trunk@13735 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 22:53:20 +00:00
commit-bot@chromium.org
a477154cfc
plumb API for analytic rrect blur
...
BUG=skia:2281
R=bsalomon@google.com , reed@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/189663012
git-svn-id: http://skia.googlecode.com/svn/trunk@13733 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 21:42:06 +00:00
commit-bot@chromium.org
b5f3b35645
Revert of Add new module for distance field generation. ( https://codereview.chromium.org/178543007/ )
...
Reason for revert:
multiple compile errors
Original issue's description:
> Add new module for distance field generation.
>
> This improves the speed over the previous method by 10x+, and makes using distance fields practical.
>
> BUG=skia:2173
>
> Committed: http://code.google.com/p/skia/source/detail?r=13729
R=bsalomon@google.com , robertphillips@google.com , jvanverth@google.com
TBR=bsalomon@google.com , jvanverth@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2173
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/190753015
git-svn-id: http://skia.googlecode.com/svn/trunk@13732 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 20:37:54 +00:00
reed@google.com
b93ba45b58
flag to make kClipToLayer_SaveFlag the default behavior
...
#define SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG to get the old behavior
The goal is to remove the feature of saveLayer that allows the canvas to draw outside of the top-most layer.
R=robertphillips@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/190723004
git-svn-id: http://skia.googlecode.com/svn/trunk@13730 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:47:58 +00:00
commit-bot@chromium.org
bf99824083
Add new module for distance field generation.
...
This improves the speed over the previous method by 10x+, and makes using distance fields practical.
BUG=skia:2173
R=bsalomon@google.com , robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/178543007
git-svn-id: http://skia.googlecode.com/svn/trunk@13729 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 19:38:51 +00:00
commit-bot@chromium.org
d7e0fbef5d
Pulling these out of other reviews so avoid code review clutter.
...
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/192783002
git-svn-id: http://skia.googlecode.com/svn/trunk@13724 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 16:41:00 +00:00
commit-bot@chromium.org
dd58422b4b
Use bitfield rather than distinct enum types for circular corners in RRectEffect.
...
BUG=skia:2181
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/191613003
git-svn-id: http://skia.googlecode.com/svn/trunk@13723 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 16:08:22 +00:00
commit-bot@chromium.org
8f58b85bfb
remove legacy ifdef wrapping fast blur
...
BUG=skia:
R=robertphillips@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/192833002
git-svn-id: http://skia.googlecode.com/svn/trunk@13722 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 16:05:57 +00:00
commit-bot@chromium.org
cac5fd597f
Factory methods for heap-allocated SkImageFilter objects.
...
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.
This patch makes the constructors of SkImageFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.
BUG=skia:2187
R=scroggo@google.com , mtklein@chromium.org , reed@google.com , senorblanco@google.com , senorblanco@chromium.org , bsalomon@google.com , sugoi@chromium.org , zork@chromium.org
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/182983003
git-svn-id: http://skia.googlecode.com/svn/trunk@13718 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 10:51:58 +00:00
commit-bot@chromium.org
b471a32460
Add API for GrContext to recommend rendertarget sample count
...
Add GrContext::getRecommendedSampleCount method that can be
used to determine which GPU backend and what exact sample count
is recommendeded for a particular render target at particular
dpi.
Make this initially recommend 4xMSAA for contexts which have
NVPR enabled if dpi is 250 or more, 16 if dpi is less than 250
and no MSAA for others.
BUG=chromium:347962
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/188403003
git-svn-id: http://skia.googlecode.com/svn/trunk@13717 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 07:40:03 +00:00
commit-bot@chromium.org
5c70cdca5e
hide getTotalClip, so we can eventually remove it
...
hide getClipType, so we can eventually remove it
patch from issue 189443007
TBR=robertphilips@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/189883010
git-svn-id: http://skia.googlecode.com/svn/trunk@13715 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-08 03:57:19 +00:00
skia.committer@gmail.com
e62513fb92
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13714 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-08 03:02:06 +00:00
commit-bot@chromium.org
e5a041c068
Implement the clip as 4 or fewer GrEffects when possible.
...
BUG=skia:2181
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/188693008
git-svn-id: http://skia.googlecode.com/svn/trunk@13710 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 19:43:43 +00:00
commit-bot@chromium.org
8c2ee59635
Once Chromium starts holding on to paths and we can actually reuse cached path data (e.g., masks & geometry) we will need a way to preserve that reuse in the skps. This CL begins adding that capability. More analysis & profiling needs to be done before it is always enabled.
...
When enabled it does make the disabled path de-duping test in the Canvas unit test pass.
BUG=skia:507
R=bsalomon@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/190923002
git-svn-id: http://skia.googlecode.com/svn/trunk@13709 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 18:42:15 +00:00
commit-bot@chromium.org
8016f79cfc
This is just the first version and shows how I intend to orchestrate this. Future enhancements will:
...
track the portion of the bitmap required
track any resizing that might be required
actually preload something
R=bsalomon@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/187833003
git-svn-id: http://skia.googlecode.com/svn/trunk@13704 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 15:53:01 +00:00
commit-bot@chromium.org
210a6aa8bd
getFactory() must return a factory.
...
BUG=348821
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/190843002
git-svn-id: http://skia.googlecode.com/svn/trunk@13702 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 14:52:09 +00:00
commit-bot@chromium.org
7fc2228795
Fix underlying issue causing crbug.com/348821.
...
SkDashPathEffect refuses to flatten itself if it thinks it's a no-op. This
messes with the assumption that flattening a non-NULL effect and then
unflattening from those bytes produces a non-NULL effect. I'd rather make that
assumption always be true than save a few bytes for rare nonsense path effects.
BUG=348821
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/189643002
git-svn-id: http://skia.googlecode.com/svn/trunk@13701 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 14:43:00 +00:00
commit-bot@chromium.org
fe089b383a
SSE2 implementation of S32A_D565_Opaque_Dither
...
Run benchmarks with command line option "--forceDither true --forceBlend
1", almost all the benchmarks exercised S32A_D565_Opaque_Dither can get
about 20%-70% performance improvement.
Here are the data on i7-3770:
before after
verts 4314.81 3627.64 15.93%
constXTile_MM_filter_trans 1434.22 432.82 69.82%
constXTile_CC_filter_trans_scale 1440.17 437.00 69.66%
constXTile_RR_filter_trans 1436.96 431.93 69.94%
constXTile_MM_trans_scale 1436.33 435.77 69.66%
constXTile_CC_trans 1433.12 431.36 69.90%
constXTile_RR_trans_scale 1436.13 436.06 69.64%
constXTile_MM_filter 1411.55 408.06 71.09%
constXTile_CC_filter_scale 1416.68 414.18 70.76%
constXTile_RR_filter 1429.46 409.81 71.33%
constXTile_MM_scale 1415.00 412.56 70.84%
constXTile_CC 1410.32 408.36 71.04%
constXTile_RR_scale 1413.26 413.16 70.77%
repeatTile_4444_A 1922.01 879.03 54.27%
repeatTile_4444_A 1430.68 818.34 42.80%
repeatTile_4444_X 1817.43 816.63 55.07%
maskshader 5911.09 5895.46 0.26%
gradient_create_alpha 4.41 4.41 -0.15%
gradient_conical_clamp_3color 35298.71 27574.34 21.88%
gradient_conical_clamp_hicolor 35262.15 27538.99 21.90%
gradient_conical_clamp 35276.21 27599.80 21.76%
gradient_radial2_mirror 20846.74 12969.39 37.79%
gradient_radial2_clamp_hicolor 21848.12 13967.57 36.07%
gradient_radial2_clamp 21829.95 13978.57 35.97%
bitmap_4444_A_scale_rotate_bicubic 105.31 87.13 17.26%
bitmap_4444_A_scale_bicubic 73.69 47.76 35.20%
bitmap_4444_update_scale_rotate_bilerp 125.65 87.86 30.08%
bitmap_4444_update_volatile_scale_rotate_bilerp 125.50 87.65 30.16%
bitmap_4444_scale_rotate_bilerp 124.46 87.91 29.37%
bitmap_4444_A_scale_rotate_bilerp 105.09 87.27 16.96%
bitmap_4444_update_scale_bilerp 106.78 63.28 40.74%
bitmap_4444_update_volatile_scale_bilerp 106.66 63.66 40.32%
bitmap_4444_scale_bilerp 106.70 63.19 40.78%
bitmap_4444_A_scale_bilerp 83.05 62.25 25.04%
bitmap_a8 98.11 52.76 46.22%
bitmap_a8_A 98.24 52.85 46.20%
BUG=
R=mtklein@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/179443003
git-svn-id: http://skia.googlecode.com/svn/trunk@13699 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 13:24:42 +00:00
commit-bot@chromium.org
275804782f
SSE2 implementation of S32_D565_Opaque_Dither
...
Run benchmarks with command line option "--forceDither true". The result
shows that all benchmarks exercised S32_D565_Opaque_Dither benefit from
this SSE2 optimization. Here are the data on i7-3770:
before after
constXTile_MM_filter 900.93 217.75 75.83%
constXTile_CC_filter_scale 907.59 225.65 75.14%
constXTile_RR_filter 903.33 219.41 75.71%
constXTile_MM_scale 902.45 221.46 75.46%
constXTile_CC 898.55 218.37 75.70%
constXTile_RR_scale 902.69 222.35 75.37%
repeatTile_4444_X 938.53 240.49 74.38%
gradient_radial2_mirror 16999.49 11540.39 32.11%
gradient_radial2_clamp_hicolor 17943.38 12501.71 30.33%
gradient_radial2_clamp 17816.36 12492.04 29.88%
bitmaprect_FF_filter_trans 47.81 10.98 77.03%
bitmaprect_FF_nofilter_trans 47.79 10.91 77.18%
bitmaprect_FF_filter_identity 47.74 10.89 77.18%
bitmaprect_FF_nofilter_identity 47.83 10.89 77.24%
bitmap_4444_update_scale_rotate_bilerp 100.45 76.84 23.50%
bitmap_4444_update_volatile_scale_rotate_bilerp 100.80 76.70 23.91%
bitmap_4444_scale_rotate_bilerp 100.43 77.18 23.15%
bitmap_4444_update_scale_bilerp 79.00 49.03 37.93%
bitmap_4444_update_volatile_scale_bilerp 78.90 48.87 38.06%
bitmap_4444_scale_bilerp 78.92 48.81 38.16%
bitmap_4444_update 42.19 11.53 72.68%
bitmap_4444_update_volatile 42.28 11.49 72.82%
bitmap_a8 60.37 29.75 50.72%
bitmap_4444 42.19 11.52 72.69%
BUG=
R=mtklein@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/181293002
git-svn-id: http://skia.googlecode.com/svn/trunk@13698 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 03:25:32 +00:00
commit-bot@chromium.org
4cd9e2169e
Add SkCanvas::writePixels that takes info+pixels directly
...
add corresponding methods to device (w/ diff name to avoid colliding with exising virtuals)
BUG=skia:
R=bsalomon@google.com , robertphillips@google.com , junov@google.com , junov@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/180113010
git-svn-id: http://skia.googlecode.com/svn/trunk@13697 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 03:25:16 +00:00
commit-bot@chromium.org
a5572e5bb2
Add a class to allocate small objects w/o extra calls to new.
...
Add SkSmallAllocator, a template for allocating small (as defined by the
instantiation) objects without extra calls to new. Add a helper macro to
make using it simple.
Remove SkTemplatesPriv.h, whose behavior is replaced by SkSmallAllocator.
The old SK_PLACEMENT_NEW had the following drawbacks:
- Easily confused with SkNEW_PLACEMENT.
- Requires passing around lots of void*s along with the storageSize.
- Requires using a separate class for deleting it.
- We had multiple ways Auto objects for deleting in different places.
- It always did a straight heap allocation on Windows, meaning Windows
did not get any advantages from the confusing code.
The new SkSmallAllocator simplifies things:
- It is clear about what it does.
- It takes care of the deletion in one place that is automatically
handled.
Further, the new class can be used to create more than one object. This
is in preparation for BUG=skia:1976, for which we would like to create
a new object without extra heap allocations. The plan is to create both
the blitter and the new object on the stack using the SkSmallAllocator.
Add a new test for SkSmallAllocator.
SkShader.h:
Move the private version of CreateBitmapShader to SkBitmapProcShader
(which already has the implementation) and remove the friend class
(which was only used to call this private function). This allows
SkSmallAllocator to reside in the private src/ directory.
SkBitmapProcShader:
Move CreateBitmapShader and the macro for the storage size here. With
the macro in a (private) header, the (private) headers with function
declarations (which now depend on the storage size used) can see the
macro.
Use SkSmallAllocator in CreateBitmapShader.
Change the macro to kBlitterStorageByteCount, since SkSmallAllocator
takes a byte count as its template parameter.
SkBlitter:
Use the SkSmallAllocator.
Remove Sk3DShader::fKillProc and SkAutoCallProc. Both of their
behaviors have been moved into SkSmallAllocator (SkAutoCallProc was
unnecessary anyway, because the only time we ever used it we also
called detach(), so its auto behavior never happened).
Create the Sk3DShader on the stack, if there's room.
Remove the helper version of Choose, which was unused.
SmallAllocatorTest:
Test for the new class.
The rest:
Use SkSmallAllocator.
BUG=skia:1976
R=reed@google.com , mtklein@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/179343005
git-svn-id: http://skia.googlecode.com/svn/trunk@13696 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 03:24:41 +00:00
commit-bot@chromium.org
06e9752521
Add debug check of chunk size written to skp
...
R=mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/182153003
git-svn-id: http://skia.googlecode.com/svn/trunk@13692 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 20:53:44 +00:00
commit-bot@chromium.org
e597e7b5c8
Remove MCRec.fNext
...
No longer used.
R=reed@google.com , mtklein@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/186973004
git-svn-id: http://skia.googlecode.com/svn/trunk@13690 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 19:56:58 +00:00
commit-bot@chromium.org
0438645c72
Actually, we wrote only size bytes.
...
BUG=skia:
R=halcanary@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/188343004
git-svn-id: http://skia.googlecode.com/svn/trunk@13688 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 19:23:51 +00:00
commit-bot@chromium.org
d10913b8a9
Avoid recomputing two consecutive identical 1D filters.
...
If the arguments to the X and Y filter computation are identical,
the results will be identical; copying is much faster than recomputing.
With a change like https://codereview.chromium.org/183763047/ applied
this speeds up BitmapScaleBench on Linux by around 10%.
BUG=skia:2236
R=humper@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/188743002
git-svn-id: http://skia.googlecode.com/svn/trunk@13687 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 19:10:44 +00:00
commit-bot@chromium.org
490fb6b471
Add size_t bytesWritten() const to SkWStream.
...
BUG=skia:
R=reed@google.com , mtklein@google.com , robertphillips@google.com , bungeman@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/187653003
git-svn-id: http://skia.googlecode.com/svn/trunk@13684 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 17:16:26 +00:00
rmistry@google.com
d7a9fcc61f
Revert of Manually set fFilterValues in SkConvolutionFilter1D
...
Revert of https://codereview.chromium.org/184323003
Reason for revert:
Caused unexpected CompareGM failures-
http://108.170.217.252:10117/builders/Test-Win8-ShuttleA-GTX660-x86_64-Debug/builds/461/steps/CompareGMs/logs/stdio
http://108.170.217.252:10117/builders/Test-Win7-ShuttleA-HD2000-x86_64-Release/builds/2062/steps/CompareGMs/logs/stdio
http://108.170.217.252:10117/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/1400/steps/CompareGMs/logs/stdio
TBR=
NOTREECHECKS=True
NOTRY=True
git-svn-id: http://skia.googlecode.com/svn/trunk@13683 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 15:37:53 +00:00
commit-bot@chromium.org
fd5c9a6e04
Begin making SkPerlinNoiseShader const.
...
The overall goal is to make SkShader itself immutable (BUG=skia:1976).
The fields cannot yet be made constant, due to the constructor which
takes an SkReadBuffer. Other than that constructor, the fields are now
unchanged.
Remove setTileSize and initPaint. Merge initPaint with the constructor
of PaintingData, since it is only ever used on a new PaintingData.
Merge setTileSize with the SkPerlinNoiseShader constructor, its only
call site.
BUG=skia:1976
R=reed@google.com , sugoi@google.com , dominikg@chromium.org , senorblanco@google.com , senorblanco@chromium.org
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/169973002
git-svn-id: http://skia.googlecode.com/svn/trunk@13682 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 15:13:53 +00:00
commit-bot@chromium.org
5b70e7e2df
Manually set fFilterValues in SkConvolutionFilter1D.
...
Using fFilterValues.reset() or a loop of fFilterValues.push_back() is about 5x slower than calling fFilterValues.resize_back() and then looping using primitive [] and =.
This is only going to show up if you apply https://codereview.chromium.org/183763047/ , where it yields about 2.5% speedup in the bitmap resize microbenchmarks on a Linux desktop. Ceteris paribus, it should actually improve rasterization time of drawBitmapRectToRect() with a resize by about 5% in Chromium.
BUG=skia:2258
R=humper@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/184323003
git-svn-id: http://skia.googlecode.com/svn/trunk@13681 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 14:57:46 +00:00
commit-bot@chromium.org
759cf48468
Now that the matching changes have landed in Chromium we can clean up the API on our side.
...
R=reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/187553003
git-svn-id: http://skia.googlecode.com/svn/trunk@13680 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 13:18:07 +00:00
skia.committer@gmail.com
06acb58074
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13679 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-06 03:02:32 +00:00
commit-bot@chromium.org
cabf4b2f36
Unify edge type enums across GrEffect subclasses that clip rendering to a geometry.
...
BUG=skia:
R=egdaniel@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/183893023
git-svn-id: http://skia.googlecode.com/svn/trunk@13674 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 18:27:43 +00:00
commit-bot@chromium.org
dcb8e54ffd
This CL is motivated by the desire to make the skpinfo tool work a bit better. The main concern is that the assumptions made w.r.t. written bytes may not be valid for all SkWStream sub-classes.
...
R=bungeman@gmail.com , bungeman@google.com , reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/182733008
git-svn-id: http://skia.googlecode.com/svn/trunk@13673 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 18:25:20 +00:00
bungeman@google.com
8d79f963b6
Prevent SkBlockMemoryStream::skip from writing to low memory.
...
SkBlockMemoryStream::read was modeled on SkDynamicMemoryWStream::read.
However, SkDynamicMemoryWStream::read does not allow passing a NULL buffer
and SkBlockMemoryStream::read must correctly handle this case for skips.
In the current code, if a 'skip' crosses a block boundary, 'read' may
attempt to write to low memory.
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/187683003
git-svn-id: http://skia.googlecode.com/svn/trunk@13671 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 16:26:14 +00:00
commit-bot@chromium.org
eef834f2be
DM: read image files without an extra copy
...
BUG=skia:
R=halcanary@google.com , reed@google.com , bsalomon@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/185263012
git-svn-id: http://skia.googlecode.com/svn/trunk@13669 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 15:37:11 +00:00
commit-bot@chromium.org
5e4112b33a
Replace scaled bitmap if entry already exist in cache.
...
BUG=skia:2251
R=reed@google.com
Author: reveman@chromium.org
Review URL: https://codereview.chromium.org/185263009
git-svn-id: http://skia.googlecode.com/svn/trunk@13667 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 13:44:18 +00:00
skia.committer@gmail.com
f1f66c0c86
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13665 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 03:02:06 +00:00
commit-bot@chromium.org
fab349c0bf
remove SK_SUPPORT_DEEPCOPYTO_CONFIG code -- no longer used
...
R=reed@google.com
TBR=bsalomon@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/183763035
git-svn-id: http://skia.googlecode.com/svn/trunk@13664 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 02:34:58 +00:00
commit-bot@chromium.org
1f6cf695b3
Counterproposal to 182733007: Add iterator to SkTDynamicHash
...
BUG=skia:
R=egdaniel@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/177263005
git-svn-id: http://skia.googlecode.com/svn/trunk@13663 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 01:00:50 +00:00
commit-bot@chromium.org
e492ac4fb6
Manual revert of https://code.google.com/p/skia/source/detail?r=13353 due to perf regression.
...
BUG=344020
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/187023002
git-svn-id: http://skia.googlecode.com/svn/trunk@13662 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 22:37:29 +00:00
commit-bot@chromium.org
e494dbdec3
The motivation for this CL is to de-clutter SkPicture's beginRecording method.
...
R=reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/186813003
git-svn-id: http://skia.googlecode.com/svn/trunk@13658 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 19:08:57 +00:00
senorblanco@chromium.org
e09244d463
Apply the CTM to the offset in the slow SkOffsetImageFilter path.
...
This was being done in the fast path, but not the slow path.
Since I had to rebaseline the offsetimagefilter GM anyway (to accomodate
the new test case), I added a red border around the intersection
of the (transformed) crop rect and clip rect in each sample, beyond
which no pixels should be drawn.
Chrome bug: https://code.google.com/p/chromium/issues/detail?id=346362
BUG=skia:
R=sugoi@google.com
Review URL: https://codereview.chromium.org/186643003
git-svn-id: http://skia.googlecode.com/svn/trunk@13656 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 19:05:25 +00:00
commit-bot@chromium.org
fbde87f53d
Add GM that directly tests GrRRectEffect and add inverse fill version of effect.
...
BUG=skia:
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/176843016
git-svn-id: http://skia.googlecode.com/svn/trunk@13653 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 16:25:34 +00:00
skia.committer@gmail.com
ade9a3485e
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13651 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 03:02:32 +00:00
commit-bot@chromium.org
1643b2c9bc
This adds cull rect visualization to the debugger's "mega" visualization mode.
...
R=fmalita@google.com , fmalita@chromium.org
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/177423013
git-svn-id: http://skia.googlecode.com/svn/trunk@13649 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 23:25:41 +00:00
commit-bot@chromium.org
5f6ac03b00
Don't emit declaration of gl_FragPos unless also changing the origin.
...
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/182003002
git-svn-id: http://skia.googlecode.com/svn/trunk@13648 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 23:25:26 +00:00
senorblanco@chromium.org
6aa6fec0e3
Cleanup patch to move all of SkImageFilterUtils into SkImageFilter.
...
This was a utility class that dates from before GPU code was allowed
in core. Now that it is, there's no reason not to have this
functionality in SkImageFilter.
Covered by existing tests.
R=reed@google.com
Review URL: https://codereview.chromium.org/185973003
git-svn-id: http://skia.googlecode.com/svn/trunk@13646 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 22:13:56 +00:00
commit-bot@chromium.org
6f4fb0f129
Generating the 1M skps frequently yields truncated skps. This tool is intended to help automate weeding these out.
...
Please see skbug:1057
rmistry for tools, gyp
mtklein for src\core & include\core
BUG=skia:1057
R=rmistry@google.com , mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/176863004
git-svn-id: http://skia.googlecode.com/svn/trunk@13643 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 19:18:39 +00:00
commit-bot@chromium.org
768ac85655
The new "mega" viz mode both adds visualization and forces all drawing to the visible canvas (by replacing the active saveLayers with saves).
...
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/185293007
git-svn-id: http://skia.googlecode.com/svn/trunk@13640 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 16:32:17 +00:00
senorblanco@chromium.org
47d98c8e85
Fix CTM scaling and clipping of SkRectShaderImageFilter.
...
Pass the CTM as part of the local matrix passed by
SkRectShaderImageFilter. Teach SkPerlinNoiseShader to respect the local
matrix. Embiggen imagefiltersscaled GM size to accommodate the new test
cases.
Note: will require rebaselines of imagefiltersscaled and imagefiltersclipped
R=sugoi@chromium.org
BUG=skia:
Review URL: https://codereview.chromium.org/184973007
git-svn-id: http://skia.googlecode.com/svn/trunk@13637 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 14:58:09 +00:00
commit-bot@chromium.org
c9b2c885be
New approach for GPU font atlas
...
In the previous code, each GrTextStrike had exclusive access to one or more GrPlots in the texture atlas. This led to poor packing when only a few glyphs were used. This change allows GrTextStrikes to share GrPlots, thereby getting much better utilization of the entire texture.
BUG=skia:2224
R=robertphillips@google.com , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/177463003
git-svn-id: http://skia.googlecode.com/svn/trunk@13636 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 14:30:25 +00:00
commit-bot@chromium.org
0bc406df48
Adding code to calculate Underline Thickness from Font Metrics, this will be useful when Skia is used with Blink/Chrome. Blink changes are uploaded with code change in patch https://codereview.chromium.org/147703002/
...
BUG=skia:
R=reed@android.com , edisonn@google.com , reed@google.com , mtklein@google.com , mtklein@chromium.org , bungeman@google.com
Author: h.joshi@samsung.com
Review URL: https://codereview.chromium.org/152073003
git-svn-id: http://skia.googlecode.com/svn/trunk@13635 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-01 20:12:26 +00:00
skia.committer@gmail.com
370a89980b
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13634 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-01 03:02:09 +00:00
commit-bot@chromium.org
ef57b7e653
DM: make GPU tasks multithreaded again. Big refactor.
...
The main meat of things is in SkThreadPool. We can now give SkThreadPool a
type for each thread to create and destroy on its local stack. It's TLS
without going through SkTLS.
I've split the DM tasks into CpuTasks that run on threads with no TLS, and
GpuTasks that run on threads with a thread local GrContextFactory.
The old CpuTask and GpuTask have been renamed to CpuGMTask and GpuGMTask.
Upshot: default run of out/Debug/dm goes from ~45 seconds to ~20 seconds.
BUG=skia:
R=bsalomon@google.com , mtklein@google.com , reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/179233005
git-svn-id: http://skia.googlecode.com/svn/trunk@13632 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 20:31:31 +00:00
commit-bot@chromium.org
f535561b3b
Cleanup GrGLInterface after Chromium changes
...
Depends on landing https://codereview.chromium.org/143263014
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/149533002
git-svn-id: http://skia.googlecode.com/svn/trunk@13630 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 20:28:50 +00:00
robertphillips@google.com
8f90a892c5
add new onClip* methods to SkCanvas
...
https://codereview.chromium.org/183453002/
git-svn-id: http://skia.googlecode.com/svn/trunk@13627 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 18:19:39 +00:00
reed@google.com
842292f10f
remove SK_SUPPORT_LEGACY_LAYERDRAWLOOPER_PAINTFLAGS -- not needed
...
BUG=skia:
R=scroggo@google.com
Review URL: https://codereview.chromium.org/180483004
git-svn-id: http://skia.googlecode.com/svn/trunk@13623 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 15:38:22 +00:00
robertphillips@google.com
03fc3b4f67
Revert of r13620 (add new onClip* methods to SkCanvas - https://codereview.chromium.org/183453002/ ) due to broken Chrome Canary and failing tests.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13622 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 15:28:02 +00:00
commit-bot@chromium.org
d85f32ca40
Make GrConvexPolyEffect support inverse fills and non-AA rects
...
BUG=skia:2151
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/183833003
git-svn-id: http://skia.googlecode.com/svn/trunk@13621 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 14:43:26 +00:00
robertphillips@google.com
392c9be344
add new onClip* methods to SkCanvas
...
https://codereview.chromium.org/183453002/
git-svn-id: http://skia.googlecode.com/svn/trunk@13620 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 14:35:45 +00:00
skia.committer@gmail.com
0e530754d3
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13619 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 03:02:05 +00:00
commit-bot@chromium.org
3107b6a85e
add SkCanvas::NewRaster factory -- a very common use-case in chrome
...
BUG=skia:
R=scroggo@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/183533004
git-svn-id: http://skia.googlecode.com/svn/trunk@13617 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 20:32:51 +00:00
commit-bot@chromium.org
4fcc3ca411
Add GrSet class built on top of RedBlackTree
...
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/176903003
git-svn-id: http://skia.googlecode.com/svn/trunk@13616 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 20:23:22 +00:00
commit-bot@chromium.org
210ae2a426
Culling API
...
*** SKP format breaking change ***
Adding a couple of culling primitives: pushCull(SkRect) & popCull().
These are currently only plumbed for SKP playback quickreject.
At record time, we perform a couple of optimizations to trim down the
number of redundant culls:
* collapse empty pushCull/popCull pairs
* skip pushCull/popCull pairs nested within an identical cull rect
Things still missing/to consider:
* use an inlineable, simplified quickreject (Mike's old prototype)
* debugger visualization for cull boxes
* BBH integration: the initial prototype had some minimal BBH support,
but since the optimizations required expensive rewinds and culling
is expected to be a BBH alternative, it got dropped.
R=bsalomon@google.com , reed@google.com , robertphillips@google.com , caryclark@google.com , tomhudson@google.com , iancottrell@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/138013009
git-svn-id: http://skia.googlecode.com/svn/trunk@13611 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 17:40:13 +00:00
commit-bot@chromium.org
6f954b956f
Use SkTLazy to hold path in SkClipStack::Element
...
R=reed@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/178583002
git-svn-id: http://skia.googlecode.com/svn/trunk@13610 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 17:39:46 +00:00
reed@google.com
48f31bdbb3
try to deprecate fFlagsMask from SkLayerDrawLooper
...
We think we want to move around how flags/fields like linearText and strikeThru
are specified. SkPaint has helpers for nearly all of these, but LayerInfo in
the draw looper just exposes the raw bitfield.
On survey of chrome/android, it appears that no one uses those, so it may be
safe to just remove the feature entirely from the looper.
R=bungeman@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/181433009
git-svn-id: http://skia.googlecode.com/svn/trunk@13607 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 14:27:44 +00:00
commit-bot@chromium.org
d957984c1e
Factory methods for heap-allocated SkAnnotation objects.
...
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.
This patch makes the constructors of SkAnnotation non-public and instead
provides factory methods for creating these objects on the heap.
BUG=skia:2187
R=reed@google.com , mtklein@google.com , scroggo@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/181703003
git-svn-id: http://skia.googlecode.com/svn/trunk@13605 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-27 11:47:36 +00:00
commit-bot@chromium.org
c530208ab0
Add point count to lua SkPath.
...
Add some scripts for classifying rrects and counting complex clip combinations.
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/181843004
git-svn-id: http://skia.googlecode.com/svn/trunk@13601 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 21:38:47 +00:00
commit-bot@chromium.org
5007aab81a
Upstream changes from Android
...
R=scroggo@google.com , reed@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/176963003
git-svn-id: http://skia.googlecode.com/svn/trunk@13600 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 21:35:17 +00:00
bsalomon@google.com
4ebe382188
Revert "Revert of Add getReducedClipStack to lua canvas ( https://codereview.chromium.org/180283004/ )"
...
This reverts commit efded03a38d6147caaf2d951638d27fdd47eed64.
Fixes builds
Review URL: https://codereview.chromium.org/181903002
git-svn-id: http://skia.googlecode.com/svn/trunk@13599 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 20:22:32 +00:00
commit-bot@chromium.org
1caedbb216
Revert of Add getReducedClipStack to lua canvas ( https://codereview.chromium.org/180283004/ )
...
Reason for revert:
breaking a bunch of builds
Original issue's description:
> Add getReducedClipStack to lua canvas
>
> Committed: http://code.google.com/p/skia/source/detail?r=13594
R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/181653004
git-svn-id: http://skia.googlecode.com/svn/trunk@13597 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 18:32:44 +00:00
commit-bot@chromium.org
a47ac2bcc2
Add getReducedClipStack to lua canvas
...
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/180283004
git-svn-id: http://skia.googlecode.com/svn/trunk@13594 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 17:50:08 +00:00
commit-bot@chromium.org
f792a1b207
Builder class for SkLayerRasterizer.
...
Provide builder class to make SkLayerRasterizer immutable. We have to keep the
addLayer() methods for now because they are used in Chrome. They will be removed
once this changed has been rolled into Chrome.
An added benefit of this is that this class can only be allocated on the heap.
BUG=skia:2187
R=reed@google.com , scroggo@google.com , mtklein@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/176873004
git-svn-id: http://skia.googlecode.com/svn/trunk@13590 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 13:27:37 +00:00
commit-bot@chromium.org
88a954335a
Enable the SSSE3 files to be built for Android when SSSE3 is not present.
...
Committed: http://code.google.com/p/skia/source/detail?r=13547
R=reed@google.com , mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/169753004
git-svn-id: http://skia.googlecode.com/svn/trunk@13583 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-25 18:14:08 +00:00
commit-bot@chromium.org
fe68eb6a40
ARM Skia NEON patches - 25 - S32A_D565_Opaque_Dither clean/bugfix/speed
...
BlitRow565: S32A_D565_Opaque_Dither: some improvements
- Supports ARGB and ABGR
- Less magic numbers
- Reduced instruction count : 5-25% speedup
- Fixed indentation, removed some commented and useless code
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=skia:
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit@arm.com
Review URL: https://codereview.chromium.org/177963003
git-svn-id: http://skia.googlecode.com/svn/trunk@13577 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-25 10:54:32 +00:00
skia.committer@gmail.com
90667ba5eb
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13576 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-25 03:05:18 +00:00
commit-bot@chromium.org
e8d9614cd1
This is intended to make it easier for us to be backwards compatible.
...
R=reed@google.com , bsalomon@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/178383003
git-svn-id: http://skia.googlecode.com/svn/trunk@13575 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-25 02:16:10 +00:00
commit-bot@chromium.org
d85b822616
Add some SkPath lua functions
...
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/178243002
git-svn-id: http://skia.googlecode.com/svn/trunk@13572 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 21:59:29 +00:00
reed@google.com
754de5f65b
add isClipEmpty() -- encourage clients to call this rather than checking clipFoo() results
...
BUG=skia:
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/177073006
git-svn-id: http://skia.googlecode.com/svn/trunk@13568 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 19:38:20 +00:00
commit-bot@chromium.org
5cc25359c6
Add getClipStack method to lua SkCanvas
...
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/177933003
git-svn-id: http://skia.googlecode.com/svn/trunk@13567 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 18:59:48 +00:00
commit-bot@chromium.org
3d305207bd
Add DRRect to debugger
...
R=reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/177683003
git-svn-id: http://skia.googlecode.com/svn/trunk@13565 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 17:28:55 +00:00
commit-bot@chromium.org
6c5f1fd66c
I believe this makes it clearer what is going on; namely:
...
saveLayers cause their enclosing MC state to become a prefix for their child canvas calls. In such cases we don't want to inadvertently close the nesting MC state but when we do (i.e., when the saveLayer's restore is seen) we want to also restore the nesting MC state to be the current one.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/176413002
git-svn-id: http://skia.googlecode.com/svn/trunk@13564 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 17:24:15 +00:00
senorblanco@chromium.org
e74e08c1d0
Fix compile errors in legacy copyTo().
...
R=reed@google.com , reed
Review URL: https://codereview.chromium.org/178003002
git-svn-id: http://skia.googlecode.com/svn/trunk@13562 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 15:51:15 +00:00
senorblanco@chromium.org
89f077ced4
Fix saveLayer() clipping w/filters, GPU path.
...
Don't modify the clipstack in saveLayer() if the kClipToLayer_SaveFlag is
not set. Without this the GPU path will clip the offscreen to the layer's
bounds, even if the flag is not set.
R=robertphillips@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/164203002
git-svn-id: http://skia.googlecode.com/svn/trunk@13561 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 15:16:42 +00:00
reed@google.com
e9336aa216
use colortypes instead of bitmap::config
...
BUG=skia:
Review URL: https://codereview.chromium.org/177823002
git-svn-id: http://skia.googlecode.com/svn/trunk@13558 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 13:13:26 +00:00
commit-bot@chromium.org
6ebfbf9968
Use vertex buffer objects instead of client side arrays in fixed-function codepaths
...
Pass vertices to the fixed-function shaders in vertex buffer object
stored at attribute 0. This is specified in OpenGL Compatibility
Profile Section 10.8.2 (Transferring Vertices With Vertex Attribute
Zero).
This makes future integration to Chromium command buffer better, since
the command buffer already has code for vertex buffer objects but not
vertex arrays.
Delete unused function pointers related to fixed-function codepaths.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/130423013
git-svn-id: http://skia.googlecode.com/svn/trunk@13557 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 12:05:02 +00:00
commit-bot@chromium.org
39ce33a1fa
SSE2 implementation of S32_D565_Opaque
...
Benchmarks hitting this path can benfit from this patch.
Here are the data:
before after
gradient_radial2_mirror 10885.52 10849.48 0.33%
gradient_radial2_clamp_hicolor 11819.69 11644.83 1.48%
gradient_radial2_clamp 11816.10 11649.91 1.41%
bitmaprect_FF_filter_trans 6.27 4.88 22.17%
bitmaprect_FF_nofilter_trans 6.27 4.88 22.17%
bitmaprect_FF_filter_identity 6.31 4.86 22.98%
bitmaprect_FF_nofilter_identity 6.25 4.86 22.24%
bitmap_4444_update 6.26 5.05 19.33%
bitmap_4444_update_volatile 6.21 5.06 18.52%
bitmap_4444 6.22 5.06 18.65%
BUG=
R=mtklein@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/172083003
git-svn-id: http://skia.googlecode.com/svn/trunk@13556 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 04:23:39 +00:00
skia.committer@gmail.com
86cbf99a51
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13555 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 03:01:55 +00:00
commit-bot@chromium.org
8a2ad3cae7
add new copyTo version to SkBitmap, which takes SkColorType
...
BUG=skia:
R=scroggo@google.com , halcanary@google.com , bsalomon@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/171723007
git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-23 03:59:35 +00:00
skia.committer@gmail.com
7911ade991
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13551 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-22 03:02:18 +00:00
commit-bot@chromium.org
7b4edb249b
Revert of Enable the SSSE3 files to be built for Android when SSSE3 is not present. ( https://codereview.chromium.org/169753004/ )
...
Reason for revert:
Breaking the build.
Non-android machines are calling sk_throw().
Original issue's description:
> Enable the SSSE3 files to be built for Android when SSSE3 is not present.
>
> Committed: http://code.google.com/p/skia/source/detail?r=13547
R=reed@google.com , mtklein@google.com , djsollen@google.com
TBR=djsollen@google.com , mtklein@google.com , reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/175543004
git-svn-id: http://skia.googlecode.com/svn/trunk@13549 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 23:11:35 +00:00
commit-bot@chromium.org
cb3672ed7f
Add effect-based clipping for circular "tab" style rrects.
...
BUG=skia:2181
R=jvanverth@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/175423002
git-svn-id: http://skia.googlecode.com/svn/trunk@13548 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 22:41:56 +00:00
commit-bot@chromium.org
32d58e662c
Enable the SSSE3 files to be built for Android when SSSE3 is not present.
...
R=reed@google.com , mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/169753004
git-svn-id: http://skia.googlecode.com/svn/trunk@13547 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 22:35:45 +00:00
commit-bot@chromium.org
283ce52572
Fix error on iOS native interface
...
NOTREECHECK=True
NOTRY=True
R=bsalomon@google.com
TBR=bsalomon@google.com
BUG=skia:
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/175913002
git-svn-id: http://skia.googlecode.com/svn/trunk@13546 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 22:21:17 +00:00
commit-bot@chromium.org
4324c3ba70
Fix warnings on Ubuntu13
...
Turn off warnings when building libwebp.
Turn off warnings when building libjpeg.
Initialize some variables immediately.
NOTRY=True
NOTREECHECKS=True
BUG=skia:2213
BUG=skia:2214
R=bsalomon@google.com , halcanary@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/175383002
git-svn-id: http://skia.googlecode.com/svn/trunk@13545 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 20:11:42 +00:00
commit-bot@chromium.org
032a52fd4c
Use SkRRect to store rects in SkClipStack::Element
...
BUG=skia:2181
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/163483003
git-svn-id: http://skia.googlecode.com/svn/trunk@13544 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 20:09:13 +00:00
commit-bot@chromium.org
374ea4ee26
ARM Skia NEON patches - 12 - S32_Blend
...
Blitrow32: S32_Blend fix and little speed improvement
- the results are now exactly similar as the C code
- the speed has improved, especially for small values of count
+-------+-----------+------------+
| count | Cortex-A9 | Cortex-A15 |
+-------+-----------+------------+
| 1 | +30% | +18% |
+-------+-----------+------------+
| 2 | 0 | 0 |
+-------+-----------+------------+
| 4 | - <1% | +14% |
+-------+-----------+------------+
| > 4 | -0.5..+5% | -0.5..+4% |
+-------+-----------+------------+
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=skia:
Committed: http://code.google.com/p/skia/source/detail?r=13532
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit@arm.com
Review URL: https://codereview.chromium.org/158973002
git-svn-id: http://skia.googlecode.com/svn/trunk@13543 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 19:49:17 +00:00
commit-bot@chromium.org
def6468dd2
Stub for conic section max curvature
...
BUG=skia:
R=reed@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/175193003
git-svn-id: http://skia.googlecode.com/svn/trunk@13542 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 19:49:10 +00:00
commit-bot@chromium.org
b988276362
Fix for ANGLE interface error
...
NOTREECHECKS=True
NOTRY=True
R=bsalomon@google.com
TBR=bsalomon@google.com
BUG=skia:
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/165673003
git-svn-id: http://skia.googlecode.com/svn/trunk@13541 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 19:46:21 +00:00
commit-bot@chromium.org
727a352f74
Factory methods for heap-allocated SkColorFilter objects.
...
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.
This patch makes the constructors of SkColorFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.
BUG=skia:2187
R=scroggo@google.com , mtklein@google.com , reed@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/175293002
git-svn-id: http://skia.googlecode.com/svn/trunk@13539 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 18:46:30 +00:00
commit-bot@chromium.org
a3baf3be0e
Add hooks for GL_EXT_debug_marker in gpu
...
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/174123003
git-svn-id: http://skia.googlecode.com/svn/trunk@13538 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 18:45:30 +00:00
commit-bot@chromium.org
aca1c01f3b
Merge tomhudson and mtklein SkPaint shrinking approaches.
...
I think this is cherry picking the best parts of both our CLs. We've got dirty bit tracking from Tom's, picture format stability from Mike's, etc. Paints are typically 1/3 their original size when flattened in the dictionary.
bench_record on my desktop looks promising. Generally, looks faster. (Best in monospace.)
a/b skp before after
0.83 desk_techcrunch.skp 0.29 0.24
0.83 tabl_gamedeksiam.skp 0.52 0.43
0.87 desk_carsvg.skp 0.4 0.35
0.87 desk_googlehome.skp 0.038 0.033
0.87 desk_pokemonwiki.skp 3.9 3.4
0.88 desk_fontwipe.skp 0.0089 0.0078
0.88 desk_googlespreadsheet.skp 0.16 0.14
0.89 desk_jsfiddlebigcar.skp 0.027 0.024
0.89 desk_tigersvg.skp 0.038 0.034
0.89 desk_weather.skp 0.19 0.17
0.89 tabl_engadget.skp 0.37 0.33
0.89 tabl_googleblog.skp 0.28 0.25
0.9 desk_facebook.skp 0.2 0.18
0.91 desk_mapsvg.skp 0.45 0.41
0.91 desk_youtube.skp 0.22 0.2
0.92 desk_forecastio.skp 0.12 0.11
0.92 desk_googlespreadsheetdashed.skp 0.49 0.45
0.92 desk_gws.skp 0.13 0.12
0.92 desk_pinterest.skp 0.037 0.034
0.92 desk_twitter.skp 0.25 0.23
0.92 tabl_culturalsolutions.skp 0.26 0.24
0.92 tabl_gspro.skp 0.072 0.066
0.92 tabl_mercurynews.skp 0.26 0.24
0.93 desk_booking.skp 0.46 0.43
0.93 desk_chalkboard.skp 0.28 0.26
0.93 desk_linkedin.skp 0.14 0.13
0.93 desk_mobilenews.skp 0.28 0.26
0.93 tabl_cuteoverload.skp 0.46 0.43
0.93 tabl_deviantart.skp 0.15 0.14
0.93 tabl_gmail.skp 0.029 0.027
0.93 tabl_googlecalendar.skp 0.15 0.14
0.93 tabl_mlb.skp 0.15 0.14
0.94 desk_blogger.skp 0.18 0.17
0.94 desk_jsfiddlehumperclip.skp 0.034 0.032
0.94 desk_wordpress.skp 0.33 0.31
0.94 desk_wowwiki.skp 0.94 0.88
0.94 desk_yahooanswers.skp 0.17 0.16
0.94 desk_youtubetvvideo.skp 0.017 0.016
0.94 tabl_sahadan.skp 0.093 0.087
0.94 tabl_worldjournal.skp 0.35 0.33
0.95 desk_css3gradients.skp 0.21 0.2
0.95 desk_gmailthread.skp 0.19 0.18
0.95 tabl_cnet.skp 0.42 0.4
0.95 tabl_mozilla.skp 1.9 1.8
0.95 tabl_pravda.skp 0.19 0.18
0.96 mobi_wikipedia.skp 0.55 0.53
0.96 tabl_cnn.skp 0.48 0.46
0.96 tabl_nofolo.skp 0.05 0.048
0.97 desk_googleplus.skp 0.29 0.28
0.97 tabl_frantzen.skp 0.059 0.057
0.97 tabl_onlinewsj.skp 0.38 0.37
0.97 tabl_slashdot.skp 0.1 0.097
0.97 tabl_vnexpress.skp 0.29 0.28
0.99 desk_amazon.skp 0.088 0.087
1 desk_baidu.skp 0.097 0.099
1 desk_ebay.skp 0.18 0.18
1 desk_espn.skp 0.24 0.24
1 desk_oldinboxapp.skp 0.026 0.026
1 desk_rectangletransition.skp 0.014 0.014
1 desk_samoasvg.skp 0.23 0.24
1 desk_yahoogames.skp 0.029 0.029
1 desk_yahoosports.skp 0.0033 0.0033
1 desk_youtubetvbrowse.skp 0.01 0.01
1 tabl_androidpolice.skp 0.65 0.65
1 tabl_digg.skp 0.33 0.33
1 tabl_hsfi.skp 0.32 0.32
1 tabl_nytimes.skp 0.22 0.22
1 tabl_techmeme.skp 0.069 0.072
1 tabl_ukwsj.skp 0.35 0.35
1.1 desk_sfgate.skp 0.25 0.28
BUG=skia:2190,skia:2194
Committed: http://code.google.com/p/skia/source/detail?r=13487
Committed: http://code.google.com/p/skia/source/detail?r=13496
R=tomhudson@google.com , reed@google.com , mtklein@google.com , robertphillips@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/158913005
git-svn-id: http://skia.googlecode.com/svn/trunk@13536 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 18:18:05 +00:00
commit-bot@chromium.org
e5280893f8
Hide GrRRectEffect class from header
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/175233002
git-svn-id: http://skia.googlecode.com/svn/trunk@13535 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 17:52:29 +00:00
commit-bot@chromium.org
5b92499f8f
Revert of ARM Skia NEON patches - 12 - S32_Blend ( https://codereview.chromium.org/158973002/ )
...
Reason for revert:
Breaking the build.
See http://108.170.219.164:10117/builders/Build-Ubuntu12-GCC-Arm7-Debug-Nexus4/builds/2966 (and others).
We are getting warnings that vsrc and vdst may be uninitialized. Please fix and resubmit.
Original issue's description:
> ARM Skia NEON patches - 12 - S32_Blend
>
> Blitrow32: S32_Blend fix and little speed improvement
>
> - the results are now exactly similar as the C code
> - the speed has improved, especially for small values of count
>
> +-------+-----------+------------+
> | count | Cortex-A9 | Cortex-A15 |
> +-------+-----------+------------+
> | 1 | +30% | +18% |
> +-------+-----------+------------+
> | 2 | 0 | 0 |
> +-------+-----------+------------+
> | 4 | - <1% | +14% |
> +-------+-----------+------------+
> | > 4 | -0.5..+5% | -0.5..+4% |
> +-------+-----------+------------+
>
> Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=13532
R=djsollen@google.com , mtklein@google.com , kevin.petit@arm.com
TBR=djsollen@google.com , kevin.petit@arm.com , mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/175433002
git-svn-id: http://skia.googlecode.com/svn/trunk@13534 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 17:52:17 +00:00
robertphillips@google.com
fc4ded9f4a
Fix saveLayer bugs in SkMatrixClipStateMgr
...
https://codereview.chromium.org/169283011/
git-svn-id: http://skia.googlecode.com/svn/trunk@13533 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 17:46:37 +00:00
commit-bot@chromium.org
dfff2737f8
ARM Skia NEON patches - 12 - S32_Blend
...
Blitrow32: S32_Blend fix and little speed improvement
- the results are now exactly similar as the C code
- the speed has improved, especially for small values of count
+-------+-----------+------------+
| count | Cortex-A9 | Cortex-A15 |
+-------+-----------+------------+
| 1 | +30% | +18% |
+-------+-----------+------------+
| 2 | 0 | 0 |
+-------+-----------+------------+
| 4 | - <1% | +14% |
+-------+-----------+------------+
| > 4 | -0.5..+5% | -0.5..+4% |
+-------+-----------+------------+
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=skia:
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit@arm.com
Review URL: https://codereview.chromium.org/158973002
git-svn-id: http://skia.googlecode.com/svn/trunk@13532 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 17:40:35 +00:00
commit-bot@chromium.org
197fea2d18
Potential fix for array bounds warning.
...
BUG=skia:2123
R=caryclark@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/164753003
git-svn-id: http://skia.googlecode.com/svn/trunk@13531 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 15:27:49 +00:00
commit-bot@chromium.org
ab5827354e
override new virtual onDrawDRRect in util canvas subclasses
...
BUG=skia:
R=robertphillips@google.com , reed@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/174593003
git-svn-id: http://skia.googlecode.com/svn/trunk@13529 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 12:20:45 +00:00
commit-bot@chromium.org
b39d5617f6
update for coding style, remove explicit floats
...
BUG=skia:
R=reed@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/174683002
git-svn-id: http://skia.googlecode.com/svn/trunk@13528 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 12:17:34 +00:00
commit-bot@chromium.org
7c9d0f3104
Factory methods for heap-allocated SkMaskFilter objects.
...
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.
This patch makes the constructors of SkMaskFilter and its subclasses non-public
and instead provides factory methods for creating these objects on the heap. We
temporarily keep constructor of publicly visible classes public behind a flag.
BUG=skia:2187
R=scroggo@google.com , mtklein@google.com , reed@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/173633003
git-svn-id: http://skia.googlecode.com/svn/trunk@13527 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 10:13:32 +00:00
commit-bot@chromium.org
0b45dc45d6
fix the visual difference of raster vs gpu -- inverse_paths
...
If a path has no verbs, it is empty. If a path has verbs, but both the width and height of the bounds are zero. the path is empty too. This situation happens when you add an empty rect or circle... , say a rect{x, y, width, height} = {100, 100, 0, 0}, to a path.
For 8888 config, drawPath() checked the bounds.
For gpu config, it doesn't.
BUG=skia:2176
R=reed@google.com , bsalomon@google.com , schenney@chromium.org
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/166023002
git-svn-id: http://skia.googlecode.com/svn/trunk@13526 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 05:42:57 +00:00
skia.committer@gmail.com
25c7127c90
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@13525 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 03:02:02 +00:00
commit-bot@chromium.org
ed9806f5c9
add SkCanvas::drawDRRect
...
BUG=skia:
R=bsalomon@google.com , robertphillips@google.com , humper@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/174243003
git-svn-id: http://skia.googlecode.com/svn/trunk@13524 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-21 02:32:36 +00:00
commit-bot@chromium.org
0a097ea91c
Fix bug in deferred decoding where we don't properly pass the unpremul option to the codec.
...
R=reed@google.com , scroggo@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/172873003
git-svn-id: http://skia.googlecode.com/svn/trunk@13521 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 21:04:40 +00:00
reed@google.com
900ecf2f15
use colortype instead of config
...
patch from issue 172063004
BUG=skia:
R=scroggo@google.com
Review URL: https://codereview.chromium.org/173893002
git-svn-id: http://skia.googlecode.com/svn/trunk@13520 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 20:55:37 +00:00