Commit Graph

40543 Commits

Author SHA1 Message Date
reed@android.com
bb9aea999c record dither setting so we can replay it when we (re)decode
git-svn-id: http://skia.googlecode.com/svn/trunk@368 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-24 17:21:05 +00:00
reed@android.com
3bbac13902 update for blitrow_d32 procs
git-svn-id: http://skia.googlecode.com/svn/trunk@367 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-23 18:48:10 +00:00
reed@android.com
c4cae85752 add BlitRow procs for 32->32, to allow for neon and other optimizations.
call these new procs in (nearly) all the places we had inlined loops before.
In once instance (blitter_argb32::blitAntiH) we get different results by a
  tiny bit. The new code is more accurate, and exactly inline with all of the
  other like-minded blits, so I think the change is good going forward.



git-svn-id: http://skia.googlecode.com/svn/trunk@366 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-23 15:06:10 +00:00
reed@android.com
9186103dfd don't put the class name in front of the method
git-svn-id: http://skia.googlecode.com/svn/trunk@365 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-23 00:43:53 +00:00
reed@android.com
6c59a17e1b clear the kHasSpan16 bit for two-point-radial, since we don't implement that
fix perspective loop x (dstX)



git-svn-id: http://skia.googlecode.com/svn/trunk@364 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-22 20:24:05 +00:00
reed@android.com
8e2af7eb89 update sample to use new two-point-radial gradients from senorblanco!!!
git-svn-id: http://skia.googlecode.com/svn/trunk@363 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-22 20:14:42 +00:00
reed@android.com
b53ebeabf0 update golden-master images for tilemodes, after the blur code (used for the
labels) was updated.



git-svn-id: http://skia.googlecode.com/svn/trunk@362 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-22 19:53:52 +00:00
senorblanco@chromium.org
7ef071fc2f Two-point radial gradient implementation.
Review URL:  http://codereview.appspot.com/112058



git-svn-id: http://skia.googlecode.com/svn/trunk@361 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-22 17:25:29 +00:00
reed@android.com
7ab2cf90b6 #if 0 test code for blur, since it references a private header
git-svn-id: http://skia.googlecode.com/svn/trunk@360 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-21 16:01:32 +00:00
reed@android.com
4913b7794a add tests for blurmask
git-svn-id: http://skia.googlecode.com/svn/trunk@359 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-21 00:27:39 +00:00
reed@android.com
4560767bb0 fix sumbuffer to initialize its top and left colum/row with zeros. Without this fix we were
effectively chopping off the top row of pixels when we computed a blur.



git-svn-id: http://skia.googlecode.com/svn/trunk@358 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-21 00:27:08 +00:00
reed@android.com
da449a38a2 update with tests for blur
git-svn-id: http://skia.googlecode.com/svn/trunk@357 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-18 20:57:05 +00:00
reed@android.com
0e3c664250 use rowbytes instead of bounds.width()
git-svn-id: http://skia.googlecode.com/svn/trunk@356 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-18 13:41:56 +00:00
reed@android.com
ab7ac026d2 more float/double precision tweaks
git-svn-id: http://skia.googlecode.com/svn/trunk@355 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-18 13:38:43 +00:00
reed@android.com
0b9e2dbf2f use doubles in matrix.invert() to keep more precision, needed for subtle
bugs when drawing stretched bitmaps (like ninepatch) at nasty scale factors
like 1.5 (where the inverse matrix steps 0.333333, 1.0, 1.666667, etc.)



git-svn-id: http://skia.googlecode.com/svn/trunk@354 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-16 17:00:17 +00:00
reed@android.com
ed881c2704 add neon opts for matrix procs
git-svn-id: http://skia.googlecode.com/svn/trunk@353 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-15 14:10:42 +00:00
reed@android.com
ebdeeb8a01 don't magically convert to hairline unless we're < 1.0 in both X and Y. The new routine both checks,
and if legal, returns the new width which will be used to compute a modulated alpha.



git-svn-id: http://skia.googlecode.com/svn/trunk@352 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-03 21:45:49 +00:00
reed@android.com
e9d0060f4d add decode bench
add dictionary for bench tools to see optional cmdline args



git-svn-id: http://skia.googlecode.com/svn/trunk@351 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-02 21:12:42 +00:00
reed@android.com
34e85803c2 update
git-svn-id: http://skia.googlecode.com/svn/trunk@350 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-02 21:11:44 +00:00
reed@android.com
47ca036e29 add
git-svn-id: http://skia.googlecode.com/svn/trunk@349 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-02 02:07:45 +00:00
reed@android.com
de2e7fb96d more unittests (already found/fixed some bugs)
git-svn-id: http://skia.googlecode.com/svn/trunk@348 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-02 02:07:32 +00:00
reed@android.com
e50025a656 rename std words to be UPPER CASE (ugh)
add initial unittests for std words (more to do)



git-svn-id: http://skia.googlecode.com/svn/trunk@347 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-09-01 21:00:44 +00:00
reed@android.com
113244f1e1 add tests for extractAlpha
git-svn-id: http://skia.googlecode.com/svn/trunk@346 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-31 21:04:24 +00:00
reed@android.com
289e4fca43 add missing files
git-svn-id: http://skia.googlecode.com/svn/trunk@345 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-31 18:04:51 +00:00
reed@android.com
19a89f287f add boolean tests and IF/ELSE/END
git-svn-id: http://skia.googlecode.com/svn/trunk@344 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-30 03:24:51 +00:00
reed@android.com
f56e295e88 experimental hack to write a forth engine to drive skia
git-svn-id: http://skia.googlecode.com/svn/trunk@343 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-29 21:30:25 +00:00
reed@android.com
a03a70124d return noErr in clickhandler, so we can get mousemoved events
git-svn-id: http://skia.googlecode.com/svn/trunk@342 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-29 20:33:39 +00:00
reed@android.com
a964028843 http://code.google.com/p/skia/issues/detail?id=32
Detect when we no longer have a valid range for chopping due to finite float
precision, and just return a degenerate cubic at the end.



git-svn-id: http://skia.googlecode.com/svn/trunk@341 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-28 20:06:54 +00:00
reed@android.com
28937283e1 fix gaps in antialiased hairlines (thanks to preda)
expand SampleHairline text to check for clip violations



git-svn-id: http://skia.googlecode.com/svn/trunk@340 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-28 15:34:46 +00:00
reed@android.com
3c9b2a4a0e expand SkShader's flag kConstInY to 16 and 32 variants, allowing a shader
(like gradients) to support predithering. If they do, then they would suppress
kConstInY16, since they no longer are const.

The blitters now check for each flag separately, so we don't have to give up
const-in-Y in the 32bit case, since in that mode we don't care about dithering.



git-svn-id: http://skia.googlecode.com/svn/trunk@339 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-27 19:28:37 +00:00
reed@android.com
2a4d1ff189 allow the gamma to be changed at runtime
git-svn-id: http://skia.googlecode.com/svn/trunk@338 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-26 18:09:58 +00:00
reed@android.com
ff3e92d2f8 show the hairlines after each test iteration
git-svn-id: http://skia.googlecode.com/svn/trunk@337 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-25 20:40:04 +00:00
reed@android.com
c64599649b special case 1x1 bitmaps when drawn as a shader (treat as a solid color)
git-svn-id: http://skia.googlecode.com/svn/trunk@336 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-25 19:15:31 +00:00
reed@android.com
593847a0e0 fix overflow in qsort compare proc
git-svn-id: http://skia.googlecode.com/svn/trunk@335 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-25 18:14:50 +00:00
reed@android.com
0da41dbf5b add detach() method
git-svn-id: http://skia.googlecode.com/svn/trunk@334 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-25 16:03:59 +00:00
reed@android.com
1cdcb5138f fix warning in sampler
lock pixels when we extract alpha
disabling hinting when linear-text is set



git-svn-id: http://skia.googlecode.com/svn/trunk@333 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-24 19:11:00 +00:00
reed@android.com
69255fb503 update gm images with new corrected dithering
git-svn-id: http://skia.googlecode.com/svn/trunk@332 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-22 03:48:59 +00:00
reed@android.com
cafc9f9e80 fixes around isOpaque and dithering
- copyTo() now preserves isOpaqueness, and BitmapCopyTest tests it
- bitmap shader doesn't claim to have shadespan16 if dithering is on, since its
  sampler doesn't auto-dither (note that gradients do auto-dither in their
  16bit sampler)
- blitter setup just relies on the shader to report if its 16bit sampler can be
  called (allowing gradients to say yes regardless of dither, but bitmaps to say
  no if dithering is on)



git-svn-id: http://skia.googlecode.com/svn/trunk@331 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-22 03:44:57 +00:00
senorblanco@chromium.org
c41513c4da Add a sanity check to MaskSuperBlitter::blitH(), to avoid a subsequent
crash in *Blitter::blitMask(), and add some more asserts.

http://codereview.appspot.com/110050
http://crbug.com/17569



git-svn-id: http://skia.googlecode.com/svn/trunk@330 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-21 22:00:12 +00:00
deanm@chromium.org
d5ed395048 Fix compliation on gcc-4.3 and ARMv5T
- smulbb is only on ARMv5TE and above (p316, ARM Architecture Reference Manual)
 - an empty clobber list causes a compiler error with my compiler, gcc-4.3.2

Patch by Joel Stanley <joel@jms.id.au>

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


git-svn-id: http://skia.googlecode.com/svn/trunk@329 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-21 17:17:35 +00:00
reed@android.com
755dd4773d respect dither setting in index8->565 sprite case
git-svn-id: http://skia.googlecode.com/svn/trunk@328 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-20 21:29:45 +00:00
deanm@chromium.org
8430cd15bc Fix flipped text orientation on Windows.
Review URL: http://codereview.appspot.com/104105


git-svn-id: http://skia.googlecode.com/svn/trunk@327 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 23:09:52 +00:00
reed@android.com
b049eab2e7 update location of SkNWayCanvas.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@326 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 19:58:53 +00:00
reed@android.com
92a50eaab9 close out previous contour (so we don't miss the last segment)
git-svn-id: http://skia.googlecode.com/svn/trunk@325 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 19:27:37 +00:00
reed@android.com
6c5f6f25b4 add 'r' (rotate) 's' (scale) options to SampleApp to test those matrix ops on
all slides

add beforeChild/afterChild methods for parents to wack the canvas before/after
it draws. These are called after the std child-view translate and clip, unlike
beforeChildren/afterChildren



git-svn-id: http://skia.googlecode.com/svn/trunk@324 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 16:08:38 +00:00
reed@android.com
a2b2c4ba53 fix typo in matrix proc index computation, where we were always taking the
perspective case when affine would have been enough (and lots faster).



git-svn-id: http://skia.googlecode.com/svn/trunk@323 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 15:47:14 +00:00
reed@android.com
4c128c4917 add method to compute max count for a given buffer size in the bitmap shader.
fix bug in quad loop of fill_sequential where we were going one quad too far.



git-svn-id: http://skia.googlecode.com/svn/trunk@322 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-14 13:54:37 +00:00
reed@android.com
a3122b9b1e bzero SkPaint in its constructor, to allow us to cleanly use memcmp in our
operator==, given that we may be padded and not know how to init those pad bytes



git-svn-id: http://skia.googlecode.com/svn/trunk@321 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-13 20:38:25 +00:00
reed@android.com
07d1f008b3 add special matrixprocs when the matrix is at most translate. These are faster
(somewhat) than their scale counterparts, but are also numerically exact for
any size bitmaps. The scale versions, because they operate in a scaled 65535
space, are not always exact for large images (due to SK_Fixed1 / width) loss of
bits



git-svn-id: http://skia.googlecode.com/svn/trunk@320 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-13 19:35:48 +00:00
reed@android.com
f7d5726730 test for non-scaled bitmap tiles
git-svn-id: http://skia.googlecode.com/svn/trunk@319 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-13 19:33:44 +00:00