reed@android.com [Fri, 22 May 2009 13:48:35 +0000 (13:48 +0000)]
add sample effects
git-svn-id: http://skia.googlecode.com/svn/trunk@180
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 18 May 2009 15:46:29 +0000 (15:46 +0000)]
init bounds to empty if we return false from getClipBounds()
We were already doing that in one place (empty clip), but now we do it in the
other as well (matrix not invertible).
git-svn-id: http://skia.googlecode.com/svn/trunk@179
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 18 May 2009 04:20:55 +0000 (04:20 +0000)]
shapes checkpoint: move matrix into groupshape and out of shape
git-svn-id: http://skia.googlecode.com/svn/trunk@178
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 18 May 2009 00:47:46 +0000 (00:47 +0000)]
fix parse error:
Issue 63053: Fixed parse error in XML
git-svn-id: http://skia.googlecode.com/svn/trunk@177
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 18 May 2009 00:43:58 +0000 (00:43 +0000)]
Fix reference count on openStream
Issue 62067: SkFontHost_linux.cpp: Reference counting problem
git-svn-id: http://skia.googlecode.com/svn/trunk@176
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 13 May 2009 21:01:21 +0000 (21:01 +0000)]
fix impl of drawPicture
git-svn-id: http://skia.googlecode.com/svn/trunk@175
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 13 May 2009 14:00:33 +0000 (14:00 +0000)]
add SkSize for dimensions
add SkShape baseclass, in the hopes of having SkPicture inherit from that, and
also using shapes as the extension mechanism for things like animated-gif
git-svn-id: http://skia.googlecode.com/svn/trunk@174
2bbb7eff-a529-9590-31e7-
b0007b416f81
weita@google.com [Mon, 11 May 2009 16:06:22 +0000 (16:06 +0000)]
Honor pref config in image decoding whenever possible.
git-svn-id: http://skia.googlecode.com/svn/trunk@173
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 8 May 2009 16:45:52 +0000 (16:45 +0000)]
add SkSize for dimensions
git-svn-id: http://skia.googlecode.com/svn/trunk@172
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 8 May 2009 13:10:38 +0000 (13:10 +0000)]
add SK_USE_OLD_255_TO_256 define to disable alpha+1 change to SkAlpha255To256
git-svn-id: http://skia.googlecode.com/svn/trunk@171
2bbb7eff-a529-9590-31e7-
b0007b416f81
agl@chromium.org [Thu, 7 May 2009 00:48:12 +0000 (00:48 +0000)]
Typo fix for VDMX parsing in Chromium.
TBR=reed
git-svn-id: http://skia.googlecode.com/svn/trunk@170
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 6 May 2009 17:44:34 +0000 (17:44 +0000)]
add canCopyTo(), to preflight if copyTo can succeed. update unittests for it
git-svn-id: http://skia.googlecode.com/svn/trunk@169
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 5 May 2009 23:13:23 +0000 (23:13 +0000)]
fix copyTo to only copy the minimum pixels per row, and to lock the src before
trying to access its colorTable. Update unittest for copyTo. Add sample for
using a mask to clip a layer.
git-svn-id: http://skia.googlecode.com/svn/trunk@168
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 4 May 2009 19:24:56 +0000 (19:24 +0000)]
add simple port of memory APIs, to be used as a template for other platforms
that may want to add new_handler logic or other hooks.
git-svn-id: http://skia.googlecode.com/svn/trunk@167
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 4 May 2009 18:52:54 +0000 (18:52 +0000)]
update license header
git-svn-id: http://skia.googlecode.com/svn/trunk@166
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 4 May 2009 15:00:11 +0000 (15:00 +0000)]
check for 0 upem in freetype
add 32bit-overflow check
git-svn-id: http://skia.googlecode.com/svn/trunk@165
2bbb7eff-a529-9590-31e7-
b0007b416f81
weita@google.com [Sun, 3 May 2009 18:23:30 +0000 (18:23 +0000)]
Allow copying an Index8 bitmap when srcConfig and dstConfig are both
Index8.
Also, change the logic of SkBitmap.copyTo() to do memcpy() if srcConfig
and dstConfig are the same.
git-svn-id: http://skia.googlecode.com/svn/trunk@164
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 1 May 2009 04:00:01 +0000 (04:00 +0000)]
add BitmapCopyTest. Still need to consider the src==no_config case
git-svn-id: http://skia.googlecode.com/svn/trunk@163
2bbb7eff-a529-9590-31e7-
b0007b416f81
agl@chromium.org [Tue, 28 Apr 2009 17:30:01 +0000 (17:30 +0000)]
Add fontconfig support.
Fontconfig is usually found on Linux systems and handles
configuration, parsing and caching issues involved with enumerating
and matching fonts.
This patch adds SkFontHost methods based on fontconfig.
git-svn-id: http://skia.googlecode.com/svn/trunk@162
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 28 Apr 2009 15:27:07 +0000 (15:27 +0000)]
handle interlacing
git-svn-id: http://skia.googlecode.com/svn/trunk@161
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 24 Apr 2009 19:52:53 +0000 (19:52 +0000)]
add skiamge (in tools/) that decodes and encodes images
git-svn-id: http://skia.googlecode.com/svn/trunk@160
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 24 Apr 2009 12:43:40 +0000 (12:43 +0000)]
add ADD xfermode
safely handle (don't draw) if the size of SkMask exceeds 31bits
git-svn-id: http://skia.googlecode.com/svn/trunk@159
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 23 Apr 2009 05:06:33 +0000 (05:06 +0000)]
fix mac build
git-svn-id: http://skia.googlecode.com/svn/trunk@158
2bbb7eff-a529-9590-31e7-
b0007b416f81
agl@chromium.org [Wed, 22 Apr 2009 22:09:04 +0000 (22:09 +0000)]
Sync with Chromium's fork
* Add the following font metrics fields:
+ fAvgCharWidth
+ fXMin
+ fXMax
+ fXHeight
* Add \#if 0'ed includes for the Freetype headers for Xcode, scons and
other tools which chase headers.
* Correctly render 1bpp fonts (mostly Chinese fonts at small sizes)
git-svn-id: http://skia.googlecode.com/svn/trunk@157
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 14 Apr 2009 15:10:55 +0000 (15:10 +0000)]
trivial: fix ws
git-svn-id: http://skia.googlecode.com/svn/trunk@156
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 14 Apr 2009 14:28:22 +0000 (14:28 +0000)]
add SkSfntUtils to parse some known truetype tables
add comments and cleanup to count_tables in SkFontHost_tables.cpp
fix transparency bug in gifs
use (alpha+1) for blending in srcover mode, to ensure opaque results
git-svn-id: http://skia.googlecode.com/svn/trunk@155
2bbb7eff-a529-9590-31e7-
b0007b416f81
agl@chromium.org [Mon, 13 Apr 2009 21:43:40 +0000 (21:43 +0000)]
SkFontHost_tables: fix minor bugs
http://codereview.appspot.com/33092
git-svn-id: http://skia.googlecode.com/svn/trunk@154
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Sun, 12 Apr 2009 01:49:38 +0000 (01:49 +0000)]
update for config/ directory
git-svn-id: http://skia.googlecode.com/svn/trunk@153
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 9 Apr 2009 04:06:54 +0000 (04:06 +0000)]
support -android mode when running tests, which spews out android specific
formatting for their testing env.
git-svn-id: http://skia.googlecode.com/svn/trunk@152
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 8 Apr 2009 18:05:24 +0000 (18:05 +0000)]
move SkUserConfig.h into include/config/ so it can be replaced by changing the
include search list at the Makefile level
git-svn-id: http://skia.googlecode.com/svn/trunk@151
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 8 Apr 2009 05:27:00 +0000 (05:27 +0000)]
implement generateCountGlyphs using new font table apis
git-svn-id: http://skia.googlecode.com/svn/trunk@150
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 8 Apr 2009 05:03:52 +0000 (05:03 +0000)]
add Table apis to SkFontHost
need to implement in _win backend
git-svn-id: http://skia.googlecode.com/svn/trunk@149
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 6 Apr 2009 16:09:53 +0000 (16:09 +0000)]
update SkPostConfig.h to unset LEAN_AND_MEAN if it set it before including <windows.h>
git-svn-id: http://skia.googlecode.com/svn/trunk@148
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 3 Apr 2009 14:26:10 +0000 (14:26 +0000)]
import portability fixes from Chrome around floats
move porting functions for SkDebugf into /ports directory
git-svn-id: http://skia.googlecode.com/svn/trunk@147
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 3 Apr 2009 13:33:51 +0000 (13:33 +0000)]
extend gradients to handle (by clamping) the first and last color position if
it is not at 0 or 1.
git-svn-id: http://skia.googlecode.com/svn/trunk@146
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 2 Apr 2009 21:11:14 +0000 (21:11 +0000)]
replace floorf() with sk_float_floor(), so it builds on platforms w/o floorf
git-svn-id: http://skia.googlecode.com/svn/trunk@145
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 2 Apr 2009 20:49:39 +0000 (20:49 +0000)]
add sample for gradients
git-svn-id: http://skia.googlecode.com/svn/trunk@144
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 2 Apr 2009 16:59:40 +0000 (16:59 +0000)]
cleanup formating (e.g. no trailing spaces)
git-svn-id: http://skia.googlecode.com/svn/trunk@143
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 1 Apr 2009 20:26:42 +0000 (20:26 +0000)]
rename tests/main to testmain.cpp
add ANDROID specific work-around for double-cinit bug
git-svn-id: http://skia.googlecode.com/svn/trunk@142
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 1 Apr 2009 18:38:43 +0000 (18:38 +0000)]
rename bench's main to benchmain.cpp, to avoid multiple files with same name
git-svn-id: http://skia.googlecode.com/svn/trunk@141
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 1 Apr 2009 18:31:44 +0000 (18:31 +0000)]
API change: SkPath computeBounds -> getBounds
git-svn-id: http://skia.googlecode.com/svn/trunk@140
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 31 Mar 2009 03:48:49 +0000 (03:48 +0000)]
add -pict option to bench, which draws everything through a picture, and then
compares the result to the original draws
git-svn-id: http://skia.googlecode.com/svn/trunk@139
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 30 Mar 2009 21:02:14 +0000 (21:02 +0000)]
Add SkChunkAlloc::unalloc() to undo the last allocation, useful if the caller wants to treat the allocats like temp memory (see PictureRecord)
Call unalloc if a paint (or other cached object) is already in our list for picture recording
Use correct CompareType macro in SkCanvas::quickReject
git-svn-id: http://skia.googlecode.com/svn/trunk@138
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 27 Mar 2009 12:33:50 +0000 (12:33 +0000)]
make bitmap width/height 32bits, matching the API
git-svn-id: http://skia.googlecode.com/svn/trunk@137
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 24 Mar 2009 18:47:35 +0000 (18:47 +0000)]
rename drawable to drawing for now, so we don't collide with animator
remove sk_throw in pixelref. a debug statement is enough.
git-svn-id: http://skia.googlecode.com/svn/trunk@136
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 23 Mar 2009 20:11:11 +0000 (20:11 +0000)]
use static_cast
fix comments
git-svn-id: http://skia.googlecode.com/svn/trunk@135
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 23 Mar 2009 16:05:19 +0000 (16:05 +0000)]
add check/hack to avoid drawing outside of the clip for hairlines
git-svn-id: http://skia.googlecode.com/svn/trunk@134
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 23 Mar 2009 03:27:38 +0000 (03:27 +0000)]
check-point for drawables (experimental)
git-svn-id: http://skia.googlecode.com/svn/trunk@133
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Mar 2009 12:23:07 +0000 (12:23 +0000)]
pull latest from android
git-svn-id: http://skia.googlecode.com/svn/trunk@132
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Mar 2009 12:16:09 +0000 (12:16 +0000)]
check for NaN in path iterator (otherwise we have an infinite loop)
git-svn-id: http://skia.googlecode.com/svn/trunk@131
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Mar 2009 12:08:57 +0000 (12:08 +0000)]
forgot to initialize fFactory in the unflatten constructor
git-svn-id: http://skia.googlecode.com/svn/trunk@130
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Mar 2009 04:59:37 +0000 (04:59 +0000)]
build with -Wall
fix associated warnings (at least on gcc 4.0.1)
git-svn-id: http://skia.googlecode.com/svn/trunk@129
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 19 Mar 2009 21:52:42 +0000 (21:52 +0000)]
promote SkMask's rowBytes to 32bits, since its bounds is a 32bit rect
be sure a rect is sorted before using it as the path's bounds cache
git-svn-id: http://skia.googlecode.com/svn/trunk@128
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 18 Mar 2009 19:10:34 +0000 (19:10 +0000)]
fix capitalization for system includes
git-svn-id: http://skia.googlecode.com/svn/trunk@127
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 18 Mar 2009 03:08:15 +0000 (03:08 +0000)]
fix heapsort
git-svn-id: http://skia.googlecode.com/svn/trunk@126
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 17 Mar 2009 17:59:53 +0000 (17:59 +0000)]
Simplify font-chaining (fallbacks) to have fonthost just return the next
logical fontID.
Extend ImageRef to accept an imagedecoder factory, to replace calling the std
one.
git-svn-id: http://skia.googlecode.com/svn/trunk@125
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 16 Mar 2009 18:47:55 +0000 (18:47 +0000)]
disable cubic test for now (currently broken)
git-svn-id: http://skia.googlecode.com/svn/trunk@124
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 16 Mar 2009 18:46:55 +0000 (18:46 +0000)]
add sanity checks to handles extremely large coordinates or filter margins.
Should not hurt features (we hope), but is an easy way to survive malicious
values on a small-memory machine like a handset.
git-svn-id: http://skia.googlecode.com/svn/trunk@123
2bbb7eff-a529-9590-31e7-
b0007b416f81
turk@google.com [Mon, 16 Mar 2009 17:34:27 +0000 (17:34 +0000)]
Add missing file.
git-svn-id: http://skia.googlecode.com/svn/trunk@122
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 16 Mar 2009 13:56:10 +0000 (13:56 +0000)]
see prev. checkin (missed these files). Change ownership rule for streams to the
skia std. of receiver calls ref() if it needs to, but regardless, the caller
always manages/balances its own ownership.
git-svn-id: http://skia.googlecode.com/svn/trunk@121
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 16 Mar 2009 13:53:11 +0000 (13:53 +0000)]
Change (correct) SkImageRef's ownership rule for streams to the skia standard
pattern: the receiver will call ref() if it chooses when passed to a constructor
or setter, so the caller must balance its ownership itself. This matches how all
other refcnt objects are handled.
git-svn-id: http://skia.googlecode.com/svn/trunk@120
2bbb7eff-a529-9590-31e7-
b0007b416f81
turk@google.com [Fri, 13 Mar 2009 22:05:46 +0000 (22:05 +0000)]
Initial implementation of polygon trianagulation. It seems to be robust and passes the associated tests,
but has some problems:
(1) it generates T-vertices;
(2) it only works with right-handed outer contours;
(3) The sort and search are inefficient.
git-svn-id: http://skia.googlecode.com/svn/trunk@119
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 10 Mar 2009 04:02:30 +0000 (04:02 +0000)]
remember to specify the bloody font tag in the constructor!
git-svn-id: http://skia.googlecode.com/svn/trunk@118
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 9 Mar 2009 18:12:13 +0000 (18:12 +0000)]
mac fonts sort of work now
- haven't tested rotation yet
- spacing/bounds still look bad
git-svn-id: http://skia.googlecode.com/svn/trunk@117
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 9 Mar 2009 17:22:22 +0000 (17:22 +0000)]
implement fontmetrics
git-svn-id: http://skia.googlecode.com/svn/trunk@116
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 9 Mar 2009 15:25:11 +0000 (15:25 +0000)]
check-point (2) on mac fonts
- simplify typeface factories
git-svn-id: http://skia.googlecode.com/svn/trunk@115
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 9 Mar 2009 14:51:39 +0000 (14:51 +0000)]
minor check-point for switching to glyphs
git-svn-id: http://skia.googlecode.com/svn/trunk@114
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Sat, 7 Mar 2009 03:39:23 +0000 (03:39 +0000)]
migrate more legacy unittests into tests/
SkParse yet to be cleaned up
git-svn-id: http://skia.googlecode.com/svn/trunk@113
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 6 Mar 2009 15:57:26 +0000 (15:57 +0000)]
fix leak in Deserialize
git-svn-id: http://skia.googlecode.com/svn/trunk@112
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 5 Mar 2009 20:43:42 +0000 (20:43 +0000)]
fix ref() in CreateTypeface
fix comment in SkDraw.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@111
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Thu, 5 Mar 2009 14:14:49 +0000 (14:14 +0000)]
patch SkMath.h to build in ARMv4
test code for mac fonts (disabled)
git-svn-id: http://skia.googlecode.com/svn/trunk@110
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 4 Mar 2009 17:37:51 +0000 (17:37 +0000)]
Significant cleanup in api, and more importantly in sementics, of SkFontHost
- FindTypeface is now CreateTypeface, and what it returns is always considered
a new instance, even if it is from a cache (in which case it will have been
ref()'d. The caller must always balance its ownership by calling unref() on
the result when they are done.
- CloseStream is gone, since the caller can/must call stream->unref() when they
are done using it.
- ResolveTypeface is now ValidFontID, and just returns a bool.
git-svn-id: http://skia.googlecode.com/svn/trunk@109
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 4 Mar 2009 15:31:48 +0000 (15:31 +0000)]
API cleanup: rename typeface Create to CreateFromName, and remove default arg
git-svn-id: http://skia.googlecode.com/svn/trunk@108
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 4 Mar 2009 14:02:44 +0000 (14:02 +0000)]
Move SkTSort.h back to private, and instead allow in the makefile for tests to
see private headers. This also means the tests don't have to use ../.. to find
the private header they want.
git-svn-id: http://skia.googlecode.com/svn/trunk@107
2bbb7eff-a529-9590-31e7-
b0007b416f81
turk@google.com [Wed, 4 Mar 2009 01:33:35 +0000 (01:33 +0000)]
Format more consistently with the rest of Skia.
git-svn-id: http://skia.googlecode.com/svn/trunk@106
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 3 Mar 2009 21:20:49 +0000 (21:20 +0000)]
remove unimplemented (and uncalled) SkTypeface::Hash()
git-svn-id: http://skia.googlecode.com/svn/trunk@105
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 3 Mar 2009 20:31:12 +0000 (20:31 +0000)]
change srcover (and dstover) to use the faster thought slightly less accurate
computation of the scale factor (+1 instead of SkAlpha255To256). This has the
upside of guaranteeing that if the dst is opaque (alpha==255), it will always
stay opaque.
git-svn-id: http://skia.googlecode.com/svn/trunk@104
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 3 Mar 2009 18:35:18 +0000 (18:35 +0000)]
add test for different srcover implementations
git-svn-id: http://skia.googlecode.com/svn/trunk@103
2bbb7eff-a529-9590-31e7-
b0007b416f81
turk@google.com [Tue, 3 Mar 2009 02:56:05 +0000 (02:56 +0000)]
Unit test and bug fixes for cubic Bezier clipping.
git-svn-id: http://skia.googlecode.com/svn/trunk@102
2bbb7eff-a529-9590-31e7-
b0007b416f81
turk@google.com [Mon, 2 Mar 2009 20:00:00 +0000 (20:00 +0000)]
Add cubic clipping, similar to that of quad clipping. Both Newton-Raphson and Bisection are implemented, because it is not clear which one will yield the highest performance on a given platform. Bisection is turned on as the default.
git-svn-id: http://skia.googlecode.com/svn/trunk@101
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 2 Mar 2009 19:41:36 +0000 (19:41 +0000)]
explicitly call "our" version of clipPath in the case when clipRect needs to
turn itself into a path when the matrix rotates. This avoids infinite recursion
when the canvas is subclassed (e.g. SkPicture's recording canvas).
git-svn-id: http://skia.googlecode.com/svn/trunk@100
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 2 Mar 2009 05:36:20 +0000 (05:36 +0000)]
add initial unittests for Path
add operator== for paths
still need to implement isRect!
git-svn-id: http://skia.googlecode.com/svn/trunk@99
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Sat, 28 Feb 2009 18:26:14 +0000 (18:26 +0000)]
add tests (unittests) to Makefile
move SkTSort.h into public includes
git-svn-id: http://skia.googlecode.com/svn/trunk@98
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 27 Feb 2009 22:06:06 +0000 (22:06 +0000)]
more tests (need more meat in there)
git-svn-id: http://skia.googlecode.com/svn/trunk@97
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 27 Feb 2009 16:24:51 +0000 (16:24 +0000)]
add initial unittest framework (tests)
move some previous unittests out of core classes and into tests
git-svn-id: http://skia.googlecode.com/svn/trunk@96
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 24 Feb 2009 19:03:20 +0000 (19:03 +0000)]
Handle kA8 bitmaps drawing through a matrix (was infinitely recursive)
git-svn-id: http://skia.googlecode.com/svn/trunk@95
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Feb 2009 21:11:40 +0000 (21:11 +0000)]
Oops, CreateTypeface takes over ownership of the stream, instead of just ref()
This should be changed, for until it is, fix CreateTypefaceFromFile to not call
unref() if the typeface got created.
git-svn-id: http://skia.googlecode.com/svn/trunk@94
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 20 Feb 2009 14:22:36 +0000 (14:22 +0000)]
Implement CreateTypefaceFromFile
git-svn-id: http://skia.googlecode.com/svn/trunk@93
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 13 Feb 2009 14:56:09 +0000 (14:56 +0000)]
add picture-record option to speedup complex clips
remove hack that stopped picture-playback from culling on clipPath() result
git-svn-id: http://skia.googlecode.com/svn/trunk@92
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 11 Feb 2009 15:09:58 +0000 (15:09 +0000)]
remove white-space
git-svn-id: http://skia.googlecode.com/svn/trunk@91
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 11 Feb 2009 15:07:19 +0000 (15:07 +0000)]
handle failure when creating a scalercontext
git-svn-id: http://skia.googlecode.com/svn/trunk@90
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 6 Feb 2009 22:39:37 +0000 (22:39 +0000)]
check for non-invertible matrices in getClipBounds()
git-svn-id: http://skia.googlecode.com/svn/trunk@89
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 6 Feb 2009 13:30:58 +0000 (13:30 +0000)]
Chop quads exactly on the clip bounds, so we don't spend CPU cycles walking them
when we're above or below the clip.
Still to do:
- chop in X to avoid 16.16. overflow in the edgelist
- apply the same logic for cubics (tho much harder math)
git-svn-id: http://skia.googlecode.com/svn/trunk@88
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Wed, 28 Jan 2009 00:56:29 +0000 (00:56 +0000)]
draft of Text benchmark
not enabled yet, as having trouble with mac-fonthost port
git-svn-id: http://skia.googlecode.com/svn/trunk@87
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 27 Jan 2009 18:25:02 +0000 (18:25 +0000)]
add png to bench files
git-svn-id: http://skia.googlecode.com/svn/trunk@86
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Tue, 27 Jan 2009 01:43:36 +0000 (01:43 +0000)]
explicitly define the gHead for the codec llist
git-svn-id: http://skia.googlecode.com/svn/trunk@85
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 26 Jan 2009 23:54:06 +0000 (23:54 +0000)]
update header path (from android)
git-svn-id: http://skia.googlecode.com/svn/trunk@84
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Mon, 26 Jan 2009 23:15:37 +0000 (23:15 +0000)]
add BitmapBench
git-svn-id: http://skia.googlecode.com/svn/trunk@83
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 23 Jan 2009 21:51:56 +0000 (21:51 +0000)]
don't add in png-codec for the mac build
git-svn-id: http://skia.googlecode.com/svn/trunk@82
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@android.com [Fri, 23 Jan 2009 21:24:39 +0000 (21:24 +0000)]
Move libpng file into app, rather than the libskia, so it doesn't get optimized
away
git-svn-id: http://skia.googlecode.com/svn/trunk@81
2bbb7eff-a529-9590-31e7-
b0007b416f81