sugoi@google.com
b48a59ae81
Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.
...
BUG=
R=reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=12114
Review URL: https://codereview.chromium.org/41253002
git-svn-id: http://skia.googlecode.com/svn/trunk@12119 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 20:28:23 +00:00
reed@google.com
ac9d306a92
speed up A8 by creating a new entry-point in SkDraw that blits the path's coverage directly into an A8 target, regardless of the previous pixel values.
...
R=bsalomon@google.com , mtklein@google.com
Review URL: https://codereview.chromium.org/56453002
git-svn-id: http://skia.googlecode.com/svn/trunk@12118 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 20:10:33 +00:00
epoger@google.com
eb221268ab
Revert r12114 due to https://code.google.com/p/skia/issues/detail?id=1794 ('Assertion failures on various buildbots as of r12114')
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12115 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 18:06:12 +00:00
sugoi@google.com
305f78e8c1
Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.
...
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/41253002
git-svn-id: http://skia.googlecode.com/svn/trunk@12114 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 16:18:15 +00:00
senorblanco@chromium.org
fe2faa8b16
Change SkBlurImageFilter to use fixed-point division. Yields ~1.8X speedup on
...
MacBookPro.
Note: this will require defining SK_DISABLE_BLUR_DIVISION_OPTIMIZATION in
Chrome, a la https://codereview.chromium.org/49973005 .
R=mtklein@google.com
Review URL: https://codereview.chromium.org/57513002
git-svn-id: http://skia.googlecode.com/svn/trunk@12113 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-04 16:07:33 +00:00
robertphillips@google.com
d998bec918
Fix for Chromium-side compilation complaint:
...
src/pathops/SkIntersectionHelper.h:10:13: error: #if with no expression
git-svn-id: http://skia.googlecode.com/svn/trunk@12108 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-03 13:40:34 +00:00
skia.committer@gmail.com
f54ad6f488
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12101 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-02 07:02:02 +00:00
robertphillips@google.com
32700ace30
Reverting r12082 (Add bevel-stroke support in GrAARectRenderer) due to GM failures
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12091 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 19:22:42 +00:00
caryclark@google.com
a2bbc6e19d
pathops work in progress
...
BUG=
Review URL: https://codereview.chromium.org/52653002
git-svn-id: http://skia.googlecode.com/svn/trunk@12089 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 17:36:03 +00:00
reed@google.com
f0784bde75
Revert "Avoid re-rendering stencil clip for every draw with reducable clip stack"
...
This reverts commit 92a7d4bf6a371f1f864154be902e8d86938e560b.
Revert "fix mac 10.6 build"
This reverts commit 114cd1a9f2734aaed6914718814364811b78bd7f.
BUG=
Review URL: https://codereview.chromium.org/54543008
git-svn-id: http://skia.googlecode.com/svn/trunk@12087 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 16:25:59 +00:00
commit-bot@chromium.org
f91aaecbe9
Construct round rects with perpendicular tangents.
...
The round rects are constructed as before out of quadratics,
but without fudging the control points. Instead, the mid on-
curve point is nudged slightly outward to prevent the
convexity test from failing.
The convexity test now includes an error term for sign
inequality after computing the cross product of the control
lines. When the control points are represented as vectors,
the number of bits of precision may be greatly reduced.
Account for this by passing the number of bits available
from the original control point values into the equality
check.
Making round rect construction lines perpendicular improves
the chances of success when path ops encounters clips.
No new tests are needed -- this change is exercised by the
convex Path unit tests and the gm tests arcofzorro and
hairlines.
R=robertphillips@google.com , reed@google.com
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/48783002
git-svn-id: http://skia.googlecode.com/svn/trunk@12085 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 15:24:55 +00:00
commit-bot@chromium.org
679eb674fc
Avoid re-rendering stencil clip for every draw with reducable clip stack
...
Fixes the cases where clip stack reduction would cause clip to be
re-rendered to stencil for each draw call. This causes unneeded
slowdown.
Stencil cache would not be used because the clip stack generation id communicated
by the clip stack element list would be invalid. This happended due to
a) clip stack reduction creating new elements in the element list.
b) purging logic removing the generation id, but reduction logic
selecting already purged element, and thus the generation id, as
the representative state of the clip.
Cases of a) where reduction would flatten the stack to a single new
element were fixed by assigning the generation id of the top-most
element of the clip stack as the generation id of the new
element. This is not strictly minimal, but enables more caching than
using invalid id.
Cases of a) where reduction would substitute a stack element with a
new element the generation id of the substituted element is used.
The b) part was fixed by removing the purging logic. It was not
exactly correct, as the previously purged states were actually
used. The purging was not used for anything.
Changes SkClipStack API to highlight that invalid generation id is
never returned by SkClipStack. Empty stacks are wide open. Changes the
clients to reflect this.
Fixes a crash when not passing anti-alias out parameter to
GrReducedClip::ReduceClipStack. The crash is not exercised in the
current code.
R=bsalomon@google.com , robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/48593003
git-svn-id: http://skia.googlecode.com/svn/trunk@12084 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 15:24:20 +00:00
commit-bot@chromium.org
5c8ee2539b
Make GrContext cache the gpu paths
...
Creating paths for nv_path_rendering is costly. Try to reduce this
cost by caching paths based on the SkPath "hash" (i.e. SkPathRef
generation id) and stroke properties.
Adds the paths to GrContext::fTextureCache instance. Later this should
be renamed and the GrContext API should reflect the nature of the cache
better.
R=bsalomon@google.com , mtklein@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/26557003
git-svn-id: http://skia.googlecode.com/svn/trunk@12083 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 15:23:44 +00:00
commit-bot@chromium.org
e1e99ef0af
Add bevel-stroke support in GrAARectRenderer
...
R=robertphillips@google.com , bsalomon@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/23712005
git-svn-id: http://skia.googlecode.com/svn/trunk@12082 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 15:23:17 +00:00
robertphillips@google.com
8995b7b626
Only disable scratch texture reuse on the N10 and N4
...
https://codereview.chromium.org/48903017/
git-svn-id: http://skia.googlecode.com/svn/trunk@12080 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 15:03:34 +00:00
reed@google.com
2bd8b81005
move SkImage::ColorType into SkColorType
...
objective -- move clients over to SkImage
tasks
- use SkImageInfo instead of SkBitmap::Config
- add support for colortables to SkImage
- add drawImage to SkCanvas
- return SkImage from readPixels
This CL works towards the first task
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/54363008
git-svn-id: http://skia.googlecode.com/svn/trunk@12077 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 13:46:54 +00:00
commit-bot@chromium.org
f2f8f3a43c
Adding a way to disable SkOffsetImageFilter's optimized path in blink/chrome
...
BUG=
R=senorblanco@chromium.org , reed@google.com , sugoi@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/54543005
git-svn-id: http://skia.googlecode.com/svn/trunk@12075 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 11:55:06 +00:00
commit-bot@chromium.org
2080722493
Fix two inconsistencies in handling fixed-function texture coordinate set generation
...
Prevent off-by-one bug leaving the texture coordinate set 0 always enabled if
it ever was used. This makes the code consistent with its apparent purpose.
When enabling / disabling texture coordinate sets, call glPathTexGen
only if path rendering is applicable. This makes the functions
consistent with GrGpuGL::resetContext.
R=cdalton@nvidia.com , bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/54403003
git-svn-id: http://skia.googlecode.com/svn/trunk@12074 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 11:54:54 +00:00
skia.committer@gmail.com
18bb41e956
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12071 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 07:02:15 +00:00
robertphillips@google.com
3b60c14e66
Fix for r12069 (actually turn on don't-reuse-scratch-textures feature)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12070 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 01:55:40 +00:00
robertphillips@google.com
f7ee05fa9d
Turn on don't-reuse-scratch-textures for all Android devices
...
https://codereview.chromium.org/54493005/
git-svn-id: http://skia.googlecode.com/svn/trunk@12069 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 00:40:47 +00:00
robertphillips@google.com
56ce48ade3
Add can-ignore-rect hint to clear call
...
https://codereview.chromium.org/53823003/
git-svn-id: http://skia.googlecode.com/svn/trunk@12064 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 21:44:25 +00:00
commit-bot@chromium.org
3843f3fc89
Partial fix for Skia issue 1769: GenerateGMs crashing (out of memory)
...
GenerateGMs was crashing because we were adding genID listeners for
textures even when creation failed -- in this case the key generated
is not valid, so when it comes time to purge it, it triggers an
assert and then an apparent crash. The solution is to not add
a genID listener in this case.
This doesn't solve the problem of running out of memory, it just prevents it
from causing a crash in Debug builds.
BUG=
R=bsalomon@google.com , robertphillips@google.com , mtklein@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/55023005
git-svn-id: http://skia.googlecode.com/svn/trunk@12062 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 20:22:47 +00:00
commit-bot@chromium.org
0251288112
Adding size parameter to read array functions
...
In some cases, the allocated array into which the data will be read is using getArrayCount() to allocate itself, which should be safe, but some cases use fixed length arrays or compute the array size before reading, which could overflow if the stream is compromised.
To prevent that from happening, I added a check that will verify that the number of bytes to read will not exceed the capacity of the input buffer argument passed to all the read...Array() functions.
I chose to use the byte array for this initial version, so that "size" represents the same value across all read...Array() functions, but I could also use the element count, if it is preferred.
Note : readPointArray and writePointArray are unused, so I could also remove them
BUG=
R=reed@google.com , mtklein@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/37803002
git-svn-id: http://skia.googlecode.com/svn/trunk@12058 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 18:37:50 +00:00
reed@google.com
4469938e92
Revert "Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning""
...
This reverts commit 1e787c38fa71f2a21fd728f1b1d620b9b09b0d3d.
BUG=
Review URL: https://codereview.chromium.org/54603004
git-svn-id: http://skia.googlecode.com/svn/trunk@12057 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 17:28:30 +00:00
reed@google.com
6fcbfcead5
Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning"
...
This reverts commit 1d22c4aaf9d8f053f25194a1ed74b137bfb19497.
git-svn-id: http://skia.googlecode.com/svn/trunk@12056 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 16:31:11 +00:00
reed@google.com
081560e3ab
add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning
...
BUG=
R=robertphillips@google.com , senorblanco@chromium.org , vandebo@chromium.org
Review URL: https://codereview.chromium.org/51033004
git-svn-id: http://skia.googlecode.com/svn/trunk@12055 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 16:24:08 +00:00
robertphillips@google.com
94bdd7e3fc
Fix bug in don't-reuse-scratch-textures path
...
https://codereview.chromium.org/50853003/
git-svn-id: http://skia.googlecode.com/svn/trunk@12054 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 15:50:43 +00:00
skia.committer@gmail.com
7ed98df9ba
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12043 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 07:01:53 +00:00
robertphillips@google.com
cb505101a2
No longer use scratch textures on ARM devices
...
https://codereview.chromium.org/50643003/
git-svn-id: http://skia.googlecode.com/svn/trunk@12042 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-31 00:51:18 +00:00
senorblanco@chromium.org
f49a0955e2
Mac build fix.
...
TBR=robertphillips
Review URL: https://codereview.chromium.org/45963007
git-svn-id: http://skia.googlecode.com/svn/trunk@12039 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 22:14:24 +00:00
senorblanco@chromium.org
7a47ad3bac
Implement SSE2-based implementations of the morphology filters (dilate & erode). This gives a 3-5X speedup over the naive implementation, and also mitigates a timing-based security attack in Chrome ( https://code.google.com/p/chromium/issues/detail?id=251711 ).
...
NOTE: this will require a corresponding GYP change on the Skia roll into Chrome: https://codereview.chromium.org/52453004/
R=mtklein@google.com , reed@google.com
Review URL: https://codereview.chromium.org/52603004
git-svn-id: http://skia.googlecode.com/svn/trunk@12038 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 21:57:04 +00:00
robertphillips@google.com
2d2e5c4e24
Make not-reusing-scratch-textures only apply to texture uploads
...
https://codereview.chromium.org/53133002/
git-svn-id: http://skia.googlecode.com/svn/trunk@12037 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 21:30:43 +00:00
vandebo@chromium.org
fd3c8c243a
Fix int/SkScalar mismatch.
...
Review URL: https://codereview.chromium.org/51043005
git-svn-id: http://skia.googlecode.com/svn/trunk@12035 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 21:00:47 +00:00
vandebo@chromium.org
3b416216d1
[PDF] Improve complex xfer mode support.
...
Xfer mode applies only to the shape of the source drawing, not everything in the clip as in currently implemented. It's just that the current gm examples draw a shape that fills the visible layer.
R=edisonn@google.com , reed@google.com
Review URL: https://codereview.appspot.com/4631078
git-svn-id: http://skia.googlecode.com/svn/trunk@12034 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 20:48:05 +00:00
commit-bot@chromium.org
c9424b8e6d
Don't check if shaders compile or program links in release Chromium
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/52843003
git-svn-id: http://skia.googlecode.com/svn/trunk@12032 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 20:03:16 +00:00
commit-bot@chromium.org
1ab9f737f0
Use SkPathRef gen id for SkPath::getGenerationID
...
R=mtklein@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/49693002
git-svn-id: http://skia.googlecode.com/svn/trunk@12029 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 18:57:55 +00:00
reed@google.com
4db592c408
remove contains(x,y) for rects and rrects ... not well defined, and unused
...
BUG=
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/51953003
git-svn-id: http://skia.googlecode.com/svn/trunk@12022 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 17:39:43 +00:00
robertphillips@google.com
4e5559af89
Allow specifying the max texture count on the bots
...
https://codereview.chromium.org/50413011/
git-svn-id: http://skia.googlecode.com/svn/trunk@12020 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 17:04:16 +00:00
reed@google.com
35fe7372b1
prototype for kerning api
...
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/29363009
git-svn-id: http://skia.googlecode.com/svn/trunk@12018 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 15:07:03 +00:00
skia.committer@gmail.com
b77f0f4ae5
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12013 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-30 07:01:56 +00:00
robertphillips@google.com
7101abe5b3
Reverting r12010 (Use SkPathRef gen id for SkPath::getGenerationID https://codereview.chromium.org/49693002 ) due to test failures in PathTest on Android
...
git-svn-id: http://skia.googlecode.com/svn/trunk@12012 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 22:45:37 +00:00
commit-bot@chromium.org
4cc7518d9b
Use SkPathRef gen id for SkPath::getGenerationID
...
R=mtklein@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/49693002
git-svn-id: http://skia.googlecode.com/svn/trunk@12010 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 21:34:55 +00:00
commit-bot@chromium.org
658e28b081
Remove SkMatrix44 float conversions without precision loss
...
BUG=none
R=reed@google.com
Author: enne@chromium.org
Review URL: https://codereview.chromium.org/50423004
git-svn-id: http://skia.googlecode.com/svn/trunk@12009 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 21:08:51 +00:00
commit-bot@chromium.org
950923b437
All SkAnnotations are no-draw. Propose we fold that through.
...
BUG=
R=edisonn@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/48523008
git-svn-id: http://skia.googlecode.com/svn/trunk@12008 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 20:44:39 +00:00
commit-bot@chromium.org
89ff3dd5af
Little changes to SkAnnotation in pipe:
...
- store size in the op data field rather than separately (saves 4 bytes);
- trim out a malloc/memcpy in each of read and write;
- remove unused enum value;
- use the right _unpackOp function;
- make sure we call needOpBytes().
BUG=
R=reed@google.com , scroggo@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/50523004
git-svn-id: http://skia.googlecode.com/svn/trunk@12007 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 20:29:38 +00:00
commit-bot@chromium.org
7585479202
Allow SkLazyPixelRef to use SkScaledImageCache
...
- SkScaledImageCache:
- Add new FindAndLock/AddAndLock variants that work well with
SkLazyPixelRefs (take width, height, generation_id).
- Add static versions of these new variants.
- SkLazyPixelRef:
- If NULL passed in as SkImageCache* in the constructor, it will
now default to using the static SkScaledImageCache methods to
cache decoded images.
- If (fImageCache==NULL), the default allocator can be changed
with the setAllocator method. If (fImageCache!=NULL), the
SkImageCache handles allocation.
- CachedDecodingPixelRefTest to test the new functionality.
BUG=
R=scroggo@google.com , mtklein@google.com , reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/37343002
git-svn-id: http://skia.googlecode.com/svn/trunk@12006 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 19:55:00 +00:00
commit-bot@chromium.org
40258a5be9
Fix pipe/annotation.
...
We weren't keeping track of the annotation that's on the other side of the pipe.
BUG=skia:1761
R=scroggo@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/48273011
git-svn-id: http://skia.googlecode.com/svn/trunk@12004 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 19:23:26 +00:00
commit-bot@chromium.org
602b9608f5
Get rid of two unused variables from the .data section.
...
Before:
$ objdump -x out/Release/libskia_opts.a | grep "\.data" | c++filt
1 .data 00000000 0000000000000000 0000000000000000 000004ec 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000f58 2**2
0000000000000000 l d .data 0000000000000000 .data
2 .data 00000008 0000000000000000 0000000000000000 00001774 2**2
0000000000000000 l d .data 0000000000000000 .data
0000000000000000 g O .data 0000000000000004 debug_x
0000000000000004 g O .data 0000000000000004 debug_y
1 .data 00000000 0000000000000000 0000000000000000 00001d8c 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000054 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 000001f0 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000044 2**2
0000000000000000 l d .data 0000000000000000 .data
After:
$ objdump -x out/Release/libskia_opts.a | grep "\.data" | c++filt
1 .data 00000000 0000000000000000 0000000000000000 000004ec 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000f58 2**2
0000000000000000 l d .data 0000000000000000 .data
2 .data 00000000 0000000000000000 0000000000000000 00001774 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00001d8c 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000054 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 000001f0 2**2
0000000000000000 l d .data 0000000000000000 .data
1 .data 00000000 0000000000000000 0000000000000000 00000044 2**2
0000000000000000 l d .data 0000000000000000 .data
Not sure why clang didn't catch them.
R=mtklein@google.com
BUG=
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/50013002
git-svn-id: http://skia.googlecode.com/svn/trunk@11999 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 15:32:09 +00:00
robertphillips@google.com
9ef0426e7c
Don't reuse scratch textures patch
...
https://codereview.chromium.org/24222004/
git-svn-id: http://skia.googlecode.com/svn/trunk@11997 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 14:06:15 +00:00
robertphillips@google.com
0b7ab3bb49
Fix bug in erosion filtering
...
https://codereview.chromium.org/50813002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11996 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 13:59:31 +00:00
skia.committer@gmail.com
70402c3168
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11992 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 07:01:50 +00:00
commit-bot@chromium.org
8ab77eae2c
Fix narrowing conversion errors from r11986
...
Although this function only gets used for SkMScalar=float, it gets
compiled in when SkMScalar=double.
R=epoger@google.com
BUG=1764
Author: enne@chromium.org
Review URL: https://codereview.chromium.org/49463005
git-svn-id: http://skia.googlecode.com/svn/trunk@11991 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 22:05:41 +00:00
commit-bot@chromium.org
c01ba70afc
Remove float/double conversions from SkMatrix44's map2_pf
...
BUG=chromium:303811
R=reed@google.com
Author: enne@chromium.org
Review URL: https://codereview.chromium.org/37693004
git-svn-id: http://skia.googlecode.com/svn/trunk@11986 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 20:20:54 +00:00
commit-bot@chromium.org
77e079af1a
Enabling validation code in serialization and adding serialization to fuzzer
...
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11968
R=reed@google.com , mtklein@google.com , senorblanco@chromium.org , bsalomon@google.com , robertphillips@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/44573002
git-svn-id: http://skia.googlecode.com/svn/trunk@11981 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 15:52:02 +00:00
commit-bot@chromium.org
42a895730f
Fix for issue 1728: raster vs. gpu text draws with the wrong color
...
The blend mode for LCD text was not set up correctly when using colors with alpha. This takes the color's alpha value
into account when setting up the blending function.
BUG=Skia:1728
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/45363002
git-svn-id: http://skia.googlecode.com/svn/trunk@11980 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 15:13:50 +00:00
commit-bot@chromium.org
da3d69ce71
Fix broken MSAA for RGBA
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/46763003
git-svn-id: http://skia.googlecode.com/svn/trunk@11979 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 15:09:13 +00:00
robertphillips@google.com
3721ee652a
Reverting r11968 (Enabling validation code in serialization and adding serialization to fuzzer - https://codereview.chromium.org/44573002 ) due to failure on Chromium AllQuads test.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11974 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-28 12:08:52 +00:00
commit-bot@chromium.org
b2e9fa5298
Clean up the GrTHashTable API.
...
removeAt() and slowFindIndex() were only used by GrFontCache, and didn't really need to exist: they can be replaced by a simple remove() call. This new code should actually be faster; slowFindIndex() was O(N), and this should be O(lg N).
BUG=
R=bsalomon@google.com , jvanverth@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/43383006
git-svn-id: http://skia.googlecode.com/svn/trunk@11973 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-27 20:50:23 +00:00
skia.committer@gmail.com
0673efeea2
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11969 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-26 07:01:53 +00:00
commit-bot@chromium.org
d25d6c7b8e
Enabling validation code in serialization and adding serialization to fuzzer
...
BUG=
R=reed@google.com , mtklein@google.com , senorblanco@chromium.org , bsalomon@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/44573002
git-svn-id: http://skia.googlecode.com/svn/trunk@11968 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-25 21:04:40 +00:00
bungeman@google.com
10ba006631
Allow users to build on top of, instead of beneath, SkRefCnt.
...
Alternative to r11811.
The Chromium half of this can be seen at https://codereview.chromium.org/40973002/ .
R=reed@google.com
Review URL: https://codereview.chromium.org/40503002
git-svn-id: http://skia.googlecode.com/svn/trunk@11967 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-25 18:40:24 +00:00
bungeman@google.com
72b8cb2320
onCharsToGlyphs to handle non-bmp on Mac.
...
CTFontGetGlyphsForCharacters is a strange API for non-bmp code points.
R=caryclark@google.com
Review URL: https://codereview.chromium.org/43463005
git-svn-id: http://skia.googlecode.com/svn/trunk@11965 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-25 17:49:08 +00:00
commit-bot@chromium.org
7edad87cdc
Compute clipped src rect once in tiled bitmap draws
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/40403002
git-svn-id: http://skia.googlecode.com/svn/trunk@11962 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-25 14:58:12 +00:00
bungeman@google.com
fb1663a0a5
Fix non-bmp in generateCharToGlyph on Mac.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11957 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 22:32:43 +00:00
bungeman@google.com
172c363a68
Add missing braces for r11955.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11956 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 21:50:12 +00:00
bungeman@google.com
3c996f8a15
Implement charToGlyph on remaining ports.
...
R=reed@google.com
Review URL: https://codereview.chromium.org/22859070
git-svn-id: http://skia.googlecode.com/svn/trunk@11955 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 21:39:35 +00:00
bsalomon@google.com
af562b437e
Tile large bitmaps that are clipped.
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/31033002
git-svn-id: http://skia.googlecode.com/svn/trunk@11951 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 17:52:07 +00:00
commit-bot@chromium.org
50a3043194
We want to give SkPixelRef a way to signal over to GrResourceCache that it's become pointless to keep around textures based on that SkPixelRef when its pixels change, so that it can be a good citizen and free those textures.
...
This adds an invalidation listener mechanism to SkPixelRef to let it send this message while still staying ignorant of who's listening.
These messages are tricky to deliver. The SkPixelRefs they originates from and the GrResourceCaches they ultimately end up at may be on different threads; neither class is threadsafe; their object lifetimes are totally independent; it's a many-senders-to-many-receivers relation; and neither codebase should really know about the other.
So I've added a per-message-type global message bus to broadcast messages to threadsafe inboxes. Anyone can post() a message, which will show up in all the inboxes of that type, read whenever the inbox's owner calls poll(). The implementation is _dumb_; it can be improved in several dimensions (inbox size limits, lock-free message delivery) if we find the need.
I took some care to make sure not to send the invalidation message for any SkPixelRef that's sharing a generation ID with another SkPixelRef.
BUG=
R=bsalomon@google.com , scroggo@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26734003
git-svn-id: http://skia.googlecode.com/svn/trunk@11949 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 17:44:27 +00:00
senorblanco@chromium.org
34a849d00d
Fix drawBitmap() of scratch texture.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/40163004
git-svn-id: http://skia.googlecode.com/svn/trunk@11947 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 15:59:31 +00:00
vandebo@chromium.org
ece95c32d5
[PDF] Add unpremultiply support and a GM (try5)
...
This is a resubmit of https://codereview.chromium.org/22831039 which was
reverted because it causes issues on Windows.
BUG=chromium:175548
R=edisonn@google.com
Review URL: https://codereview.chromium.org/37873003
git-svn-id: http://skia.googlecode.com/svn/trunk@11945 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 15:20:00 +00:00
commit-bot@chromium.org
c1cf5c0089
Borrow Android's ARMv6 memory barrier for SkOnce.
...
BUG=skia:1743
R=bungeman@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/34353009
git-svn-id: http://skia.googlecode.com/svn/trunk@11941 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 14:25:22 +00:00
robertphillips@google.com
0255a5d2fe
Minor changes
...
https://codereview.chromium.org/39973004/
git-svn-id: http://skia.googlecode.com/svn/trunk@11940 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 14:03:01 +00:00
commit-bot@chromium.org
ccecbbb2ea
Always create an instance when testing GrEffects for SkXfermode and SkArithmeticMode
...
Previously the TestCreate methods of the effects would create a static
instance and return that for all invocations. This is probably a
copy-paste error going back to initial TestCreate method in r8449. At
that time, the effect was always the same and thus static usage made
sense.
R=bsalomon@google.com , senorblanco@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/39393002
git-svn-id: http://skia.googlecode.com/svn/trunk@11939 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 13:33:32 +00:00
commit-bot@chromium.org
23267ceca2
Fix ModeColorFilterEffect assert during GLProgramsTest
...
Select random filter mode for the test-case until the mode is not
Dst. SkModeColorFilter with Dst mode will not create a
ModeColorFilterEffect, and thus the case is not implemented.
Also changes it so that each call to ModeColorFilterEffect::TestCreate
creates a new GrEffect. Previously only one static effect was ever
created, due to copy-paste error.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/39403002
git-svn-id: http://skia.googlecode.com/svn/trunk@11938 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 13:29:38 +00:00
edisonn@google.com
83d8eda890
PDF: support perspective in simple shaders. (this version does not work well with tilling)
...
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/26389006
git-svn-id: http://skia.googlecode.com/svn/trunk@11937 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 13:19:28 +00:00
commit-bot@chromium.org
ac90d1d0b1
Replacing SkTDArray with SkAutoSTArray to reduce memory allocation overhead in SkTileGrid::search
...
BUG=https://code.google.com/p/skia/issues/detail?id=1735
R=tomhudson@chromium.org
Author: junov@chromium.org
Review URL: https://codereview.chromium.org/35633002
git-svn-id: http://skia.googlecode.com/svn/trunk@11936 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 11:24:38 +00:00
tomhudson@google.com
381010e550
Expose SkPicture::willPlayBackBitmaps()
...
This returns true if (1) the picture has finished recording and
(2) this picture or any picture drawn into it refers to any bitmaps.
It allows clients doing complicated manipulations of the picture to
early-out when there are no bitmaps present.
BUG=303281
R=reed@google.com
git-svn-id: http://skia.googlecode.com/svn/trunk@11935 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 11:12:47 +00:00
skia.committer@gmail.com
583b18a209
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11934 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 07:01:59 +00:00
commit-bot@chromium.org
bbfe4541ef
Apply matrix early in draw bitmap
...
Committed: http://code.google.com/p/skia/source/detail?r=11930
Reverted: https://code.google.com/p/skia/source/detail?r=11932
R=robertphillips@google.com , senorblanco@chromium.org
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/30593003
git-svn-id: http://skia.googlecode.com/svn/trunk@11933 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 01:46:11 +00:00
scroggo@google.com
e9821871ec
Revert "Apply matrix early in draw bitmap"
...
This reverts commit 4c446c8eb50b7a6e6f917fae7b4c4ffe5658a949.
Fix build.
git-svn-id: http://skia.googlecode.com/svn/trunk@11932 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 22:19:06 +00:00
vandebo@chromium.org
ccf6b91a54
Revert "[PDF] Add unpremultiply support and a GM (try4)"
...
This reverts commit r11928
gm seems to crash on windows.
Review URL: https://codereview.chromium.org/38153003
git-svn-id: http://skia.googlecode.com/svn/trunk@11931 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 21:36:43 +00:00
commit-bot@chromium.org
25e5a20e65
Apply matrix early in draw bitmap
...
R=robertphillips@google.com , senorblanco@chromium.org
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/30593003
git-svn-id: http://skia.googlecode.com/svn/trunk@11930 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 21:06:51 +00:00
vandebo@chromium.org
e66d376067
[PDF] Add unpremultiply support and a GM (try4)
...
This is a resubmit of https://codereview.chromium.org/22831039 which was
reverted because it causes issues on Windows (really, release builds).
BUG=chromium:175548
R=edisonn@google.com
Review URL: https://codereview.chromium.org/33493003
git-svn-id: http://skia.googlecode.com/svn/trunk@11928 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 20:17:29 +00:00
senorblanco@chromium.org
1a6382f5e7
Split up SkXfermode::asNewEffectOrCoeff() into asNewEffect(), asCoeff().
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/37593002
git-svn-id: http://skia.googlecode.com/svn/trunk@11926 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 18:41:36 +00:00
commit-bot@chromium.org
d594dbec04
Follow up to serialization validation code
...
1 ) Added check for bool to make sure is it either 0 or 1 and not garbage
2 ) Added more solid kernel size checks in SkMatrixConvolutionImageFilter
3 ) Make sure array size is validated in SkMergeImageFilter
BUG=
R=reed@google.com , mtklein@google.com , senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/23548034
git-svn-id: http://skia.googlecode.com/svn/trunk@11925 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 18:33:18 +00:00
commit-bot@chromium.org
c0b7e10c6a
Initial error handling code
...
I made it as simple as possible. The impact seems minimal and it should do what's necessary to make this code secure.
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11247
R=reed@google.com , scroggo@google.com , djsollen@google.com , sugoi@google.com , bsalomon@google.com , mtklein@google.com , senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11922 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 17:06:21 +00:00
commit-bot@chromium.org
759befb72c
use the supplied matrix instead of the texture w/h div for the bicubic GPU effect
...
BUG=
R=bsalomon@google.com , caryclark@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/37003005
git-svn-id: http://skia.googlecode.com/svn/trunk@11921 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 16:18:50 +00:00
commit-bot@chromium.org
a8aef8bf04
Lighting filter uses input on raster path
...
BUG=
R=senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/35703002
git-svn-id: http://skia.googlecode.com/svn/trunk@11918 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 15:33:44 +00:00
commit-bot@chromium.org
3f80dd5f01
Add support for reading non-rendertarget textures.
...
Also removes rendertarget flag from GrAtlas texture creation (no
longer needed) and re-enables GrFontCache::dump().
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/29263004
git-svn-id: http://skia.googlecode.com/svn/trunk@11917 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 15:32:39 +00:00
mtklein@google.com
338a66481e
TSAN build fix: forgot to pass the address into ANNOTATE_BENIGN_RACE.
...
BUG=
Review URL: https://codereview.chromium.org/37403002
git-svn-id: http://skia.googlecode.com/svn/trunk@11916 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 15:24:27 +00:00
commit-bot@chromium.org
1f81fd6546
SK_ONCE for SkData and SkPathRef
...
Adds SK_ONCE_FRIEND, to allow SK_DEF_ONCE code to be friends with a class. This had to go in include/core to be visible to headers there.
BUG=
R=reed@google.com , bungeman@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26491003
git-svn-id: http://skia.googlecode.com/svn/trunk@11914 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 14:44:08 +00:00
senorblanco@chromium.org
fbcd415aa0
Remove GrContext from SkXfermode::[Aa]sNewEffectOrCoeff() and all subclasses,
...
since it's unused.
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/31853003
git-svn-id: http://skia.googlecode.com/svn/trunk@11913 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 14:03:22 +00:00
commit-bot@chromium.org
a34995e18b
Implement SkColorFilter as a GrGLEffect
...
Adds GrEffect::willUseInputColor() which indicates whether or not the
input color affects the output of the effect. This is needed for
certain Xfermodes, such as kSrc_Mode. For these modes the color filter
will not use the input color.
An effect with GrEffect::willUseInputColor() true will cause all color
or coverage effects before it to be discarded, as their computations
cannot affect the output. In these cases program is marked as having
white input color.
This fixes an assert when Skia is compiled in a mode that prefers
using uniforms instead of attributes for constants. (Flags
GR_GL_USE_NV_PATH_RENDERING or GR_GL_NO_CONSTANT_ATTRIBUTES). Using
attributes hides the problem where the fragment shader does not need
input color for color filters that ignore DST part of the filter. The
assert would be hit when uniform manager tries to bind an uniform which
has been optimized away by the shader compiler.
Adds specific GrGLSLExpr4 and GrGLSLExpr1 classes. This way the GLSL
expressions like "(v - src.a)" can remain somewhat readable in form of
"(v - src.a())". The GrGLSLExpr<typename> template implements the
generic functionality, GrGLSLExprX is the specialization that exposes
the type-safe interface to this functionality.
Also adds operators so that GLSL binary operators of the form
"(float * vecX)" can be expressed in C++. Before only the equivalent
"(vecX * float)" was possible. This reverts the common blending
calculations to more conventional order, such as "(1-a) * c" instead of
"c * (1-a)".
Changes GrGLSLExpr1::OnesStr from 1 to 1.0 in order to preserve the
color filter blending formula string the same (with the exception of
variable name change).
Shaders change in case of input color being needed:
- vec4 filteredColor;
- filteredColor = (((1.0 - uFilterColor.a) * output_Stage0) + uFilterColor);
- fsColorOut = filteredColor;
+ vec4 output_Stage1;
+ { // Stage 1: ModeColorFilterEffect
+ output_Stage1 = (((1.0 - uFilterColor_Stage1.a) * output_Stage0) + uFilterColor_Stage1);
+ }
+ fsColorOut = output_Stage1;
Shaders change in case of input color being not needed:
-uniform vec4 uFilterColor;
-in vec4 vColor;
+uniform vec4 uFilterColor_Stage0;
out vec4 fsColorOut;
void main() {
- vec4 filteredColor;
- filteredColor = uFilterColor;
- fsColorOut = filteredColor;
+ vec4 output_Stage0;
+ { // Stage 0: ModeColorFilterEffect
+ output_Stage0 = uFilterColor_Stage0;
+ }
+ fsColorOut = output_Stage0;
}
R=bsalomon@google.com , robertphillips@google.com , jvanverth@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/25023003
git-svn-id: http://skia.googlecode.com/svn/trunk@11912 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-23 05:42:03 +00:00
bsalomon@google.com
7ce564cccb
Revert "If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance."
...
This reverts commit r11904
Review URL: https://codereview.chromium.org/35543002
git-svn-id: http://skia.googlecode.com/svn/trunk@11909 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-22 16:54:15 +00:00
reed@google.com
c294a97842
if fBitmap is still NULL, return false
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11908 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-22 16:17:29 +00:00
bsalomon@google.com
ad254fee73
If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance.
...
Committed: http://code.google.com/p/skia/source/detail?r=11842
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/23484007
git-svn-id: http://skia.googlecode.com/svn/trunk@11904 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-22 13:19:12 +00:00
skia.committer@gmail.com
db6fa1729a
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11903 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-22 07:02:30 +00:00
robertphillips@google.com
dbbe1d437d
Revert r11880 (Apply matrix early in draw bitmap - https://codereview.chromium.org/30593003 ) due to layout test failure
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11899 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 21:30:49 +00:00
mtklein@google.com
4c2af74078
GrTHashCache -> GrTHashTable
...
The class is Table, but the file's Cache. That's confusing.
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/32523004
git-svn-id: http://skia.googlecode.com/svn/trunk@11898 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 21:04:06 +00:00
scroggo@google.com
5ee18dd201
Image decoder fixes (mostly) around A8.
...
Opaquness:
When decoding Gray to A8 in libpng, set reallyHasAlpha to true
and add a comment why we do not check for the real answer.
Add comments in jpeg decoder explaining why A8 is not opaque.
Fix a bug where an A8 subset is considered to be opaque.
Other fixes:
In SkJPEGImageDecoder, only allocate as much memory as
needed for each source row, based on the input config.
Also pull out common code into a static function.
When performing the check for requiring unpremultiplied colors,
allow A8 to succeed, since that setting should have no effect on
A8.
Add the check for requiring unpremultiplied colors to subset
decoding.
Fix a bug where attempting to sample gray to A8 does not sample.
R=reed@google.com
Review URL: https://codereview.chromium.org/26210007
git-svn-id: http://skia.googlecode.com/svn/trunk@11897 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 20:47:31 +00:00
reed@google.com
114038a2e2
Revert "Revert "cache SkImage::Info calculation in lazypixelref""
...
This reverts commit 81eba32ab10f9210c742938819cf1218be5611c9.
ImageDecoder is changed to allow info to be NULL, since it is an output-only parameter.
R=scroggo@google.com
Review URL: https://codereview.chromium.org/33573002
git-svn-id: http://skia.googlecode.com/svn/trunk@11896 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 20:13:42 +00:00
reed@google.com
e986b221ee
Revert "cache SkImage::Info calculation in lazypixelref"
...
This reverts commit a2537480710aa10b9ab9f8aec98538b79539f47e.
git-svn-id: http://skia.googlecode.com/svn/trunk@11894 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 19:45:38 +00:00
reed@google.com
2590a91b64
cache SkImage::Info calculation in lazypixelref
...
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/28493003
git-svn-id: http://skia.googlecode.com/svn/trunk@11893 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 18:58:17 +00:00
robertphillips@google.com
950b1b079a
Fix out of order destruction error
...
https://codereview.chromium.org/33203002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11888 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 17:37:28 +00:00
commit-bot@chromium.org
8c294900f3
Add DPI stettings to SkDocument::CreatePDF(). Tests will be added in a future cl, once DPI will be used in SkPDFDevice
...
R=reed@google.com , bungeman@google.com , vandebo@chromium.org
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/32233003
git-svn-id: http://skia.googlecode.com/svn/trunk@11886 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 17:14:37 +00:00
commit-bot@chromium.org
4b7d673089
More clang warning fixes.
...
Mostly unused functions and variables removed.
BUG=None
TEST=ninja -C out/Debug most
ninja -C out/Release most
R=bsalomon@google.com , caryclark@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/27933002
git-svn-id: http://skia.googlecode.com/svn/trunk@11884 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 16:41:00 +00:00
commit-bot@chromium.org
f642f8cf90
Magnifier gpu path fix
...
The y axis was inverted for the offset, which should have been computed on the other side of the magnifying rectangle.
BUG=
R=bsalomon@google.com , senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/28273005
git-svn-id: http://skia.googlecode.com/svn/trunk@11883 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 15:59:26 +00:00
commit-bot@chromium.org
8e919add40
Fix GrProgramsTest to not generate tests with too many TexCoord references
...
Make GrProgramsTest check how many texture coordinate sets are
available and select random effects up until the amount runs out.
Otherwise, following effect sequence would fail the shader compilation
when Skia is compiled with nv_path_rendering on (eg. when fixed
function codepath is used):
* Stage 0: TextureDomain (1 texcoord)
* Stage 1: Convolution (1 texcoord)
* Stage 2: Bitmap Alpha Threshold (2 texcoords)
* Stage 3: DisplacementMap (2 texcoords)
* Stage 4: Config Conversion (1 texcoords)
* Stage 5: Two-Point Conical Gradient (2 texcoords)
This would use more texture coordinate sets than 8, which is fairly
common amount currently.
R=bsalomon@google.com , cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/32403002
git-svn-id: http://skia.googlecode.com/svn/trunk@11881 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 14:48:23 +00:00
commit-bot@chromium.org
15455b2a13
Apply matrix early in draw bitmap
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/30593003
git-svn-id: http://skia.googlecode.com/svn/trunk@11880 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 14:48:17 +00:00
reed@google.com
e7e29b7815
scope ComputeIsOpaque with SkBitmap
...
BUG=
Review URL: https://codereview.chromium.org/32653002
git-svn-id: http://skia.googlecode.com/svn/trunk@11879 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 14:31:20 +00:00
reed@google.com
9cd697c696
change ERROR label to BAD_CONFIG -- avoid windows complaint
...
BUG=
Review URL: https://codereview.chromium.org/32623002
git-svn-id: http://skia.googlecode.com/svn/trunk@11878 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 14:12:13 +00:00
reed@google.com
383a697692
store SkAlphaType inside SkBitmap, on road to support unpremul
...
BUG=
R=bsalomon@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/25275004
git-svn-id: http://skia.googlecode.com/svn/trunk@11877 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 14:00:07 +00:00
robertphillips@google.com
c2eae47954
Reverting revert of r11862 (Constify SkFlattenable::getFactory()) or reverting r11871.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11876 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-21 12:26:10 +00:00
senorblanco@chromium.org
2a4223c783
Fix for cropped matrix convolution for BottomLeft render targets.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/31083002
git-svn-id: http://skia.googlecode.com/svn/trunk@11872 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-20 20:21:19 +00:00
robertphillips@google.com
b5e391025e
Reverted due to Chromium compilation failures. Please see:
...
https://codereview.chromium.org/30973002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11871 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-20 13:34:21 +00:00
robertphillips@google.com
123671901a
Fix cubic->quad RR corner regression
...
https://codereview.chromium.org/29673002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11870 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-20 13:11:16 +00:00
vandebo@chromium.org
1c87672883
Revert "[PDF] Add unpremultiply support and a GM (try3)."
...
This is crashing in some configurations, can now repro.
This reverts commit 12add177d0ab7bbac97f5093c9382924d88bde8c.
Review URL: https://codereview.chromium.org/29903002
git-svn-id: http://skia.googlecode.com/svn/trunk@11868 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 21:04:51 +00:00
vandebo@chromium.org
59fd223870
[PDF] Add unpremultiply support and a GM (try3).
...
This is a resubmit of https://codereview.chromium.org/22831039 which was
reverted because it causes issues on Windows.
BUG=chromium:175548
R=edisonn@google.com
Review URL: https://codereview.chromium.org/29193003
git-svn-id: http://skia.googlecode.com/svn/trunk@11866 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 20:18:29 +00:00
vandebo@chromium.org
dc37e20647
Revert "PDF: support perspective in simple shaders. (this version does not work well with tilling)"
...
Accidentally committed the wrong git branch.
This reverts commit 76839c65670df8a863041a82a4b61502e78af043.
Review URL: https://codereview.chromium.org/29743002
git-svn-id: http://skia.googlecode.com/svn/trunk@11865 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 20:16:34 +00:00
vandebo@chromium.org
eb5992c6cc
PDF: support perspective in simple shaders. (this version does not work well with tilling)
...
Review URL: https://codereview.chromium.org/26389006
git-svn-id: http://skia.googlecode.com/svn/trunk@11864 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 20:14:08 +00:00
senorblanco@chromium.org
7938bae14a
Implement crop rect support for SkMatrixConvolutionImageFilter.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/27471002
git-svn-id: http://skia.googlecode.com/svn/trunk@11863 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 20:08:14 +00:00
commit-bot@chromium.org
575604d4c2
Constify SkFlattenable::getFactory().
...
This allows us to also constify the argument of
SkFlattenableWriteBuffer::writeFlattenable() - which I've recently found
myself const-casting for no apparent good reason.
R=bungeman@google.com , mtklein@google.com , reed@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/29143005
git-svn-id: http://skia.googlecode.com/svn/trunk@11862 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 19:37:55 +00:00
vandebo@chromium.org
ce60c1fc5d
Revert "[PDF] Add unpremultiply support and a GM."
...
This reverts commit f746273b8ba282f548a6eaffb45b11b6f468aa8e.
Review URL: https://codereview.chromium.org/29343002
git-svn-id: http://skia.googlecode.com/svn/trunk@11858 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 16:10:03 +00:00
vandebo@chromium.org
c4d17716cd
[PDF] Add unpremultiply support and a GM.
...
This is a resubmit of https://codereview.chromium.org/22831039 which was
reverted because it causes issues on Windows.
BUG=chromium:175548
R=edisonn@google.com
Review URL: https://codereview.chromium.org/27518003
git-svn-id: http://skia.googlecode.com/svn/trunk@11857 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 15:53:03 +00:00
commit-bot@chromium.org
6ee68583f8
SkThreadPool: allow for Runnables that add other Runnables to the pool.
...
There's a scenario that we're currently not allowing for, but I'd really like to use in DM:
1) client calls add(SomeRunnable*) several times
2) client calls wait()
3) any of the runnables added by the client _themselves_ call add(SomeOtherRunnable*)
4-inf) maybe those SomeOtherRunnables too call add(SomeCrazyThirdRunnable*), etc.
Right now in this scenario we'll assert in debug mode in step 3) when we call
add() and we're waiting to stop, and do strange unspecified things in release
mode.
The old threadpool had basically two states: running, and waiting to stop. If
a thread saw we were waiting to stop and the queue was empty, that thread shut
down. This wasn't accounting for any work that other threads might be doing;
potentially they were about to add to the queue.
So now we have three states: running, waiting, and halting. When the client
calls wait() (or the destructor triggers), we move into waiting. When a thread
notices we're _really_ done, that is, have an empty queue and there are no
active threads, we move into halting. The halting state actually triggers the
threads to stop, which wait() is patiently join()ing on.
BUG=
R=bungeman@google.com , bsalomon@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26389005
git-svn-id: http://skia.googlecode.com/svn/trunk@11852 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 14:19:19 +00:00
skia.committer@gmail.com
f84ad8f7fc
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11850 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-18 07:01:59 +00:00
senorblanco@chromium.org
1aa68723b8
Make SkImageFilter::asNewEffect() (and all derived-class overrides) protected.
...
R=bsalomon@google.com , bsalomon
Review URL: https://codereview.chromium.org/26937006
git-svn-id: http://skia.googlecode.com/svn/trunk@11847 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 19:35:09 +00:00
robertphillips@google.com
32bbcf828d
Add texture filtering override to debugger
...
https://codereview.chromium.org/27716003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11846 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 17:56:10 +00:00
robertphillips@google.com
c2cc1dbe81
Revert r11842 (call drawRect to try GrAARectRenderer if the path is a rect - https://codereview.chromium.org/23484007 ) due to changes to the following GM images:
...
inverse_paths
pathopsinverse
git-svn-id: http://skia.googlecode.com/svn/trunk@11845 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 17:34:20 +00:00
commit-bot@chromium.org
4256d2494e
Add support for GL_CHROMIUM_renderbuffer_format_BGRA8888
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/27525006
git-svn-id: http://skia.googlecode.com/svn/trunk@11844 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 16:29:41 +00:00
commit-bot@chromium.org
cd7992ba55
ARM Skia NEON patches - 30 - Xfermode: NEON modeprocs
...
Xfermode: NEON implementation of SIMD procs
This patch contains a NEON implementation for a number of Xfermodes.
It provides a big speedup on Xfermode benchmarks (currently up to 3x
with gcc4.7 but up to 10x when gcc produces optimal code for it).
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11777
Committed: http://code.google.com/p/skia/source/detail?r=11813
R=djsollen@google.com , mtklein@google.com , reed@google.com , robertphillips@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/26627004
git-svn-id: http://skia.googlecode.com/svn/trunk@11843 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 16:29:34 +00:00
commit-bot@chromium.org
521a46750d
If the path is a rect, call drawRect to raster the geometry in SkCanvas::drawPath to get better performance.
...
R=bsalomon@google.com , robertphillips@google.com , reed@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/23484007
git-svn-id: http://skia.googlecode.com/svn/trunk@11842 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 16:29:21 +00:00
robertphillips@google.com
627f66283b
Disable r11835 (Replace cubic round rect corners with quads) due to performance regression
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11841 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 16:29:25 +00:00
robertphillips@google.com
1cc385b7a4
Replace cubic round rect corners with quads
...
https://codereview.chromium.org/26372006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11835 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 12:17:27 +00:00
skia.committer@gmail.com
4677acc759
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11834 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 07:02:33 +00:00
robertphillips@google.com
dfe0f43e11
Reverting r11813 (ARM Skia NEON patches - 30 - Xfermode: NEON modeprocs - https://codereview.chromium.org/26627004 ) due to Chromium compilation faliures.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11833 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-17 00:09:17 +00:00
sugoi@google.com
536dc83c58
Build fix fo windows only
...
Build fix
git-svn-id: http://skia.googlecode.com/svn/trunk@11828 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 19:34:27 +00:00
junov@google.com
0315ed8e5f
Build fix for chromium shared component build
...
BUG=304265
TBR=reed@google.com
Review URL: https://codereview.chromium.org/27082003
git-svn-id: http://skia.googlecode.com/svn/trunk@11827 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 19:14:42 +00:00
reed@google.com
4cc18156c2
catch the other case where we need to see if fScaledBitmap.lockPixels() might have failed
...
2nd-half clone of https://codereview.chromium.org/26273006/
BUG=chromium:295895
Review URL: https://codereview.chromium.org/26973006
git-svn-id: http://skia.googlecode.com/svn/trunk@11825 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 19:13:29 +00:00
commit-bot@chromium.org
34150b451d
Clear out SK_SCALAR_IS_FLOAT from SkRadialGradient, and merge the logic for radial_mirror and radial_repeat.
...
New radial/repeated bench is 10-20x faster now using float instead of fixed; the rest are unaffected.
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26410003
git-svn-id: http://skia.googlecode.com/svn/trunk@11824 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 18:59:44 +00:00
edisonn@google.com
9cf0cb169b
Implement perspective for bitmaps in pdf.
...
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/27236007
git-svn-id: http://skia.googlecode.com/svn/trunk@11822 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 18:32:35 +00:00
jvanverth@google.com
c7a40fad0b
Split out GrBitmapTextContext from GrTextContext.
...
This is a stepping stone to having a variety of different text context types
(bitmaps, distance fields, NV path rendering).
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/27199002
git-svn-id: http://skia.googlecode.com/svn/trunk@11820 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 18:15:34 +00:00
senorblanco@chromium.org
3f1f2a3a59
Make CropRect immutable after construction.
...
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/27490005
git-svn-id: http://skia.googlecode.com/svn/trunk@11819 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 18:07:48 +00:00
robertphillips@google.com
3e7e992a8a
Add display of filterLevel to debugger
...
https://codereview.chromium.org/27525002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11818 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 17:53:18 +00:00
robertphillips@google.com
e9cd27d4a3
Third wave of Win64 warning cleanup
...
https://codereview.chromium.org/27487003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11817 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 17:48:11 +00:00
reed@google.com
1ae6c2b012
check of fScaledBitmap failed to lock
...
BUG=
Review URL: https://codereview.chromium.org/27530003
git-svn-id: http://skia.googlecode.com/svn/trunk@11816 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 17:34:17 +00:00
commit-bot@chromium.org
b4c29c5363
ARM Skia NEON patches - 30 - Xfermode: NEON modeprocs
...
Xfermode: NEON implementation of SIMD procs
This patch contains a NEON implementation for a number of Xfermodes.
It provides a big speedup on Xfermode benchmarks (currently up to 3x
with gcc4.7 but up to 10x when gcc produces optimal code for it).
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11777
R=djsollen@google.com , mtklein@google.com , reed@google.com , robertphillips@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/26627004
git-svn-id: http://skia.googlecode.com/svn/trunk@11813 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 16:24:08 +00:00
senorblanco@chromium.org
8b66abb9bc
Remove support for SK_CROP_RECT_IS_INT, now that it is no longer used in Blink or Chrome.
...
BUG=
R=reed@google.com , reed
Review URL: https://codereview.chromium.org/27521002
git-svn-id: http://skia.googlecode.com/svn/trunk@11812 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 15:46:00 +00:00
commit-bot@chromium.org
fe070ba6d8
Make sure attribute indexes are correct after restoring vertex attributes
...
Fix an assert due to
GrDrawState::CommonState::fFixedFunctionVertexAttribIndices getting
out of sync. The assertion in GrDrawState::CommonState::operator==
would fire after using AutoVertexAttribRestore.
AutoVertexAttribRestore would change GrDrawState::fCommon.fVAPtr and
fVACount without updating
GrDrawState::fCommon.fFixedFunctionVertexAttribIndices.
R=jvanverth@google.com , bsalomon@google.com , robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/26922004
git-svn-id: http://skia.googlecode.com/svn/trunk@11807 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 14:43:12 +00:00
commit-bot@chromium.org
6397217b30
detach blur result texture when it is the same texture used to render path mask
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26968006
git-svn-id: http://skia.googlecode.com/svn/trunk@11805 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 13:53:54 +00:00
reed@google.com
353482251e
force readbuffer clients to use specialized readFoo for flattenables
...
BUG=
R=mtklein@google.com
Review URL: https://codereview.chromium.org/26702002
git-svn-id: http://skia.googlecode.com/svn/trunk@11803 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 13:05:06 +00:00
skia.committer@gmail.com
472629190e
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11800 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 07:02:24 +00:00
robertphillips@google.com
f8dd38424c
Reverting r11777 (ARM Skia NEON patches - 30 - Xfermode: NEON modeprocs) due to Chromium compilation failure
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11799 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 01:12:38 +00:00
commit-bot@chromium.org
607b3a93e0
Guard colorNames variable under SK_SUPPORT_UNITTEST.
...
That way clang does not complain with unneeded-internal-declaration warning,
because otherwise to clang this variable is unused and thus it won't
emit code for it.
The warning is:
../../src/utils/SkParseColor.cpp:35:3: error: variable 'colorNames' is not needed and will not be emitted [-Werror,-Wunneeded-internal-declaration]
} colorNames[] = {
R=bsalomon@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/27229004
git-svn-id: http://skia.googlecode.com/svn/trunk@11798 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 23:01:08 +00:00
commit-bot@chromium.org
2f92966c6a
Remove SkDataTable from SkFlattenable hierarchy.
...
As far as I can tell, we never really needed this. No code outside the unit
test calls this code.
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26223009
git-svn-id: http://skia.googlecode.com/svn/trunk@11792 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 20:39:57 +00:00
commit-bot@chromium.org
e0e1da34f3
Remove SkColorTable from SkFlattenable hierarchy.
...
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/27392002
git-svn-id: http://skia.googlecode.com/svn/trunk@11791 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 20:36:16 +00:00
reed@google.com
23d0ab7241
return false if we can't scale, to force us to try to lock the original and then proceed
...
BUG=
R=wangxianzhu@chromium.org
Review URL: https://codereview.chromium.org/27382002
git-svn-id: http://skia.googlecode.com/svn/trunk@11789 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 20:14:00 +00:00
commit-bot@chromium.org
db62709fc1
Turn clear-to-white-then-intersect clips into clear-to-black-then-replace
...
R=robertphillips@google.com , brian@thesalomons.net
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/27170003
git-svn-id: http://skia.googlecode.com/svn/trunk@11786 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 20:04:07 +00:00
senorblanco@chromium.org
01bdf3c568
Add crop rect support for SkDisplacementMapEffect (raster and GPU paths).
...
Covered by new test cases added to displacement GM (will require rebaseline).
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/26531002
git-svn-id: http://skia.googlecode.com/svn/trunk@11782 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 19:02:43 +00:00
bungeman@google.com
b8aa4ddb2d
Fix off by one error in last advanceCount in SkFontHost_FreeType.
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/27338003
git-svn-id: http://skia.googlecode.com/svn/trunk@11781 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 18:50:00 +00:00
robertphillips@google.com
8b169311b5
Second wave of Win64 warning cleanup
...
https://codereview.chromium.org/27343002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11778 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 17:47:36 +00:00
commit-bot@chromium.org
baa15581f6
ARM Skia NEON patches - 30 - Xfermode: NEON modeprocs
...
Xfermode: NEON implementation of SIMD procs
This patch contains a NEON implementation for a number of Xfermodes.
It provides a big speedup on Xfermode benchmarks (currently up to 3x
with gcc4.7 but up to 10x when gcc produces optimal code for it).
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com , reed@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/26627004
git-svn-id: http://skia.googlecode.com/svn/trunk@11777 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 16:18:40 +00:00
reed@google.com
b58ba8912a
account for inverse-paths when we prealloc storage in the rgn-builder
...
test inversepath->rgn
BUG=
R=caryclark@google.com
Review URL: https://codereview.chromium.org/27222005
git-svn-id: http://skia.googlecode.com/svn/trunk@11776 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 15:44:35 +00:00
senorblanco@chromium.org
33e88b7b93
SkRectShaderImageFilter: add a new factory method which takes a CropRect.
...
This will become the preferred API, and the old Create method will be deprecated.
R=reed@google.com , reed
BUG=
Review URL: https://codereview.chromium.org/26220004
git-svn-id: http://skia.googlecode.com/svn/trunk@11773 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 15:25:18 +00:00
commit-bot@chromium.org
0d0bb83c05
remove clipstack/region bounds assertion
...
BUG=skia_1720
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26237010
git-svn-id: http://skia.googlecode.com/svn/trunk@11772 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 15:14:43 +00:00
bsalomon@google.com
8aaac8da36
Fix build break in assert
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11771 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 14:35:06 +00:00
commit-bot@chromium.org
6b7938f9cb
separate state for msaa renderability
...
R=robertphillips@google.com , brian@thesalomons.net
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26695005
git-svn-id: http://skia.googlecode.com/svn/trunk@11770 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 14:18:16 +00:00
skia.committer@gmail.com
fbc58a3055
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11769 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 07:02:27 +00:00
robertphillips@google.com
adacc7067a
Start cleaning up 64bit Win warnings
...
https://codereview.chromium.org/27192003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11764 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 21:53:24 +00:00
halcanary@google.com
04b57f87ab
Runtime configuration setting for suppressing JPEG decoder errors.
...
Add new runtime config variable, images.jpeg.suppressDecoderErrors
which defaults to false in Debug and true otherwise. When Jpeg errors
are suppressed and an error happens, SkJPEGImageDecoder::onDecode()
will return silently false (Consequently, so will SkImageDecoder's
DecodeFile() and DecodeMemory() functions).
Also, the test_image_decoder program now respects runtime
configuration settings.
BUG=skia:1680
R=scroggo@google.com
Review URL: https://codereview.chromium.org/27230002
git-svn-id: http://skia.googlecode.com/svn/trunk@11763 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 20:08:48 +00:00
reed@google.com
0cd2ac6c72
change SkAnnotation to not inherit from SkFlattenable (does not need dynamic factories)
...
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/26606004
git-svn-id: http://skia.googlecode.com/svn/trunk@11762 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 20:02:44 +00:00
commit-bot@chromium.org
ea476e1725
swizzle color table if necessary
...
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/27224003
git-svn-id: http://skia.googlecode.com/svn/trunk@11761 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 18:29:23 +00:00
reed@google.com
4979f32cd3
remove SkDataSet, and just store a key/value in SkAnnotation
...
BUG=
R=mtklein@google.com
Review URL: https://codereview.chromium.org/27208002
git-svn-id: http://skia.googlecode.com/svn/trunk@11759 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 16:49:15 +00:00
commit-bot@chromium.org
790c3f4e09
Remove need for readFlattenableT from SkLightingImageFilter.
...
This will need new picture version.
BUG=
R=reed@android.com , sugoi@google.com , senorblanco@chromium.org , reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26594008
git-svn-id: http://skia.googlecode.com/svn/trunk@11758 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 16:28:56 +00:00
commit-bot@chromium.org
7388051d74
Move renderable config list to GrDrawTargetCaps
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26342006
git-svn-id: http://skia.googlecode.com/svn/trunk@11756 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 15:33:45 +00:00
reed@google.com
da30055b29
SkData need not be a Flattenable, since it does not need subclass/factories
...
BUG=
R=mtklein@google.com
Review URL: https://codereview.chromium.org/26928002
git-svn-id: http://skia.googlecode.com/svn/trunk@11754 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 14:33:11 +00:00
commit-bot@chromium.org
5e00989a28
Add SkPDFDeviceFlatenner which extends SkPDFDevice to add support to flatten the path and the text when we have perspective.
...
prepare to deprecate SkPDFDevice constructor, and route gm and render_pdfs to use SkDocument::Create pdf interface instead. - controlled by a flag
add comments where we are supposed to flatten other features (paint, shaders, ... )
R=reed@google.com , bungeman@google.com , scroggo@google.com , vandebo@chromium.org , bsalomon@google.com
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/24811002
git-svn-id: http://skia.googlecode.com/svn/trunk@11751 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 13:42:12 +00:00
commit-bot@chromium.org
1108fc3058
Remove SkLumaXfermode.
...
Possibly the shortest-lived Skia feature, SkLumaXfermode is now replaced
by a color filter implementation (SkLumaColorFilter). All known existing
clients (Blink) have been converted.
R=reed@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/26916002
git-svn-id: http://skia.googlecode.com/svn/trunk@11750 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 13:11:11 +00:00
halcanary@google.com
2a10318814
Simplify code for configuring suppression of ImageDecoder warnings
...
For images.png.suppressDecoderWarnings and
images.jpeg.suppressDecoderWarnings, the default behavior is now:
Debug - DON'T suppress
Developer Release - suppress
Release - suppress
This behavior can be changed in Debug and in Developer through
the SkRTConf mechanism.
BUG=skia:1680
R=caryclark@google.com
Review URL: https://codereview.chromium.org/26863003
git-svn-id: http://skia.googlecode.com/svn/trunk@11749 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 12:49:15 +00:00
bungeman@google.com
18252fe126
Add stdio include to SkFonrConfigParser_android.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11745 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 20:13:41 +00:00
bungeman@google.com
85302969fc
Try to work around VS2010 intsafe/stdint multiple define issues.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11744 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 20:04:08 +00:00
bungeman@google.com
72e8324f0e
Add stdio include to SkDebug_android.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11743 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 19:47:36 +00:00
bungeman@google.com
2c8e9d40a4
Add stdio include for Android specific code in SkRegion.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11741 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 19:23:56 +00:00
bungeman@google.com
3dc82c4470
Correct 32bit pointer assumption in assert in SkMatrix.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11739 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 19:11:10 +00:00
bungeman@google.com
fab44db294
Clean up SkTypes.h.
...
This change removes sk_stdint.h since it is only needed for vs2008 and earlier.
This change removes SK_MMAP_SUPPORT define since it is no longer used.
This change removes the stdio.h include from SkTypes.h since on many systems
this is a very large header, few Skia files actually use it, it is
available everywhere standard, and SkDebugf should be used instead.
After this change there is no need for external users to put Skia's
include/config into their own list of includes, saving the headache
of having two header files of the same name and sometimes getting the
wrong one depending on include order.
R=bsalomon@google.com , djsollen@google.com
Review URL: https://codereview.chromium.org/27044002
git-svn-id: http://skia.googlecode.com/svn/trunk@11738 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 18:50:45 +00:00
halcanary@google.com
29d4e63864
GIF decode: optional error messages and fault tolerance.
...
Add new runtime configuration variable,
images.gif.suppressDecoderWarnings, which suppresses warning and
errors from the GIF library. It defaults to "true", which is current
behavior.
(This setting can be changed by setting the environment variable
skia_images_gif_suppressDecoderWarnings="false".)
Some conditions which were errors before are now warnings:
- If the image width or height is greater than the GIF screen width or
height (respectively) we expand the screen to hold the image.
- If the offset of the image inside the screen would place the
image outside of the screen, we shift the image to fix this.
- If the image lacks a color table, we create a default color table.
- If the image is truncated, then the rest of the image is filled with
the fill color.
In all four cases, if images.gif.suppressDecoderWarnings is set to
false, then a warning message is printed via SkDebugf.
In the event of another kind of error, SkGIFImageDecoder::onDecode()
will still return false. But with this change, if
images.gif.suppressDecoderWarnings is set to false, a description of
the error is printed via SkDebugf.
Also, added a new unit test GifTest, which tests the deconing of both
good GIf files and corrupted files that should now work with this
change. This unit test is disabled on Win32, iOS, and Mac.
BUG=skia:1689
R=scroggo@google.com
Review URL: https://codereview.chromium.org/26743002
git-svn-id: http://skia.googlecode.com/svn/trunk@11734 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 18:21:56 +00:00
senorblanco@chromium.org
5e85300729
SkRectShaderImageFilter: add a workaround for the zero-sized rects currently passed by Blink.
...
BUG=306488
R=robertphillips@google.com , robertphillips
Review URL: https://codereview.chromium.org/26799004
git-svn-id: http://skia.googlecode.com/svn/trunk@11733 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 17:57:47 +00:00
senorblanco@chromium.org
e9d61ed8c4
Use #if insteadof #ifdef DYNAMIC_ANNOTATIONS_ENABLED. It's always defined, just to 0 or 1.
...
BUG=
R=mtklein
Review URL: https://codereview.chromium.org/26358010
git-svn-id: http://skia.googlecode.com/svn/trunk@11731 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 16:45:50 +00:00
robertphillips@google.com
1f1b4aa06a
Fix double ref issue in SkPDFFont ctor
...
https://codereview.chromium.org/26799003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11724 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 14:27:16 +00:00
commit-bot@chromium.org
21a705d2eb
SK_ONCE for SkMatrix::I()
...
Going to start doing these in progressively larger and larger bulk,
but I figured the first few changes probably merit caution.
BUG=
R=reed@google.com , bungeman@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26905002
git-svn-id: http://skia.googlecode.com/svn/trunk@11721 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 21:58:31 +00:00
senorblanco@chromium.org
e258eb34a8
Implement crop rect support for SkRectShaderImageFilter: remove fRect and use the cropRect from SkImageFilter in its place.
...
R=reed@google.com
Review URL: https://codereview.chromium.org/26009004
git-svn-id: http://skia.googlecode.com/svn/trunk@11720 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 21:36:48 +00:00
commit-bot@chromium.org
d494b09f55
Align SkLumaColorFilter with the spec.
...
The spec requires the resulting RGB channels for LuminanceToAlpha to be
0 (and not just scaled by the luminance value</facepalm>):
| R' | | 0 0 0 0 0 | | R |
| G' | | 0 0 0 0 0 | | G |
| B' | = | 0 0 0 0 0 | * | B |
| A' | | 0.2125 0.7154 0.0721 0 0 | | A |
| 1 | | 0 0 0 0 1 | | 1 |
(http://www.w3.org/TR/2011/REC-SVG11-20110816/filters.html#feColorMatrixElement )
This doesn't affect luminance masking (which depends only on the
resulting alpha channel), but other color filter users may care
about all color components.
R=bsalomon@google.com , reed@google.com , robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/26467003
git-svn-id: http://skia.googlecode.com/svn/trunk@11713 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 20:13:51 +00:00
commit-bot@chromium.org
a7538baeae
SkThreadPool: tweak two little things that have been annoying me
...
1) it's pretty annoying that SkThreadPool doesn't include SkRunnable for us;
2) add wait() so we don't have to keep using SkAutoTDelete/free() to wait for completion.
BUG=
R=scroggo@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26470005
git-svn-id: http://skia.googlecode.com/svn/trunk@11711 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 18:49:04 +00:00
reed@google.com
fb6deed66c
make explicit the requirement that all colorfilters are reentrant-safe
...
BUG=
R=mtklein@google.com
Review URL: https://codereview.chromium.org/26876002
git-svn-id: http://skia.googlecode.com/svn/trunk@11705 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 17:35:58 +00:00
robertphillips@google.com
0197b32bfb
Always clear dest in SkBitmap::copyTo's draw path
...
https://codereview.chromium.org/26268003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11697 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 15:48:16 +00:00
reed@google.com
0a6151d66c
Revert "Revert "change SkColorTable to be immutable""
...
This reverts commit b8162cb840f4cb6002ef68d5ac775c6a122c52a9.
Fixed was call-sites in benches that used the (now gone) setIsOpaque api.
R=scroggo@google.com
Review URL: https://codereview.chromium.org/26572006
git-svn-id: http://skia.googlecode.com/svn/trunk@11695 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 14:44:56 +00:00
senorblanco@chromium.org
b295fb6ff3
Change SkImageFilter's cropRect from SkIRect to a CropRect struct, containing an SkRect and flags indicating which parameters are set.
...
NOTE: this will require SK_CROP_RECT_IS_INT=1 to be set in Chrome until Blink has been updated to use SkImageFilter::CropRect. Include https://codereview.chromium.org/26528002/ with the Skia roll.
Note also that SK_CROP_RECT_IS_INT is a temporary measure until all call sites in Blink have been updated to use SkRect.
R=reed@google.com
Review URL: https://codereview.chromium.org/26371002
git-svn-id: http://skia.googlecode.com/svn/trunk@11692 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 13:51:19 +00:00
skia.committer@gmail.com
f29c380289
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11691 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 07:01:40 +00:00
commit-bot@chromium.org
824c346b6e
Express (GLSL expression, possibly known value) pairs as a class
...
Express (GLSL expression, possibly known value) pairs as a class
instead of two variables Introduces GrGLSLExpr<N> to encapsulate
the expression and possibly constant-folded value of the expression.
This simplifies passing of the expressions to functions.
Changes the shaders with following patterns:
{ // Stage 0: Linear Gradient
vec4 colorTemp = mix(uGradientStartColor_Stage0, uGradientEndColor_Stage0, clamp(vMatrixCoord_Stage0.x, 0.0, 1
colorTemp.rgb *= colorTemp.a;
- output_Stage0 = vec4((vColor) * (colorTemp));
+ output_Stage0 = (vColor * colorTemp);
+ }
Previously the vector cast was always added if constant folding was
effective, regardless of the term dimensions. Now the vector upcast is
not inserted in places where it is not needed, ie. when the binary
operator term is of the target dimension.
Also, some parentheses can be omitted. It is assumed that
GrGLSLExpr<N>("string") constructors construct a simple expression or
parenthesized expression.
Otherwise the shader code remains identical.
R=jvanverth@google.com , bsalomon@google.com , robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/25048002
git-svn-id: http://skia.googlecode.com/svn/trunk@11690 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 06:30:18 +00:00
commit-bot@chromium.org
b5a6651f9f
SkDocument api changes (abort, close return success, set DCT encoder...).
...
R=reed@google.com , reed
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/26744002
git-svn-id: http://skia.googlecode.com/svn/trunk@11688 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 21:09:00 +00:00
commit-bot@chromium.org
1303761a89
Remove _impl from names in SkOnce.h.
...
This is entirely to make power users (me, Mike's per-object use case) feel less
bad about calling sk_once() directly with args not created by DEF_SK_ONCE.
BUG=
R=bungeman@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26129010
git-svn-id: http://skia.googlecode.com/svn/trunk@11686 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 20:08:20 +00:00
commit-bot@chromium.org
235002fb12
low hanging calloc fruit
...
BUG=
R=reed@google.com , robertphillips@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/24267014
git-svn-id: http://skia.googlecode.com/svn/trunk@11683 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 18:39:59 +00:00
djsollen@google.com
c9542ca3d0
Add swapBuffer call to SkGLContextHelper.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/26701002
git-svn-id: http://skia.googlecode.com/svn/trunk@11682 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 18:25:38 +00:00
reed@google.com
48d9ff5b34
Revert "change SkColorTable to be immutable"
...
This reverts commit 1c0ff422868b3badf5ffe0790a5d051d1896e2f7.
BUG=
Review URL: https://codereview.chromium.org/26709002
git-svn-id: http://skia.googlecode.com/svn/trunk@11677 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 16:49:45 +00:00
reed@google.com
9864c24e40
change SkColorTable to be immutable
...
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/25353002
git-svn-id: http://skia.googlecode.com/svn/trunk@11676 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 16:34:47 +00:00
mtklein@google.com
3a19fb58a6
Sketch of SK_ONCE
...
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/26563002
git-svn-id: http://skia.googlecode.com/svn/trunk@11674 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 16:12:23 +00:00
commit-bot@chromium.org
32184d8162
Implement stroking a path with nv_path_rendering
...
Initialize the path stroke properties in the GrGLPath constructor.
Use StencilStrokePath and CoverStrokePath to stroke the path.
The order of the GL calls is:
1. StencilFill, if needed
2. StencilStroke, if needed
2a. CoverStroke, if stroke was applied
2b. CoverFill, if stroke was not applied
The reason for not pairing StencilFill + CoverFill, StencilStroke +
CoverStroke is that Skia API does not allow separate fill and stroke
color within one call. Covering the stroke bounding box should also
cover the fill bounding box.
Causes different rendering in gm/dashcubics due to different rendering
algorithm. (?) (TODO: this should be resolved somehow.)
R=bsalomon@google.com , markkilgard@gmail.com , cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/23440049
git-svn-id: http://skia.googlecode.com/svn/trunk@11672 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 15:14:18 +00:00
commit-bot@chromium.org
aadb4d9a53
flush after every print in windows
...
R=djsollen@google.com , reed@google.com , epoger@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26680004
git-svn-id: http://skia.googlecode.com/svn/trunk@11670 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 15:09:42 +00:00
commit-bot@chromium.org
df187c7eb2
ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs
...
Xfermode: allow for SIMD modeprocs
This patch introduces the ability to have SIMD Xfermode modeprocs.
In the NEON implementation, SIMD modeprocs will process 8 pixels
at a time.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11654
R=djsollen@google.com , mtklein@google.com , reed@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/23644006
git-svn-id: http://skia.googlecode.com/svn/trunk@11669 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 14:39:46 +00:00
commit-bot@chromium.org
c4dc0ad8e2
Implement filling a path with nv_path_rendering cover
...
Implement filling a path with nv_path_rendering cover functionality.
The nv_path_rendering cover can be used if the fill is non-inverted
and the draw operation does not require use of vertex shaders.
Moves code for the inverted fill from GrStencilAndCoverPathRenderer
down to GrGpuGL.
R=bsalomon@google.com , markkilgard@gmail.com , cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/22686002
git-svn-id: http://skia.googlecode.com/svn/trunk@11667 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 14:11:33 +00:00
reed@google.com
12eb7811e3
try uping the cache-count-limit to see if it speeds up bench-pictures
...
BUG=
Review URL: https://codereview.chromium.org/25118003
git-svn-id: http://skia.googlecode.com/svn/trunk@11663 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-09 12:45:51 +00:00
bungeman@google.com
27f74aab32
Improve SkScalerContext_GDI::generateCharToGlyph for non-BMP code points.
...
Sometimes, when ScriptShape is presented with a surrogate pair which does
not map to a glyph, it returns two space glyphs instead of .notdef (0).
Detect this class of issues and handle appropriately.
git-svn-id: http://skia.googlecode.com/svn/trunk@11660 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 21:32:15 +00:00
commit-bot@chromium.org
dac4a1d518
Allow sampling GIF images during decode.
...
SkScaledBitmapSampler:
Add a mode for sampling rows out of order, used by GIF decoder for
interlaced images.
Add a getter for the X sampling rate.
SkImageDecoder_libgif:
Respect the sampleSize set on SkImageDecoder.
skimage_main:
Provide an option to set a sample size.
BUG=https://b.corp.google.com/issue?id=8999690
R=reed@google.com , djsollen@google.com , halcanary@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/25354004
git-svn-id: http://skia.googlecode.com/svn/trunk@11659 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 19:40:18 +00:00
robertphillips@google.com
c0de5d6b5f
Fix uninitialized memory access
...
https://codereview.chromium.org/26529002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11658 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 19:15:58 +00:00
djsollen@google.com
6f980c6a23
Revert "ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs"
...
This reverts http://code.google.com/p/skia/source/detail?r=11654
Review URL: https://codereview.chromium.org/26340010
git-svn-id: http://skia.googlecode.com/svn/trunk@11655 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 16:59:53 +00:00
commit-bot@chromium.org
84cc1ebc5a
ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs
...
Xfermode: allow for SIMD modeprocs
This patch introduces the ability to have SIMD Xfermode modeprocs.
In the NEON implementation, SIMD modeprocs will process 8 pixels
at a time.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com , reed@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/23644006
git-svn-id: http://skia.googlecode.com/svn/trunk@11654 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 16:47:22 +00:00
commit-bot@chromium.org
80f3fcd255
Update #if to #ifdef for consistency
...
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/26495002
git-svn-id: http://skia.googlecode.com/svn/trunk@11653 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 16:24:07 +00:00
robertphillips@google.com
25ae5eef33
Fix memory leak in SkPDFRasterizer
...
https://codereview.chromium.org/26373005/
git-svn-id: http://skia.googlecode.com/svn/trunk@11652 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 15:40:49 +00:00
commit-bot@chromium.org
c0445fec19
Fix ambiguity in API if no matching system language is found
...
R=reed@google.com , wangxianzhu@chromium.org
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/26325003
git-svn-id: http://skia.googlecode.com/svn/trunk@11641 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 19:49:13 +00:00
commit-bot@chromium.org
49e80830e9
Fix for blinking/corrupted text in Canvas 2D.
...
Ensure that we update the drawToken for a glyph's plot every time it is
used, not just when the glyph is first added.
BUG=303803
R=junov@chromium.org , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/26253003
git-svn-id: http://skia.googlecode.com/svn/trunk@11637 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 18:20:27 +00:00
commit-bot@chromium.org
6c1ee2d4e7
Luminance-to-alpha color filter (SkLumaColorFilter).
...
Adding a color filter luma implementation. The plan is to convert
existing clients and then deprecate SkLumaXfermode.
R=bsalomon@google.com , reed@google.com , robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/25453004
git-svn-id: http://skia.googlecode.com/svn/trunk@11636 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 18:00:17 +00:00
commit-bot@chromium.org
dd6cde5235
style nit for myself retroactively: throwOnFailure -> throw_on_failure
...
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/26298002
git-svn-id: http://skia.googlecode.com/svn/trunk@11635 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 17:59:04 +00:00
commit-bot@chromium.org
d532172646
Make skia almost compile again with clang.
...
clang is reporting many unused functions and variables.
R=bsalomon@google.com , robertphillips@google.com , reed@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/26167002
git-svn-id: http://skia.googlecode.com/svn/trunk@11630 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 15:52:15 +00:00
edisonn@google.com
a9ebd161a7
pdf: drawPath should pass the computed matrix, instead of default matrix stored in draw.
...
moved cl https://codereview.chromium.org/24265006/ in git repository so I can run the trybots
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/25675011
git-svn-id: http://skia.googlecode.com/svn/trunk@11626 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-07 13:22:21 +00:00
commit-bot@chromium.org
722555bebb
Add perspective support to SkMatrix44 initializers.
...
I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.
Previously committed and reverted, second attempt with fix for
incorrect use of SkMScalar/SkScalar.
BUG=
R=reed@google.com , caryclark@google.com
Author: aelias@chromium.org
Review URL: https://codereview.chromium.org/25484006
git-svn-id: http://skia.googlecode.com/svn/trunk@11624 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-05 01:16:30 +00:00
aelias@chromium.org
851af07b11
Revert "Add perspective support to SkMatrix44 initializers."
...
This reverts commit 93db1bcae0863feed8d00a61ae2cf72a90a0083c.
git-svn-id: http://skia.googlecode.com/svn/trunk@11623 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 22:26:28 +00:00
commit-bot@chromium.org
761f860a42
Add perspective support to SkMatrix44 initializers.
...
I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.
BUG=
R=reed@google.com
Author: aelias@chromium.org
Review URL: https://codereview.chromium.org/25484006
git-svn-id: http://skia.googlecode.com/svn/trunk@11622 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 20:38:08 +00:00
commit-bot@chromium.org
6b30e45740
Use vertexless shaders when NVpr is available
...
Adds support for vertexless shaders and enables them when
NV_path_rendering is available. This takes a
GrGLFragmentOnlyShaderBuilder class, a GrGLTexGenEffectArray class,
support for setting TexGen and the projection matrix in GrGpuGL, and
code for setting the GL fixed function state where necessary.
R=bsalomon@google.com , kkinnunen@nvidia.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/25846002
git-svn-id: http://skia.googlecode.com/svn/trunk@11620 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 20:02:53 +00:00
bungeman@google.com
86dd752bd5
Mutex protect SkFontMgr_DirectWrite cache.
...
SkFontMgr_DirectWrite is constant, except for its typeface cache.
Protect this cache in the face of multiple threads.
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/26023002
git-svn-id: http://skia.googlecode.com/svn/trunk@11615 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 17:00:35 +00:00
commit-bot@chromium.org
86490573b5
commit to xfermode objects being immutable
...
BUG=
R=djsollen@google.com , mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/25968004
git-svn-id: http://skia.googlecode.com/svn/trunk@11614 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 16:52:55 +00:00
commit-bot@chromium.org
5dbb149fda
When cache is full delay flush until GrContext draw is finished
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/25673004
git-svn-id: http://skia.googlecode.com/svn/trunk@11613 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 16:23:58 +00:00
commit-bot@chromium.org
261dc569b6
Move VertexBuilder to a GrGLFullShaderBuilder subclass
...
Removes the VertexBuilder nested class from GrGLShaderBuilder in favor
of a new GrGLFullShaderBuilder subclass, and adds an optional emitCode
overload to GrGLEffect that takes a GrGLFullShaderBuilder. Makes
setData virtual in GrGLEffectArray and adds a GrGLVertexEffectArray
subclass that gets built using a GrGLFullShaderBuilder. Also adds a
new GrGLVertexEffect subclass that makes the GrGLFullShaderBuilder
overload required for emitCode, and updates GrGLEffects to inherit
from GrGLVertexEffect where needed.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/25474006
git-svn-id: http://skia.googlecode.com/svn/trunk@11612 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 15:42:56 +00:00
commit-bot@chromium.org
5c363644eb
Don't access RT when disabling scissor.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/25446004
git-svn-id: http://skia.googlecode.com/svn/trunk@11608 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 15:28:18 +00:00
halcanary@google.com
2dcf36e251
Fix SkScalar conversion warning error.
...
This was causing probems on the Win build.
R=caryclark@google.com
Review URL: https://codereview.chromium.org/26011002
git-svn-id: http://skia.googlecode.com/svn/trunk@11604 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 14:35:38 +00:00
halcanary@google.com
fed3037217
Make image decoding more fault resistant, less verbose.
...
This change address what happens when a jpeg is partially downloaded
before failing. Many browsers will render it anyway: we want Skia to
do the same. The JpegTest takes a perfectly cromulent jpeg file and
only passes into the ImageDecoder the first half of the image. We
then verify that the image decoder returns a valid bitmap of the
correct dimensions.
We also fixed some png library errors, including issue 1691.
Also, suppressed the majority of warnings from using libpng and
libjpeg. By default, most warnings are *not* suppressed in debug mode.
If you have a debug binary and wish to suppress warnings, set the
following environment variables to true
skia_images_png_suppressDecoderWarnings
skia_images_jpeg_suppressDecoderWarnings
or from within a program that links to Skia:
#if defined(SK_DEBUG)
#include "SkRTConf.h"
SK_CONF_SET("images.jpeg.suppressDecoderWarnings", true);
SK_CONF_SET("images.png.suppressDecoderWarnings", true);
#endif
I tested this, before (control) and after these changes (test), on
364,295 skps from the cluster telemetry.
- number of errors+warnings in control = 2804
- number of errors+warnings fixed = 2283
- number of PNG verbosity fixed = 2152
- number of PNG error fixed = 4
- number of PNG segfault fixed = 3
- number of PNG errors changed to warnings = 62
- number of JPG verbosity fixed = 26
- number of JPG error fixed = 91
Not all errors and warning have been fixed.
These numbers were generated using the find_bad_images_in_skps.py
program. This program may be useful going forward for testing
image-decoding libraries on skp files from the cluster telemetry.
find_bad_images_in_skps.py depends on the test_image_decoder program,
which simply executes the SkImageDecoder::DecodeFile function and uses
its exit status to report success or failure.
BUG=skia:1649
BUG=skia:1691
BUG=skia:1680
R=scroggo@google.com
Review URL: https://codereview.chromium.org/24449003
git-svn-id: http://skia.googlecode.com/svn/trunk@11597 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 12:46:45 +00:00
commit-bot@chromium.org
5fd7d5c20a
Allow gradient optimization with perspective
...
Before, gradients would only interpolate the linear portion of the
quadratic equation if there was no perspective. This updates them to
do so even in the case that there is perspective. The rearrangement
of math causes noise differences in the following gm tests:
gradients_no_texture_gpu
gradients_view_perspective_gpu
gradients_local_perspective_gpu
gradients_gpu
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/25645006
git-svn-id: http://skia.googlecode.com/svn/trunk@11595 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-04 01:20:09 +00:00
bungeman@google.com
11ba3199f3
Snap GDI matrix when snapping height.
...
When using GDI to render, ensure that the GDI matrix does not attempt to
add subpixel height. This ensures that rotated text is always the same
height as axis aligned text and prevents subpixel drift metrics when they
are unwanted.
R=reed@google.com
Review URL: https://codereview.chromium.org/25739002
git-svn-id: http://skia.googlecode.com/svn/trunk@11592 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 20:17:51 +00:00
commit-bot@chromium.org
608ea6508a
Use SkPicture::ExtractBitmap callback in pdf too, there is no need for a specialized function pointer for pdf only only to pass a rectangle, when we can use subseted bitmaps.
...
R=scroggo@google.com , reed@google.com , vandebo@chromium.org , bsalomon@google.com
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/25054002
git-svn-id: http://skia.googlecode.com/svn/trunk@11591 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 19:29:21 +00:00
commit-bot@chromium.org
546f70c823
Fixes for decoding to A8.
...
src/images/SkImageDecoder_libpng.cpp:
A8 images are not opaque, so do not set the opaque flag.
This fixes a bug where copyTo does not work as expected (when
copying an A8 decoded image to ARGB_8888), leading to
a bitmap hash that does not represent the image correctly
(in skimage).
tools/skimage_main.cpp:
In write_bitmap, which is creating the image for visual comparison,
copy A8 to 8888, since A8 cannot be encoded.
In the section that tests reencoding, do not test reencoding A8,
which is known to not work.
R=mtklein@google.com , djsollen@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/25726004
git-svn-id: http://skia.googlecode.com/svn/trunk@11589 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 17:13:38 +00:00
commit-bot@chromium.org
3390b9ac9a
Repurpose GrGLCoordTransform as GrGLProgramEffects
...
Creates a GrGLProgramEffects class that the GrGLProgram uses to manage
an array of effects. This gives us enough abstraction for the program
to cleanly handle different types of coord transforms.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/25605008
git-svn-id: http://skia.googlecode.com/svn/trunk@11588 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 15:17:58 +00:00
djsollen@google.com
5df5e6126d
Update PDF backend to support fallback fonts on Android.
...
R=edisonn@google.com , reed@google.com , vandebo@chromium.org
Review URL: https://codereview.chromium.org/24364008
git-svn-id: http://skia.googlecode.com/svn/trunk@11586 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 14:42:24 +00:00
skia.committer@gmail.com
b0a0589f8a
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11585 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-03 07:01:37 +00:00
jvanverth@google.com
58909491d2
Fix font GMs
...
Disables font cache dump for now
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/25605007
git-svn-id: http://skia.googlecode.com/svn/trunk@11584 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 19:49:26 +00:00
commit-bot@chromium.org
03e3e89641
Add support to dump font cache texture for debug purposes
...
R=robertphillips@google.com , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/25736002
git-svn-id: http://skia.googlecode.com/svn/trunk@11579 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 18:19:17 +00:00
robertphillips@google.com
aaf3e64b2c
Move makeSpace and resetToSize from SkPathRef.cpp to .h
...
https://codereview.chromium.org/25754002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11578 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 17:49:50 +00:00
commit-bot@chromium.org
09846a05be
Add new skyline Rectanizer
...
The skyline Rectanizer tracks the leading silhouette of the
currently packed rects and tries to fit the next rectangle
on top of that. This gives slightly better packing behavior
than the current log2 scheme.
Also shrank the size of the plots, which increases their
number from 18 to 32 and gives better cache behavior (fewer
purges and uploads).
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/25584002
git-svn-id: http://skia.googlecode.com/svn/trunk@11577 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 17:37:59 +00:00
robertphillips@google.com
0308707248
Make it explicit that some validate methods are debug only
...
https://codereview.chromium.org/25716003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11575 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 16:42:21 +00:00
scroggo@google.com
354fd97ee0
Do not convert non gray PNG to A8.
...
If the user requested A8, but the source is not gray, switch to
ARGB8888.
BUG=https://b.corp.google.com/issue?id=9189955
R=reed@google.com
Review URL: https://codereview.chromium.org/24882002
git-svn-id: http://skia.googlecode.com/svn/trunk@11573 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 15:50:19 +00:00
caryclark@google.com
7eaa53d8f7
path ops work in progress
...
make more skps work
remove edit files
BUG=
Review URL: https://codereview.chromium.org/23542056
git-svn-id: http://skia.googlecode.com/svn/trunk@11570 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 14:49:34 +00:00
bsalomon@google.com
77af6805e5
Make GPU coord transforms automatic
...
Adds a GrCoordTransform class and updates the framework to handle
coord transforms similar to how it handles textures with
GrTextureAccess. Renames GrGLEffectMatrix to GrGLCoordTransform and
slightly repurposes it to be used by the framework instead of effects.
R=bsalomon@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/24853002
git-svn-id: http://skia.googlecode.com/svn/trunk@11569 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-02 13:04:56 +00:00
scroggo@google.com
e5c9c4960c
Empty implementations for SkImageDecoder.
...
Add constructor and destructor, so SkScaledBitmapSampler's
DummyDecoder has no unresolved symbols in Chrome.
Fixes our Chrome canary.
Unreviewed.
Review URL: https://codereview.chromium.org/25536004
git-svn-id: http://skia.googlecode.com/svn/trunk@11566 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 19:54:42 +00:00
commit-bot@chromium.org
edf2367346
Fix race between ~SkThreadPool and SkThreadPool::Loop on fDone.
...
We're writing fDone without holding the mutex. Bad form, says tsan.
In practice this is fairly innocuous, as fDone only ever goes from false to
true and only once. Though, I wouldn't be surprised if there were some way
this could leak a thread that never got the signal to die.
BUG=
R=scroggo@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/25371003
git-svn-id: http://skia.googlecode.com/svn/trunk@11563 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 18:44:18 +00:00
commit-bot@chromium.org
949eef0af2
Use explicitly-sized enums in GrGLProgramDesc::KeyHeader
...
Uses enums explicitly sized to 8 bits in GrGLProgramDesc::KeyHeader,
instead of storing them as uint8_t values. This avoids the need to
static_cast them.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/23875048
git-svn-id: http://skia.googlecode.com/svn/trunk@11560 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 18:43:29 +00:00
scroggo@google.com
1d06999bc2
Fix build.
...
Predeclare a function.
Unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@11559 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 17:46:35 +00:00
scroggo@google.com
8d2392487c
Add an option on SkImageDecoder to skip writing 0s.
...
Only implemented for PNG.
Add a getter and setter, and sets the default to false in the
constructor. Also copies the setting in copyFieldsToOther.
Fix an indpendent bug where fDitherImage was not being copied in
copyFieldsToOther.
In SkScaledBitmapSampler::begin, consolidate the settings passed in
by passing a const reference to the decoder. The decoder can be
referenced for its settings of dither, unpremultiplied, and now
skipping writing zeroes. Update callers to use the new API. In png
decoder, rather than passing around a pointer to an initial
read of getDitherImage, and potentially changing it, look at the
field on the decoder itself, and modify it directly. This is a
change in behavior - now if that same decoder is used to decode
a different image, the dither setting has changed. I think this is
okay because A) the typical use case is to use a new decoder for
each decode, B) we do not make any promises that a decode does not
change the decoder and C) it makes the code in SkScaledBitmapSampler
much cleaner.
In SkScaledBitmapScampler, add new row procs for skipping zeroes. Now
that choosing the row proc has five dimensions (src config, dst config,
dither, skip writing zeroes, unpremultiplied), use a new method: each
src/dst combination has a function for choosing the right proc depending
on the decoder.
SkScaledBitmapScampler::RowProc is now public for convenience.
Remove Sample_Gray_D8888_Unpremul, which is effectively no different
from Sample_Gray_D8888.
In cases where unpremultiplied was trivial, such as 565 and when
sampling from gray, decoding may now succeed.
Add a benchmark (currently disabled) for comparing the speed of skipping
writing zeroes versus not skipping. For this particular image, which is
mostly transparent pixels, normal decoding took about 3.6 milliseconds,
while skipping zeroes in the decode took only about 2.5 milliseconds
(this is on a Nexus 4). Presumably it would be slower on an image
with a small amount of transparency, but there will be no slowdown
for an image which reports that it has no transparency.
In SkImageRef_ashmem, always skip writing zeroes, since ashmem
memory is guaranteed to be initialized to 0.
Add a flag to skip writing zeroes in skimage.
Add a regression test for choosing the rowproc to ensure I did not
change any behavior accidentally.
BUG=skia:1661
R=reed@google.com
Review URL: https://codereview.chromium.org/24269006
git-svn-id: http://skia.googlecode.com/svn/trunk@11558 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 17:27:15 +00:00
scroggo@google.com
12705329d0
Allow creating a picture from skp to fail.
...
Replace the current constructor for creating an
SkPicturePlayback to a factory. In the factory,
check for incorrect data that would result in an invalid
playback. If the playback is invalid, return NULL, and
return NULL from SkPicture's factory as well.
Update SkTimedPicture(Playback) as well.
BUG=skia:1672
R=caryclark@google.com
Review URL: https://codereview.chromium.org/24826002
git-svn-id: http://skia.googlecode.com/svn/trunk@11554 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 15:30:46 +00:00
bungeman@google.com
635091f0a9
Minor changes to XPS device.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11552 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 15:03:18 +00:00
skia.committer@gmail.com
1d3bfdc341
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11544 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 07:01:46 +00:00
commit-bot@chromium.org
234d4fba75
Mark when effects and programs have vertex code
...
Adds a 'hasVertexCode' method to GrEffect and a 'fHasVertexCode' field
to GrGLProgramDesc::KeyHeader. Also adds a GrVertexEffect class that
effects have to inherit from in order to set the 'hasVertexCode' flag
and be able to emit vertex code, and updates the existing effects to
use it as needed.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/23653059
git-svn-id: http://skia.googlecode.com/svn/trunk@11537 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-30 19:55:49 +00:00
commit-bot@chromium.org
76eaf749cf
Add a GrCustomCoordsTextureEffect class
...
Extracts a GrCustomCoordsTextureEffect class from
GrSimpleTextureEffect. This way there are no effects that can
conditionally require a vertex shader. They either always need one or
never do. Also removes kCustom_CoordsType from the CoordsType enum in
GrEffect (that enum is really only meant for coords provided by the
framework), and updates GrSimpleTextureEffect::TestCreate to make the
effect with position as well, instead of just local coords.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/24018007
git-svn-id: http://skia.googlecode.com/svn/trunk@11531 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-30 18:41:38 +00:00
commit-bot@chromium.org
6c5d9a1dff
Add GrSurface::savePixels().
...
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/25021006
git-svn-id: http://skia.googlecode.com/svn/trunk@11528 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-30 18:05:43 +00:00
commit-bot@chromium.org
410552a73d
Move the GL shader compilation step into GrGLShaderBuilder
...
Moves the compilation step and a few other blocks of code from
GrGLProgram to GrGLShaderBuilder. This way GrGLProgram doesn't have to
know whether or not there is a vertex shader.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/23533066
git-svn-id: http://skia.googlecode.com/svn/trunk@11523 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-30 15:30:27 +00:00
commit-bot@chromium.org
a4acf12a93
Revert "Add a requiresVertexShader method to GrGLEffect"
...
This reverts commit 1a30a3af805b7ea688d4a0f0bfe373c204085a27. We're
going to take a different direction for vertexless shaders.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/23464082
git-svn-id: http://skia.googlecode.com/svn/trunk@11521 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-30 15:13:58 +00:00
skia.committer@gmail.com
50df4d013f
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11513 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-28 07:01:33 +00:00
robertphillips@google.com
6e7883b84f
Limit warning message to de-clutter bench output logs
...
https://codereview.chromium.org/25112002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11511 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 21:53:39 +00:00
commit-bot@chromium.org
7d330eb19c
GrAtlas cleanup: Split out GrPlot and GrAtlas
...
This breaks up GrAtlas into the head of the list (GrAtlas) and the list elements (GrPlot). It also moves all of the GrPlot management code into GrAtlasMgr. It adds a simple pool allocator for GrPlots and removes use of GrPlotMgr.
R=bsalomon@google.com , robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/24981004
git-svn-id: http://skia.googlecode.com/svn/trunk@11508 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 19:39:38 +00:00
robertphillips@google.com
3e292aa398
Move unlikely-to-be-inlined code from SkPathRef.h to SkPathRef.cpp
...
https://codereview.chromium.org/24998004/
git-svn-id: http://skia.googlecode.com/svn/trunk@11506 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 17:48:49 +00:00
robertphillips@google.com
b0889a5aa6
This CL effectively reverts:
...
r5997 Altered arcTo's canonical points to (usually) be convex (https://codereview.appspot.com/6709051/ )
r9928 GM (and fix) for drawArc capping issue (https://codereview.chromium.org/18271003/ )
Instead of pushing some of the on-curve points out to attain convexity, this patch pulls all the off curve points in.
R=reed@google.com
Review URL: https://codereview.chromium.org/24810002
git-svn-id: http://skia.googlecode.com/svn/trunk@11504 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 17:05:59 +00:00
skia.committer@gmail.com
65caeaf32d
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11493 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 07:01:29 +00:00
scroggo@google.com
fd67f2f0a3
Fix a warning.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11489 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 21:49:46 +00:00
scroggo@google.com
83fd2c7c43
Add a buffered SkStream class.
...
This is used by Android to buffer an input stream which may not
otherwise be able to rewind.
Add a test for the new class.
R=bungeman@google.com , mtklein@google.com , reed@google.com
Review URL: https://codereview.chromium.org/23717055
git-svn-id: http://skia.googlecode.com/svn/trunk@11488 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 21:35:39 +00:00
reed@google.com
939ca7ce86
move GrMalloc, GrFree, Gr_bzero to their sk equivalents
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/23566022
git-svn-id: http://skia.googlecode.com/svn/trunk@11486 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 19:56:51 +00:00
reed@google.com
baed71fbfe
add counting to Globals, and refactor some for clarity
...
BUG=
Review URL: https://codereview.chromium.org/24447003
git-svn-id: http://skia.googlecode.com/svn/trunk@11484 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 19:28:27 +00:00
commit-bot@chromium.org
2c86fbb0b1
Add SkDivMod with a special case for ARM.
...
BUG=skia:1663
R=djsollen@google.com , tomhudson@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/24159009
git-svn-id: http://skia.googlecode.com/svn/trunk@11482 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 19:22:54 +00:00
sugoi@google.com
0ac74b2c0d
Added SkTileImageFilter to SkFlattenable::InitializeFlattenables()
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/24764003
git-svn-id: http://skia.googlecode.com/svn/trunk@11477 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 17:03:38 +00:00
commit-bot@chromium.org
1a4fb70c8a
Moving 4 SkImageFilter derived classes from blink to skia
...
There were 4 classes in blink that derived from SkImageFilter :
- TileImageFilter -> SkTileImageFilter
- OffsetImageFilter -> SkOffsetImageFilter (already existed)
- FloodImageFilter -> SkFloodImageFilter
- CompositeImageFilter -> SkCompositeImageFilter
All functions were copied as is, without modification (except for warnings fixes), except for the offset filter, which was merged into the existing SkOffsetImageFilter class, as a special case when a crop rect is provided. Since the names won't clash with the names in blink, it should be easy to integrate them in blink later and fix issues, if needed.
BUG=
R=senorblanco@google.com , senorblanco@chromium.org , bsalomon@google.com , reed@google.com , mtklein@google.com
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24157005
git-svn-id: http://skia.googlecode.com/svn/trunk@11475 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 16:09:28 +00:00
commit-bot@chromium.org
9529441447
GrAtlas refactor: Replace GrMaskFormat usage in GrAtlas with GrPixelConfig.
...
This gets the font-specific GrMaskFormat out of GrAtlas and replaces it with
more generic configs, allowing GrAtlas to be used for other things.
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/24751003
git-svn-id: http://skia.googlecode.com/svn/trunk@11474 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 15:28:40 +00:00
commit-bot@chromium.org
4cc26324e3
ARM Skia NEON patches - 24 - S32_D565_Blend_Dither slight speedup/bugfix
...
BlitRow565: S32_D565_Blend_Dither, slight speedup + bugfix
This patch adds a rewrite of S32_D565_Blend_Dither in intrinsics.
The newer version is faster (10-20% depending on the value of count)
and also supports ARGB as well as ABGR. It also adds the missing
assert at the beginning of the function.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://chromiumcodereview.appspot.com/22566002
git-svn-id: http://skia.googlecode.com/svn/trunk@11473 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 15:25:23 +00:00
commit-bot@chromium.org
97f8167622
We don't flatten or unflatten SkPaintOptionsAndroid. Reproduce and fix.
...
BUG=skia:1625
R=djsollen@google.com , reed@google.com
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/24075010
git-svn-id: http://skia.googlecode.com/svn/trunk@11472 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 15:16:12 +00:00
commit-bot@chromium.org
3fddf0eed6
First pass at font cache refactor: Create an atlas manager per texture
...
This changes the AtlasMgr from a singleton class to one that is
created per-texture. This is the first step in allowing us to create
Atlases of other types (e.g., combine small icons into one big texture).
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/24608002
git-svn-id: http://skia.googlecode.com/svn/trunk@11468 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 12:57:19 +00:00
robertphillips@google.com
ca0c8389e2
Move bound and isFinite into pathref
...
https://codereview.chromium.org/24350006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11467 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-26 12:18:23 +00:00
scroggo@google.com
50955db605
Fix iOS build.
...
More SkStream -> SkStreamRewindable.
git-svn-id: http://skia.googlecode.com/svn/trunk@11463 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 22:10:04 +00:00
scroggo@google.com
b5571b3324
Change SkImageDecoders to take an SkStreamRewindable.
...
Only affects factories, static functions that will use the factories,
and subset decoding, which all require rewinding. The decoders
themselves continue to take an SkStream. This is merely documentation
stating which functions will possibly rewind the passed in SkStream.
This is part of the general change to coordinate SkStreams with
Android's streams, which don't necessarily support rewinding in all
cases.
Update callers to use SkStreamRewindable.
BUG=skia:1572
R=bungeman@google.com , reed@google.com
Review URL: https://codereview.chromium.org/23477009
git-svn-id: http://skia.googlecode.com/svn/trunk@11460 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 21:34:24 +00:00
scroggo@google.com
228f2b8887
Print a better error message.
...
Use format_message to print the proper error message in JPEG decoder.
R=mtklein@google.com
Review URL: https://codereview.chromium.org/24461002
git-svn-id: http://skia.googlecode.com/svn/trunk@11459 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 21:27:31 +00:00
scroggo@google.com
a934899867
Use the default resync_to_restart in jpeg.
...
Our version requires rewinding the stream, which is not always
supported. Instead, depend on jpeg's default version.
R=djsollen@google.com
Review URL: https://codereview.chromium.org/23464068
git-svn-id: http://skia.googlecode.com/svn/trunk@11458 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 21:17:41 +00:00
commit-bot@chromium.org
4382330a15
Replace GR_*_BUILD by their SK_BUILD_FOR_* equivalents.
...
BUG=None
TEST=None, no functional changes.
R=bsalomon@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24253009
git-svn-id: http://skia.googlecode.com/svn/trunk@11457 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-25 20:57:51 +00:00
djsollen@google.com
39a7c7035b
Use different unique identifier for a fallback family.
...
BUG=chromium:266412
R=mtklein@google.com , reed@google.com
Review URL: https://codereview.chromium.org/24288002
git-svn-id: http://skia.googlecode.com/svn/trunk@11451 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-24 20:08:47 +00:00
reed@google.com
dfc740393e
remove obsolete USE_CACHE_HASH
...
BUG=
Review URL: https://codereview.chromium.org/23526082
git-svn-id: http://skia.googlecode.com/svn/trunk@11450 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-24 19:59:44 +00:00
robertphillips@google.com
c8fb998388
Revert r11423 (low hanging calloc fruit)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11427 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-22 20:18:07 +00:00
skia.committer@gmail.com
572a865846
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11426 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-21 07:01:53 +00:00
mtklein@google.com
2905ff552c
low hanging calloc fruit
...
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/24267014
git-svn-id: http://skia.googlecode.com/svn/trunk@11423 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 19:59:47 +00:00
reed@google.com
d28ba8010c
promote SkImage::AlphaType to SkAlphaType
...
BUG=
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/24130009
git-svn-id: http://skia.googlecode.com/svn/trunk@11421 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 19:33:52 +00:00
commit-bot@chromium.org
d2cfa7422e
[PDF] clear() and drawPaint() where applying the initial transform twice.
...
BUG=b/10845219
R=edisonn@google.com , djsollen@google.com
Author: vandebo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24130010
git-svn-id: http://skia.googlecode.com/svn/trunk@11420 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 18:58:30 +00:00
bungeman@google.com
c526c71acd
Map Calibri to Carlito
...
Chrome OS will have Carlito as a metric-compatible replacement for Calibri.
This change has to be combined with a Chrome OS change to add
Calibri and configure fontconfig accordingly.
BUG=280557
TEST=With the CrOS change, a page using Calibri will use Carlito instead of the default fallback font (Arimo in case of English UI).
R=bungeman@google.com
Review URL: https://codereview.chromium.org/23618061
git-svn-id: http://skia.googlecode.com/svn/trunk@11418 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 17:41:52 +00:00
bungeman@google.com
dd88eccb22
Fix slight hinting with GDI.
...
Sometimes GDI manages to return a different number of points for hinted
and non-hinted outlines. This change handles that case and falls back
to non-hinted. This does not re-enable slight hinting, so there should be
no observable difference in tests. There are still issues with 'D' in
some font/size combinations where 'flips' are used.
git-svn-id: http://skia.googlecode.com/svn/trunk@11417 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 17:25:31 +00:00
commit-bot@chromium.org
0060159457
ARM Skia NEON patches - 21 - new NEON S32_D565_Opaque
...
BlitRow565: NEON version of S32_D565_Opaque
Here's a new implementation of S32_D565_Opaque in NEON. It
improves dramatically the speed compared to S32A_D565_Opaque.
Here are the benchmark results (speedup vs. existing NEON):
+-------+-----------+------------+
| count | Cortex-A9 | Cortex-A15 |
+-------+-----------+------------+
| 1 | +130% | +139% |
+-------+-----------+------------+
| 2 | +65,2% | +51% |
+-------+-----------+------------+
| 4 | -25,5% | +10,2% |
+-------+-----------+------------+
| 8 | +63,8% | +32,1% |
+-------+-----------+------------+
| 16 | +110% | +49,2% |
+-------+-----------+------------+
| 64 | +153% | +123,5% |
+-------+-----------+------------+
| 256 | +151% | +144,7% |
+-------+-----------+------------+
| 1024 | +272% | +157,2% |
+-------+-----------+------------+
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://chromiumcodereview.appspot.com/22351006
git-svn-id: http://skia.googlecode.com/svn/trunk@11415 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 15:38:49 +00:00
mtklein@google.com
519f9677a4
Add sk_calloc. Remove SkMemory_stdlib, which seems unused.
...
I'm seeing basically no difference between malloc + bzero and calloc on my desktop, but on a Galaxy Nexus calloc is never slower, and significantly faster once the allocation size becomes large, both for allocation and for _reading_.
BUG=skia:1662
R=reed@google.com
Review URL: https://codereview.chromium.org/24251008
git-svn-id: http://skia.googlecode.com/svn/trunk@11414 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 14:31:45 +00:00
skia.committer@gmail.com
f91e3d4f54
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11411 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 07:01:33 +00:00
commit-bot@chromium.org
c5e57bd0a3
silence the error test to be a better citizen
...
BUG=
R=caryclark@google.com , bsalomon@google.com , tfarina@chromium.org , mtklein@google.com
Author: humper@google.com
Review URL: https://chromiumcodereview.appspot.com/23481012
git-svn-id: http://skia.googlecode.com/svn/trunk@11409 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 22:11:38 +00:00
djsollen@google.com
9902c38f48
Add new entry point that supports fallback font selection based on language.
...
BUG= chromium:287995
R=reed@google.com , wangxianzhu@chromium.org
Review URL: https://codereview.chromium.org/23819067
git-svn-id: http://skia.googlecode.com/svn/trunk@11394 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 18:22:30 +00:00
edisonn@google.com
aa6c4d2587
pdf: report NYI features, and fail gracefully when something is not supported in pdf.
...
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/23654036
git-svn-id: http://skia.googlecode.com/svn/trunk@11388 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 17:36:47 +00:00
senorblanco@chromium.org
962c8864e4
Implement crop rect support for the merge image filter.
...
Note: this will require rebaselining of the imagefilterscropped and testimagefilters GMs.
R=reed@google.com
Review URL: https://codereview.chromium.org/23600047
git-svn-id: http://skia.googlecode.com/svn/trunk@11387 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 17:26:47 +00:00
robertphillips@google.com
52c7526211
Reenable GrAAHairlinePathRenderer assert w/ fix
...
https://codereview.chromium.org/24269004/
git-svn-id: http://skia.googlecode.com/svn/trunk@11385 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 16:36:43 +00:00
djsollen@google.com
1f584ed3f4
Update Android's FontHost to return NULL if familyName does not match
...
R=scroggo@google.com , wangxianzhu@chromium.org
Review URL: https://codereview.chromium.org/23601041
git-svn-id: http://skia.googlecode.com/svn/trunk@11377 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 12:08:40 +00:00
skia.committer@gmail.com
2262c58802
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11375 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 07:25:55 +00:00
robertphillips@google.com
4fe0555a36
Temporarily disable assert in GrAAHairlinePathRenderer.cpp
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11369 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 01:07:14 +00:00
robertphillips@google.com
9528bdb0dc
Don't reuse scratch textures update
...
https://codereview.chromium.org/23609026/
git-svn-id: http://skia.googlecode.com/svn/trunk@11366 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 22:33:57 +00:00
robertphillips@google.com
ada90dac10
"Fix" for hairline corner bugs
...
https://codereview.chromium.org/23708036/
git-svn-id: http://skia.googlecode.com/svn/trunk@11365 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 22:14:49 +00:00
reed@google.com
d44d988127
fix fontconfig backend to only cache new fonts if their outName was unique
...
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/23710072
git-svn-id: http://skia.googlecode.com/svn/trunk@11364 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 20:32:25 +00:00
commit-bot@chromium.org
07f6cf372d
fix printing of error messages in canvasstatetest.
...
R=scroggo@google.com , caryclark@google.com
Author: djsollen@google.com
Review URL: https://chromiumcodereview.appspot.com/23477067
git-svn-id: http://skia.googlecode.com/svn/trunk@11363 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 20:15:12 +00:00
edisonn@google.com
26d2e046cd
pdf: write only ToUnicode mappings needed by the font, trimming anything out of [firstChar, lastChar] interval.
...
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/23519006
git-svn-id: http://skia.googlecode.com/svn/trunk@11360 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 19:29:08 +00:00
djsollen@google.com
286a8830f5
cleanup XML_Parser after reading android config files.
...
This CL is based on one submitted for AOSP review...
Fix memory leak in parseConfigFile()
Need to call XML_ParserFree() on parsers created by XML_ParserCreate()
Signed-off-by: Carton He <carton.he@marvell.com>
https://android-review.googlesource.com/#/c/65690/1
R=mtklein@google.com
Review URL: https://codereview.chromium.org/24171003
git-svn-id: http://skia.googlecode.com/svn/trunk@11357 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 18:59:29 +00:00
commit-bot@chromium.org
5898dce287
Attempt to remove 64 bit min size for NPOT resized texture.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/24123003
git-svn-id: http://skia.googlecode.com/svn/trunk@11356 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 18:52:16 +00:00
commit-bot@chromium.org
a0b40280a4
Replace uses of GrNoncopyable by SkNoncopyable.
...
BUG=None
TEST=None, no functional changes.
R=bsalomon@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23483042
git-svn-id: http://skia.googlecode.com/svn/trunk@11341 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 13:00:55 +00:00
commit-bot@chromium.org
0694ea7f6a
Fix to allow ovals GM to finish on N7
...
R=jvanverth@google.com , robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23477079
git-svn-id: http://skia.googlecode.com/svn/trunk@11340 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 13:00:28 +00:00
commit-bot@chromium.org
688d362b45
ARM Skia NEON patches - 23 - S32_D565_Opaque_Dither cleanup/bugfix/speed
...
BlitRow565: S32_D565_Opaque_Dither: cleaning / bugfix
This patch brings a little code cleaning (spaces/comments) and a little
speed improvement (by using post-incrementation in the asm) but more
importantly it fixes a bug on Linux. The new code now supports ARGB
as well as ABGR.
I removed the comment as I have confirmed with benchmarks that this
code bring a *massive* (3x-7x) speedup compared to the C code.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://chromiumcodereview.appspot.com/22269003
git-svn-id: http://skia.googlecode.com/svn/trunk@11339 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 13:00:21 +00:00
skia.committer@gmail.com
2291e72b99
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11336 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 07:01:33 +00:00
reed@google.com
636d87a3f4
update devicelooper to skip internal tiles that are empty, and unittests
...
BUG=
Review URL: https://codereview.chromium.org/23463040
git-svn-id: http://skia.googlecode.com/svn/trunk@11331 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 20:03:43 +00:00
edisonn@google.com
8135323f70
pdf: ifgnore shader colors applied for 0 range.
...
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/23654044
git-svn-id: http://skia.googlecode.com/svn/trunk@11322 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 17:17:47 +00:00
senorblanco@chromium.org
8fcad98791
Implement crop rect for the dilate and erode (morphology) filters. This provoked some cleanup on the GPU side: apply_morphology() now deals with SkBitmaps, rather than GrTextures. There's still a clear opportunity for more refactoring between the two filters.
...
Note: this adds some test cases to the morphology GM, so it will require a rebaseline.
R=bsalomon@google.com , reed@google.com
Review URL: https://codereview.chromium.org/23892011
git-svn-id: http://skia.googlecode.com/svn/trunk@11313 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 13:41:43 +00:00
fmalita@google.com
ef45a646a7
[External patch] Source-over support for SkLumaXfermode.
...
This is a patch by Andrei Parvu <parvu@adobe.com> (Adobe CLA signer).
Original CL/review: https://codereview.chromium.org/24078006/
GM:lumamode will need rebaselining after landing this.
---
In order to use CSS luminance masking, we need to be able to create an
instance of SkLumaXfermode which can receive a kSrcOver mode, and applies
that mode after converting the source using the luminance-to-alpha
coefficients.
BUG=289420
R=reed@google.com
Review URL: https://codereview.chromium.org/23710053
git-svn-id: http://skia.googlecode.com/svn/trunk@11312 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 13:09:16 +00:00
robertphillips@google.com
07f81a57ba
Baby step in making SkGpuDevice no longer derive from SkBitmapDevice
...
https://codereview.chromium.org/23641008/
git-svn-id: http://skia.googlecode.com/svn/trunk@11311 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 12:26:23 +00:00
skia.committer@gmail.com
a604c4f971
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11309 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-17 07:01:20 +00:00
jvanverth@google.com
bbe55fdf66
Have multiple plotmgrs, one for each mask format.
...
Only flush/purge those strikes that match our format.
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/24047005
git-svn-id: http://skia.googlecode.com/svn/trunk@11303 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 20:28:37 +00:00
jvanverth@google.com
a2f4b15d4e
Don't declare displayCache variable if PROGRAM_CACHE_STATS not defined.
...
BUG=
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/23757053
git-svn-id: http://skia.googlecode.com/svn/trunk@11301 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 20:00:46 +00:00
jvanverth@google.com
5c9b6faeff
Only display program cache info if RTConf flag is set.
...
Addresses: https://code.google.com/p/skia/issues/detail?id=1615
R=caryclark@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/23947006
git-svn-id: http://skia.googlecode.com/svn/trunk@11300 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 19:40:31 +00:00
caryclark@google.com
570863f2e2
path ops work in progress
...
path ops work in progress
BUG=
Review URL: https://codereview.chromium.org/21359002
git-svn-id: http://skia.googlecode.com/svn/trunk@11291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 15:55:01 +00:00
robertphillips@google.com
24ddde9758
Revert 11247, 11250, 11251, 11257, and 11279 to unblock DEPS roll ( https://codereview.chromium.org/24159002/ )
...
11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11257 Canary build fix - https://codereview.chromium.org/23532068
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11288 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 14:04:05 +00:00
robertphillips@google.com
ba6e954140
Revert the revert of 11247, 11250, 11251 and 11279 (Chrome already relies on changes in r11247)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11287 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 13:40:12 +00:00
robertphillips@google.com
478884f7d3
Revert 11247, 11250, 11251 and 11279 to unblock DEPS roll ( https://codereview.chromium.org/24159002/ )
...
11279 Sanitizing source files in Housekeeper-Nightly - https://code.google.com/p/skia/source/detail?r=11279
11251 More warnings as errors fixes - https://code.google.com/p/skia/source/detail?r=11251
11250 Warnings as errors fix - https://code.google.com/p/skia/source/detail?r=11250
11247 Initial error handling code - https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11285 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 13:19:11 +00:00
skia.committer@gmail.com
dc9888c409
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11279 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-14 07:01:34 +00:00
reed@google.com
cee9dcb837
start to remove lockPixels from bitmapshader
...
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/23591030
git-svn-id: http://skia.googlecode.com/svn/trunk@11258 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 16:04:49 +00:00
robertphillips@google.com
558d5d3f08
Warnings as errors fix
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11250 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 12:54:33 +00:00
commit-bot@chromium.org
4b681bc95b
Fixed issues found by fuzzer
...
Last week, the fuzzer found a few numerical issue with filters and I had written some fixes for them. Here are the fixes with some unit tests.
For senorblanco : So I figured out what was asserting when we'd get a 0 width "result" in SkBicubicImageFilter::onFilterImage(). Basically, if the "result" SkBitmap object calls SkBitmap::setConfig() with "width" and/or "height" set to 0, then the SkBitmap object will call SkBitmap::reset(), making the SkBitmap object's config invalid. At this point, calling SkBitmap::getAddr32() will assert, even without attempting to dereference the data pointer, because the SkBitmap's config is invalid. If height is valid, but width is 0, then this call to SkBitmap::getAddr32() happens directly in SkBicubicImageFilter::onFilterImage() a few lines lower and asserts right away.
BUG=
R=senorblanco@google.com , senorblanco@chromium.org , bsalomon@google.com
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23533042
git-svn-id: http://skia.googlecode.com/svn/trunk@11249 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 12:40:02 +00:00
commit-bot@chromium.org
5792cded61
Initial error handling code
...
I made it as simple as possible. The impact seems minimal and it should do what's necessary to make this code secure.
BUG=
R=reed@google.com , scroggo@google.com , djsollen@google.com , sugoi@google.com , bsalomon@google.com , mtklein@google.com , senorblanco@google.com , senorblanco@chromium.org
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23021015
git-svn-id: http://skia.googlecode.com/svn/trunk@11247 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 12:39:34 +00:00
commit-bot@chromium.org
2db4eabb77
ARM Skia NEON patches - 19 - Intrinsics version of the Filter32 routines
...
BitmapProcState: translate the filtering routines to intrinsics
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com , mtklein@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://chromiumcodereview.appspot.com/21915004
git-svn-id: http://skia.googlecode.com/svn/trunk@11246 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 12:39:09 +00:00
bsalomon@google.com
e932c98069
re-enable GrIODB
...
R=robertphillips@google.com
BUG=
Review URL: https://codereview.chromium.org/23542023
git-svn-id: http://skia.googlecode.com/svn/trunk@11189 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 19:47:01 +00:00
jvanverth@google.com
6cc8d4470d
Fix for ovals failing on Xoom.
...
The fallback path for ellipses when we don't have GLSL derivative
instructions was only setting one attribute in the effect stage, but
we use two attributes.
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/23514047
git-svn-id: http://skia.googlecode.com/svn/trunk@11184 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 18:24:37 +00:00
robertphillips@google.com
115fbf66a9
Fix uninitialized string bug
...
https://codereview.chromium.org/23499013/
git-svn-id: http://skia.googlecode.com/svn/trunk@11182 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 17:37:03 +00:00
skia.committer@gmail.com
9a070f24f1
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11176 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 07:01:44 +00:00
commit-bot@chromium.org
e0e7cfe44b
Change old PRG to be SkLCGRandom; change new one to SkRandom
...
The goal here is to get people to start using the new random number
generator, while leaving the old one in place so we don't have to
rebaseline GMs.
R=reed@google.com , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/23576015
git-svn-id: http://skia.googlecode.com/svn/trunk@11169 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 20:09:12 +00:00
bsalomon@google.com
82d1223aec
Two and three color GPU gradients without textures.
...
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/22854005
git-svn-id: http://skia.googlecode.com/svn/trunk@11158 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 15:36:26 +00:00
commit-bot@chromium.org
ce6da4d96a
Improve handling of FF vertex array state
...
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23542013
git-svn-id: http://skia.googlecode.com/svn/trunk@11154 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 14:55:37 +00:00
reed@google.com
beba935f65
remove SK_IGNORE_IMAGE_PRESCALE flag (no longer used)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11153 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 14:20:55 +00:00
reed@google.com
ef0e3190d3
move decision to smash invmatrix into unit-space (for faster repeat/mirror to after the call to possiblyScaleImage(), so we don't confuse that code with a munged matrix. Fixes the scaled_tilemodes gm for HQ
...
BUG=
R=humper@google.com
Review URL: https://codereview.chromium.org/23470005
git-svn-id: http://skia.googlecode.com/svn/trunk@11152 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 13:42:39 +00:00
commit-bot@chromium.org
a4de8c257e
Remove GrRefCnt.h in favor of SkRefCnt.h
...
This removes GrRefCnt.h with all its tyepdefs and #defines and just switch them
to the Sk* equivalents.
GrSafeSetNull was promoted to SkSafeSetNull in SkRefCnt.h.
BUG=None
TEST=none, no functional changes.
R=bsalomon@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23904003
git-svn-id: http://skia.googlecode.com/svn/trunk@11151 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 13:38:37 +00:00
bungeman@google.com
53cbb0baac
Return canonical logfont size to 64.
...
This is to fix crbug/277301. With skia:r9057 the canonical logfont size
was set to 2048 in an attempt to get better font metrics. The font size
is now being handled in a cleaner way, so this motivation no longer
exists. However, when the logfont size is large GDI will substitute a
vector font for a bitmap font. This results in incorrect results for
bitmap fonts as they are no longer properly detected by the typeface.
git-svn-id: http://skia.googlecode.com/svn/trunk@11145 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-08 19:36:58 +00:00
skia.committer@gmail.com
b3ec29d2d8
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11143 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-07 07:01:16 +00:00
commit-bot@chromium.org
1acc3d7cc2
Replace uses of GR_DEBUGCODE by SkDEBUGCODE.
...
BUG=None
TEST=none, no functional changes.
R=bsalomon@google.com , robertphillips@google.com
Author: tfarina@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23703010
git-svn-id: http://skia.googlecode.com/svn/trunk@11142 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 23:13:05 +00:00
commit-bot@chromium.org
b57a30d8f5
Remove dead code from libwebp image decoder
...
R=scroggo@google.com , markkilgard@gmail.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23480043
git-svn-id: http://skia.googlecode.com/svn/trunk@11141 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 21:46:30 +00:00
commit-bot@chromium.org
a91f031653
Add a requiresVertexShader method to GrGLEffect
...
Adds requiresVertexShader to GrGLEffect and updates the necessary
effects to override it and return true. Also reworks GrGLProgram
and GrGLShaderBuilder so the program creates all the GL effects
at the beginning, and determines if it needs a vertex shader before
creating the shader builder.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://chromiumcodereview.appspot.com/23471008
git-svn-id: http://skia.googlecode.com/svn/trunk@11140 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 20:19:56 +00:00
bsalomon@google.com
e65d76f0fc
Remove coverage msaa func from android grglinterface setup
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11139 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 20:08:50 +00:00
commit-bot@chromium.org
040fd8f567
Rip out CSAA support
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23882009
git-svn-id: http://skia.googlecode.com/svn/trunk@11138 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 20:00:41 +00:00
commit-bot@chromium.org
96a7a9623f
Fix for aliasing in device-independent ovals on Nexus 10.
...
Switch to using two attributes so that dFdx and dFdy generate valid results.
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/23992005
git-svn-id: http://skia.googlecode.com/svn/trunk@11137 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 19:46:48 +00:00
commit-bot@chromium.org
1e627276c5
Fallback to GLES context when GL context setup fails at any stage.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23902015
git-svn-id: http://skia.googlecode.com/svn/trunk@11135 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 18:57:14 +00:00
djsollen@google.com
6d2fef9834
Update the freetype backed fonthost to keep the style and fixed width attributes for a font stream.
...
This fixes a regression in Android when switching from FontHost_android
R=reed@google.com
Review URL: https://codereview.chromium.org/23966003
git-svn-id: http://skia.googlecode.com/svn/trunk@11134 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 18:00:04 +00:00
jvanverth@google.com
bfe2b9d3a2
Move oval and rect renderer includes to private interface
...
R=bsalomon@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/23513016
git-svn-id: http://skia.googlecode.com/svn/trunk@11132 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 16:57:29 +00:00
commit-bot@chromium.org
91a798f121
alpha threshold bitmap shader
...
Committed: http://code.google.com/p/skia/source/detail?r=11122
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23707019
git-svn-id: http://skia.googlecode.com/svn/trunk@11131 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 15:31:06 +00:00
commit-bot@chromium.org
04c500fd75
Update to allow packed depth-stencil on ES3
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/22880023
git-svn-id: http://skia.googlecode.com/svn/trunk@11130 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 15:28:01 +00:00
robertphillips@google.com
b7061176c7
Push sigma-based blur interface into our GMs/benches/tests/samplecode
...
https://codereview.chromium.org/23701006/
git-svn-id: http://skia.googlecode.com/svn/trunk@11129 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 14:16:12 +00:00
djsollen@google.com
b27eba7c28
fix regression in fallback chain where we don't account for the original font style.
...
This CL also enforces that the language and variant are the same for all fonts
within a given fallback family.
R=reed@google.com
Review URL: https://codereview.chromium.org/23670009
git-svn-id: http://skia.googlecode.com/svn/trunk@11128 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 12:59:50 +00:00
reed@google.com
e15d9ecef8
move platformConvolutionProcs() call to right before we need it
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11127 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 12:57:45 +00:00
skia.committer@gmail.com
6fc1b49989
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11126 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-06 07:01:45 +00:00
commit-bot@chromium.org
a8e5a06f69
Add support for ES3 MSAA.
...
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23404002
git-svn-id: http://skia.googlecode.com/svn/trunk@11124 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 23:44:09 +00:00
bsalomon@google.com
67db510c9c
Revert "alpha threshold bitmap shader"
...
This reverts commit r11122.
git-svn-id: http://skia.googlecode.com/svn/trunk@11123 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 22:48:05 +00:00
commit-bot@chromium.org
4ec4cf93b7
alpha threshold bitmap shader
...
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23707019
git-svn-id: http://skia.googlecode.com/svn/trunk@11122 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 21:54:04 +00:00
reed@google.com
48e926044c
add SkConvolutionProcs* to the none platformConvolutionProcs() signature
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11120 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 20:51:43 +00:00
reed@google.com
fed04b3431
remove fConvolutionProcs from State, and just use it locally
...
BUG=
R=humper@google.com
Review URL: https://codereview.chromium.org/23796005
git-svn-id: http://skia.googlecode.com/svn/trunk@11118 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 20:31:17 +00:00
vandebo@chromium.org
938ea62176
[PDF] Rewind the font stream if font subsetting fails.
...
R=edisonn@google.com
Review URL: https://codereview.chromium.org/23654012
git-svn-id: http://skia.googlecode.com/svn/trunk@11116 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 19:44:44 +00:00
commit-bot@chromium.org
5242ed761f
Add device-independent rendering of ovals, take two.
...
This permits GPU support for arbitrary matrices. The only exception is
not all stroked ovals are supported, as thin ovals + fat strokes do not
produce elliptical borders.
R=bsalomon@google.com , robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/23701013
git-svn-id: http://skia.googlecode.com/svn/trunk@11115 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 19:26:51 +00:00
reed@google.com
40039a350b
simplify making translate only invmatrix
...
BUG=
R=humper@google.com
Review URL: https://codereview.chromium.org/23875010
git-svn-id: http://skia.googlecode.com/svn/trunk@11114 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 19:09:57 +00:00
commit-bot@chromium.org
215a682d2d
Add getGLMatrix method to MatrixState
...
Removes redundant code by consolidating it into a single method. No
change in functionality, this is strictly a refactoring.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://chromiumcodereview.appspot.com/23767005
git-svn-id: http://skia.googlecode.com/svn/trunk@11112 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 18:28:42 +00:00
commit-bot@chromium.org
9188a15f84
Add a GrGpuGL reference for GrGLProgram/GrGLUniformManager
...
Updates GrGLProgram and GrGLUniformManager to keep a GrGpuGL reference
instead of one for GrGLContextInfo. No change in functionality, this
is in preparation to support fixed function GL calls for vertexless
shaders.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://chromiumcodereview.appspot.com/23636011
git-svn-id: http://skia.googlecode.com/svn/trunk@11111 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 18:28:24 +00:00
commit-bot@chromium.org
cf292b7b32
Added a missing filter in SkFlattenable::InitializeFlattenables().
...
BUG=
R=reed@google.com , scroggo@google.com , djsollen@google.com , mtklein@google.com
Author: sugoi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23444005
git-svn-id: http://skia.googlecode.com/svn/trunk@11110 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 18:28:08 +00:00
commit-bot@chromium.org
a8c09668f9
ARM Skia NEON patches - 18 - Preparation work for BitmapProcState
...
BitmapProcState: clean a little and get rid of some asm
replacing the apparently stupid dx+dx+dx leads to more instructions
being generated.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BitmapProcState: move code common to C and NEON to a separate header
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://chromiumcodereview.appspot.com/21931002
git-svn-id: http://skia.googlecode.com/svn/trunk@11109 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 18:27:57 +00:00
robertphillips@google.com
3dfa4cc07c
Add test to exercise extreme blur sigmas
...
https://codereview.chromium.org/23530039/
git-svn-id: http://skia.googlecode.com/svn/trunk@11099 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 16:39:03 +00:00
skia.committer@gmail.com
c3723db387
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11092 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-05 07:01:19 +00:00
humper@google.com
d1af237d7d
fix the onIsEqual method on the new bicubic effect to consider the texture accesses as well as the textures
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11090 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 20:32:58 +00:00
humper@google.com
30df03ce78
forgot to guard GPU includes when SK_SUPPORT_GPU not defined
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11089 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 19:57:11 +00:00
bsalomon@google.com
08bc50854b
Fix ES2 context init.
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/23534045
git-svn-id: http://skia.googlecode.com/svn/trunk@11088 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 19:32:14 +00:00
humper@google.com
3aad3b01af
add support for high quality image filtering on the GPU
...
R=bsalomon@google.com , reed@google.com
Review URL: https://codereview.chromium.org/23779003
git-svn-id: http://skia.googlecode.com/svn/trunk@11087 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 19:23:53 +00:00
djsollen@google.com
19bcf6e807
fix broken clang build
...
R=mtklein@google.com
Review URL: https://codereview.chromium.org/23724014
git-svn-id: http://skia.googlecode.com/svn/trunk@11084 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 17:35:39 +00:00
mtklein@google.com
bd6343b1d6
Rewrite SkTRegistry to take any trivially-copyable type.
...
Obviously these are all currently function pointers of type T(*)(P) for various
T and P. In bench refactoring, I'm trying to register a function pointer of
type T(*)(), which can't be done as is (passing P=void doesn't work). This
also lets us register things like primitives, which is conceivable useful.
BUG=
R=reed@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/23453031
git-svn-id: http://skia.googlecode.com/svn/trunk@11082 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 17:20:18 +00:00
djsollen@google.com
339e79fbea
Add SkCanvasStack and update the Canvas utilities to use it.
...
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/23865004
git-svn-id: http://skia.googlecode.com/svn/trunk@11081 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 17:16:00 +00:00
jvanverth@google.com
059a5a339b
Reverting r11075.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11080 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 16:40:37 +00:00
commit-bot@chromium.org
97f74abcbc
Add device-independent GPU rendering of ovals.
...
This permits GPU support for arbitrary matrices. The only exception is not all stroked ovals are supported, as thin ovals and fat strokes do not produce ellipses.
R=robertphillips@google.com , bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/23719004
git-svn-id: http://skia.googlecode.com/svn/trunk@11075 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 14:14:17 +00:00
skia.committer@gmail.com
85092f05c4
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11071 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-04 07:01:39 +00:00
commit-bot@chromium.org
106655efdf
Fix convex path renderer bounds computation
...
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23905005
git-svn-id: http://skia.googlecode.com/svn/trunk@11069 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 21:28:55 +00:00
jvanverth@google.com
25f72ed034
Fix Matrix44Test and double-to-float conversion in SVD code
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11067 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 19:46:16 +00:00
commit-bot@chromium.org
5b2e2640ed
Revise SVD code to remove arctangents.
...
Also added bench for timing matrix decomposition.
R=reed@google.com
Author: jvanverth@google.com
Review URL: https://chromiumcodereview.appspot.com/23596006
git-svn-id: http://skia.googlecode.com/svn/trunk@11066 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 19:08:14 +00:00
mtklein@google.com
8b4ba63735
Fix bug in SkWriter32.
...
If you give SkWriter32 external storage but that external storage is too small
for the first reservation you make, you'll hit an assert in debug mode.
I think the answer is to simply remove the SkASSERT. Added a test.
BUG=
R=reed@google.com
Review URL: https://codereview.chromium.org/23646007
git-svn-id: http://skia.googlecode.com/svn/trunk@11062 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 18:07:01 +00:00
commit-bot@chromium.org
f5897f83e6
Add OpenGL 4.4 support to SkNativeGLContext and GrGLCreateNativeInterface android versions.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23702015
git-svn-id: http://skia.googlecode.com/svn/trunk@11060 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 17:50:50 +00:00
robertphillips@google.com
112a23e0fa
Hamfisted "fix" for pinterest blur crash
...
https://codereview.chromium.org/23819014/
git-svn-id: http://skia.googlecode.com/svn/trunk@11057 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 17:17:43 +00:00
commit-bot@chromium.org
b8bd6cbbcd
Fix bounds computation in GrAAHairlineRenderer
...
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23684008
git-svn-id: http://skia.googlecode.com/svn/trunk@11054 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-03 14:56:17 +00:00
skia.committer@gmail.com
e0c170f7bb
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@11049 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-31 07:01:28 +00:00
commit-bot@chromium.org
5a02cb48fd
Isolate VertexBuilder from GrGLShaderBuilder
...
Adds a nested class to GrGLShaderBuilder called VertexBuilder. Now
GrGLShaderBuilder can only modify the fragment shader directly. In
order to modify the vertex shader, the client code needs to call
getVertexShader, which will return null for vertex-less shaders.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://chromiumcodereview.appspot.com/23754003
git-svn-id: http://skia.googlecode.com/svn/trunk@11046 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-30 20:17:31 +00:00
commit-bot@chromium.org
74a3a2135c
Rename ShaderType enum to ShaderVisibility
...
Renames ShaderType in GrGLShaderBuilder to ShaderVisibility. It is now
used solely as a bitfield. Methods that previously accepted a single
ShaderType value are split into separate calls:
- getShader -> vsGetShader, gsGetShader, fsGetShader
- emiitFunction -> fsEmitFunction
- appendTextureLookup -> fsAppendTextureLookup
No change in functionality. This is a refactoring to allow us to
separate the vertex/geometry and fragment parts of GrGLShaderBuilder.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://chromiumcodereview.appspot.com/23826002
git-svn-id: http://skia.googlecode.com/svn/trunk@11044 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-30 19:43:59 +00:00
commit-bot@chromium.org
3628ad9f13
Add bit to GrGLCaps for fixed function support
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://chromiumcodereview.appspot.com/23587014
git-svn-id: http://skia.googlecode.com/svn/trunk@11043 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-30 19:43:47 +00:00
bsalomon@google.com
f714d513a6
Fix invalid enum error when checking for core profile in GrGLInterface::validate()
...
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/23691022
git-svn-id: http://skia.googlecode.com/svn/trunk@11040 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-30 18:25:21 +00:00