Commit Graph

3240 Commits

Author SHA1 Message Date
tomhudson@google.com
0435f161fc Close a couple of minor memory leaks, add a valgrind suppression file to
mute complaints about apparent driver bugs.

http://codereview.appspot.com/5837046/



git-svn-id: http://skia.googlecode.com/svn/trunk@3406 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 18:16:39 +00:00
bsalomon@google.com
6036149354 Change vertex buffer size for draw buffer. Hopefully helps with some of the perf regression of r3382 on txt drawing.
git-svn-id: http://skia.googlecode.com/svn/trunk@3405 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 17:47:06 +00:00
djsollen@google.com
b8ff633dba Fix broken android build
git-svn-id: http://skia.googlecode.com/svn/trunk@3404 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 16:04:27 +00:00
djsollen@google.com
ff029606bd Add CreateFallbackForScript to SkTypeface for Android.
WebKit uses HarfBuzz directly to do Complex Text Layout, so it needs to get the
proper SkTypeface to pass it to HarfBuzz. However, on Android, fallback scripts
have no name, and we can only get them by file name each time (CreateFromFile).
This actually breaks the semantics of SkTypeface, which states 'The ID should
be unique for the underlying font file/data, not unique per typeface instance.'

And add 2 helper function to convert between FallbackScripts enum and font file
name. These are useful for WebKit's FontCache, which needs string as key.

https://codereview.appspot.com/5797066/

git-svn-id: http://skia.googlecode.com/svn/trunk@3403 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 15:49:51 +00:00
djsollen@google.com
ae8ae3d1a2 Cleanup sample slide for drawTextOnPath
Review URL: https://codereview.appspot.com/5834048

git-svn-id: http://skia.googlecode.com/svn/trunk@3402 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 15:01:34 +00:00
bsalomon@google.com
1a38d5508f Perform degenerate check in device coords in convex path renderer
Review URL: http://codereview.appspot.com/5821053/



git-svn-id: http://skia.googlecode.com/svn/trunk@3401 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 14:40:46 +00:00
reed@google.com
0724f4320d don't clamp the stopScale to 0 unless it originally exceeded the clip. This is
a tweak on the fix in 3366, but in that earlier change, I mistakenly changed
> to >=. This CL just restores the compare to >



git-svn-id: http://skia.googlecode.com/svn/trunk@3400 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 14:34:40 +00:00
bsalomon@google.com
61f2f2c1c9 Rebaseline GMs from r3397
git-svn-id: http://skia.googlecode.com/svn/trunk@3399 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 14:21:49 +00:00
bsalomon@google.com
1971317bb4 Allow compiler to optimize applying quadratic UV matrix to verts
Code Review: http://codereview.appspot.com/5833048/



git-svn-id: http://skia.googlecode.com/svn/trunk@3398 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 13:51:08 +00:00
tomhudson@google.com
7816a4e840 Close an (incidental) memory leak in gmmain.
Create a suppressions file for gm so that valgrind doesn't warn about
dubious actions the driver takes. There *may* be one of those that we
could do something about...

http://codereview.appspot.com/5820056/



git-svn-id: http://skia.googlecode.com/svn/trunk@3396 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 13:39:51 +00:00
tomhudson@google.com
601d312bd4 Expand SkMatrix type mask from uint8 to uint32, aligning the struct
so there's no uninitialized padding and potentially allowing future
expansion.

http://codereview.appspot.com/5824056/
http://code.google.com/p/skia/issues/detail?id=354



git-svn-id: http://skia.googlecode.com/svn/trunk@3395 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 13:07:25 +00:00
reed@google.com
49794c0cbd make commonBitmap un-virtual. That was a leftover from previous subclassing
I think.



git-svn-id: http://skia.googlecode.com/svn/trunk@3394 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 12:10:47 +00:00
reed@google.com
6005aeb3aa update test
git-svn-id: http://skia.googlecode.com/svn/trunk@3393 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:15:47 +00:00
reed@google.com
0bc9aedcb2 add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3392 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:15:04 +00:00
reed@google.com
45d143daa1 add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3391 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:12:36 +00:00
reed@google.com
dc5f76d806 unittest for kUTF32_TextEncoding
git-svn-id: http://skia.googlecode.com/svn/trunk@3390 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:05:35 +00:00
reed@google.com
e5d7078747 add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3389 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:05:13 +00:00
reed@google.com
6b2f7ea7f4 tweak gm bounds to better fit the content
remove assert that is too strict if the src is the dst of a prev draw
(where alpha might be 0xFE, even if it *should* be 0xFF)



git-svn-id: http://skia.googlecode.com/svn/trunk@3388 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 20:00:42 +00:00
reed@google.com
68bc6f7b45 add kUTF32_TextEncoding
git-svn-id: http://skia.googlecode.com/svn/trunk@3387 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 19:41:55 +00:00
vandebo@chromium.org
610f716b00 Fix four memory leaks uncovered by valgrinding gm tests.
All are triggered by PDF code.
 Two are missing unref's on SkData.
 One is a missing unref on a SkAdvancedTypefaceMetrics.
 The last is missing destruction of SkClipStack internal state.

BUG=526

Review URL: https://codereview.appspot.com/5824049

git-svn-id: http://skia.googlecode.com/svn/trunk@3386 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 18:34:15 +00:00
tomhudson@google.com
af2313e7e7 Disable overly heavy benchmark - 15x slower than any other benchmark
and not giving us particularly important information. It may be useful
to occasionally reactivate it when trying to optimize rectangle blits,
but otherwise it was a waste to have clogging up the performance bots.



git-svn-id: http://skia.googlecode.com/svn/trunk@3385 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 18:33:54 +00:00
robertphillips@google.com
bb89cda7e7 This update fixes the problem with GLX failing to find a valid configuration on Linux laptops (Issue 513).
The base issue here was that the default GLX implementation on some Linux laptops lies about its version numbering. Code in SkNativeGLContext_unix.cpp was checking the version number to avoid using FBConfigs in versions prior to 1.3 and thus incorrectly stopped processing.

To resolve this a separate configuration path has been added that uses the pre-1.3 method (i.e., XGetVisualInfo and glXGetConfig). The run-time version check has also been removed and a #define has been added to toggle between the two implementations. This allows the FBConfig method to be used with the wayward GLX implementation while the legacy method can be used with older implementations.

Please see http://codereview.appspot.com/5823049/ for more information.

git-svn-id: http://skia.googlecode.com/svn/trunk@3384 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 18:06:26 +00:00
bsalomon@google.com
71d59a495f Rebaselines from r3382 for bots that completed before bot reset.
git-svn-id: http://skia.googlecode.com/svn/trunk@3383 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 14:13:11 +00:00
bsalomon@google.com
fb4ce6fe9f Batch path draws.
THIS IS EXPECTED TO SUBTLY CHANGE ONE GM IMAGE, WILL REBASELINE.

Review URL: http://codereview.appspot.com/5796080/




git-svn-id: http://skia.googlecode.com/svn/trunk@3382 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 13:27:54 +00:00
reed@google.com
77613a5038 enable fractionalint (64bit) math in bitmap procs
git-svn-id: http://skia.googlecode.com/svn/trunk@3381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 12:21:17 +00:00
reed@google.com
9faea3af2d add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3380 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 12:19:00 +00:00
reed@google.com
05ebe1a20f add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3379 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 12:17:44 +00:00
reed@google.com
95df6228d1 add baselines
git-svn-id: http://skia.googlecode.com/svn/trunk@3378 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 12:15:07 +00:00
mike@reedtribe.org
602f2272be need to pack the two values into a 32bit long
git-svn-id: http://skia.googlecode.com/svn/trunk@3377 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-14 02:04:40 +00:00
reed@google.com
9f79ece67d add build option to revert hairline-clipping fix from 3366
git-svn-id: http://skia.googlecode.com/svn/trunk@3376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 17:29:54 +00:00
bungeman@google.com
f44f055db4 Rebaseline for r3374.
git-svn-id: http://skia.googlecode.com/svn/trunk@3375 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 15:42:26 +00:00
bungeman@google.com
3aacb419ca Use floats for mask table for accuracy.
http://codereview.appspot.com/5783099/



git-svn-id: http://skia.googlecode.com/svn/trunk@3374 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 14:55:12 +00:00
bsalomon@google.com
73d98aace4 Fix missing return statement
git-svn-id: http://skia.googlecode.com/svn/trunk@3373 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 14:41:19 +00:00
bsalomon@google.com
97805382d8 Add option to automatically flush GrInOrderDrawBuffer based on previewing vtx/idx request sizes
Review URL: http://codereview.appspot.com/5794079/



git-svn-id: http://skia.googlecode.com/svn/trunk@3372 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 14:32:07 +00:00
bsalomon@google.com
e3d7095c23 Change interface on GrDrawTarget to reserve vtx/idx space at same time
Review URL: https://codereview.appspot.com/5796066/


git-svn-id: http://skia.googlecode.com/svn/trunk@3371 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-13 12:40:53 +00:00
reed@google.com
470f07f9a9 promote floats to scalars for the fixed-point build
git-svn-id: http://skia.googlecode.com/svn/trunk@3370 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 21:31:00 +00:00
reed@google.com
c9fa63c869 don't draw in constructor (makes debugging harder)
git-svn-id: http://skia.googlecode.com/svn/trunk@3369 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 21:14:09 +00:00
reed@google.com
7b1859034f add init() method, so we don't draw in our constructor (makes debugging harder)
git-svn-id: http://skia.googlecode.com/svn/trunk@3368 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 21:13:48 +00:00
reed@google.com
0a0726542e add unittest for rev. 3366 -- clipping antihairlines
git-svn-id: http://skia.googlecode.com/svn/trunk@3367 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 21:11:18 +00:00
reed@google.com
adb2e24018 if we are extending past our clip in antihairlines, don't draw that last
row/col (setting its scale to 0), so we don't violate the clip-rule and
possibly double-draw the last pixel.



git-svn-id: http://skia.googlecode.com/svn/trunk@3366 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 20:26:17 +00:00
reed@google.com
f9f258c656 detect all masks, and don't use masksuperblitter with those
git-svn-id: http://skia.googlecode.com/svn/trunk@3364 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 16:09:06 +00:00
djsollen@google.com
8ff1e51c5a Updating SkAvoidXferMode to use new 4byte interp function.
Review URL: https://codereview.appspot.com/5795058

git-svn-id: http://skia.googlecode.com/svn/trunk@3363 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 14:39:20 +00:00
reed@google.com
6adf79746f add SkFourByteInterp256 variant, when the caller has already scaled the last
parameter to 0..256



git-svn-id: http://skia.googlecode.com/svn/trunk@3362 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 14:25:18 +00:00
bsalomon@google.com
208236d2b6 add/delete some comments to path renderer interface
Submitted by Guanqun.Lu@gmail.com

Review URL: http://codereview.appspot.com/5783060/



git-svn-id: http://skia.googlecode.com/svn/trunk@3361 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-12 13:15:33 +00:00
vandebo@chromium.org
188838c208 [PDF] Fix memory hungry inefficiency in pdf resource tracking.
When moving the content of a device into a PDF object like SkPDFFormXObject
or SkPDFShader does, we only need the top level resources in the new object's
resource list, not the recursive set of objects.  Otherwise, when you
put a form on a form on form, etc, references to the objects multiply.

This fixed http://crbug.com/117321

Review URL: https://codereview.appspot.com/5796048

git-svn-id: http://skia.googlecode.com/svn/trunk@3360 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 22:16:58 +00:00
bungeman@google.com
a2d8014e66 Rebaseline for r3358.
git-svn-id: http://skia.googlecode.com/svn/trunk@3359 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 20:52:05 +00:00
bungeman@google.com
d2dae96295 Use default lcd filter until we have the means to specify one.
git-svn-id: http://skia.googlecode.com/svn/trunk@3358 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 20:31:17 +00:00
reed@google.com
f444e8ccda don't flip the fractional bits (low 4) for bilerp when in kMirror_TileMode
Review URL: https://codereview.appspot.com/5795043

git-svn-id: http://skia.googlecode.com/svn/trunk@3357 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 19:59:46 +00:00
vandebo@chromium.org
54ff85c79d [PDF] Fix some fixed/float-point mismatches for image shaders.
BUG=520

Review URL: https://codereview.appspot.com/5787061

git-svn-id: http://skia.googlecode.com/svn/trunk@3356 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 17:18:50 +00:00
tomhudson@google.com
4c4337291d If we try to clip against a path and the path only contains a rect, treat it as a clip against a rect.
(Works around a performance issue: JavaScript Canvas2D API only provides canvas.clipPath(), and we don't
optimize path clips nearly as much as we can rects; this shows up more in Ganesh than in the software
rasterizer.)

http://codereview.appspot.com/5795044/



git-svn-id: http://skia.googlecode.com/svn/trunk@3355 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-09 16:48:20 +00:00