platform/upstream/libSkiaSharp.git
15 years agofix trailing-ws
reed@android.com [Fri, 29 May 2009 21:30:42 +0000 (21:30 +0000)]
fix trailing-ws
initialize fFlags in bitmapprocshader

git-svn-id: http://skia.googlecode.com/svn/trunk@191 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoupdate SDL port to support OpenGL
reed@android.com [Fri, 29 May 2009 03:40:05 +0000 (03:40 +0000)]
update SDL port to support OpenGL
need to separate out SK_BUILD_FOR_MAC when we need to know where certain OS
headers are, and SK_BUILD_FOR_SDL when we are choosing an SkOSWindow variant...

git-svn-id: http://skia.googlecode.com/svn/trunk@190 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoanimate matrixref in sample shapes
reed@android.com [Wed, 27 May 2009 01:44:24 +0000 (01:44 +0000)]
animate matrixref in sample shapes

git-svn-id: http://skia.googlecode.com/svn/trunk@189 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agomove shapes subclasses into effects
reed@android.com [Wed, 27 May 2009 01:20:10 +0000 (01:20 +0000)]
move shapes subclasses into effects

git-svn-id: http://skia.googlecode.com/svn/trunk@188 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agocreate offscreen surface so we can set its RGB ordering to match our internals
reed@android.com [Tue, 26 May 2009 13:27:48 +0000 (13:27 +0000)]
create offscreen surface so we can set its RGB ordering to match our internals

git-svn-id: http://skia.googlecode.com/svn/trunk@187 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agomake include search paths relative
reed@android.com [Fri, 22 May 2009 21:07:11 +0000 (21:07 +0000)]
make include search paths relative

git-svn-id: http://skia.googlecode.com/svn/trunk@186 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoupdate relative paths for sample code
reed@android.com [Fri, 22 May 2009 21:01:38 +0000 (21:01 +0000)]
update relative paths for sample code

git-svn-id: http://skia.googlecode.com/svn/trunk@185 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoadd actual sdl project file
reed@android.com [Fri, 22 May 2009 20:57:52 +0000 (20:57 +0000)]
add actual sdl project file

git-svn-id: http://skia.googlecode.com/svn/trunk@184 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoadd sampleapp_sdl
reed@android.com [Fri, 22 May 2009 20:53:55 +0000 (20:53 +0000)]
add sampleapp_sdl

git-svn-id: http://skia.googlecode.com/svn/trunk@183 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoadd SDL support
reed@android.com [Fri, 22 May 2009 20:44:12 +0000 (20:44 +0000)]
add SDL support

git-svn-id: http://skia.googlecode.com/svn/trunk@182 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoadd SkSafeRef / SkSafeUnref as inline static functions, to use in place of our
reed@android.com [Fri, 22 May 2009 14:39:03 +0000 (14:39 +0000)]
add SkSafeRef / SkSafeUnref as inline static functions, to use in place of our
existing obj->safeRef(), which is unsafe since it can its 'if (this)' can be
optimized away by some compilers.

fix some overflows in mimpmap generation

git-svn-id: http://skia.googlecode.com/svn/trunk@181 2bbb7eff-a529-9590-31e7-b0007b416f81

15 years agoadd sample effects
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

15 years agoinit bounds to empty if we return false from getClipBounds()
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

15 years agoshapes checkpoint: move matrix into groupshape and out of shape
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

15 years agofix parse error:
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

15 years agoFix reference count on openStream
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

15 years agofix impl of drawPicture
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

15 years agoadd SkSize for dimensions
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

15 years agoHonor pref config in image decoding whenever possible.
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

15 years agoadd SkSize for dimensions
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

15 years agoadd SK_USE_OLD_255_TO_256 define to disable alpha+1 change to SkAlpha255To256
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

15 years agoTypo fix for VDMX parsing in Chromium.
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

15 years agoadd canCopyTo(), to preflight if copyTo can succeed. update unittests for it
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

15 years agofix copyTo to only copy the minimum pixels per row, and to lock the src before
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

15 years agoadd simple port of memory APIs, to be used as a template for other platforms
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

15 years agoupdate license header
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

15 years agocheck for 0 upem in freetype
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

15 years agoAllow copying an Index8 bitmap when srcConfig and dstConfig are both
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

15 years agoadd BitmapCopyTest. Still need to consider the src==no_config case
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

15 years agoAdd fontconfig support.
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

15 years agohandle interlacing
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

15 years agoadd skiamge (in tools/) that decodes and encodes images
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

15 years agoadd ADD xfermode
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

15 years agofix mac build
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

15 years agoSync with Chromium's fork
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

15 years agotrivial: fix ws
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

15 years agoadd SkSfntUtils to parse some known truetype tables
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

15 years agoSkFontHost_tables: fix minor bugs
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

15 years agoupdate for config/ directory
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

15 years agosupport -android mode when running tests, which spews out android specific
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

15 years agomove SkUserConfig.h into include/config/ so it can be replaced by changing the
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

15 years agoimplement generateCountGlyphs using new font table apis
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

15 years agoadd Table apis to SkFontHost
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

15 years agoupdate SkPostConfig.h to unset LEAN_AND_MEAN if it set it before including <windows.h>
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

15 years agoimport portability fixes from Chrome around floats
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

15 years agoextend gradients to handle (by clamping) the first and last color position if
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

15 years agoreplace floorf() with sk_float_floor(), so it builds on platforms w/o floorf
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

15 years agoadd sample for gradients
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

15 years agocleanup formating (e.g. no trailing spaces)
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

15 years agorename tests/main to testmain.cpp
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

15 years agorename bench's main to benchmain.cpp, to avoid multiple files with same name
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

15 years agoAPI change: SkPath computeBounds -> getBounds
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

15 years agoadd -pict option to bench, which draws everything through a picture, and then
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

15 years agoAdd SkChunkAlloc::unalloc() to undo the last allocation, useful if the caller wants...
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

15 years agomake bitmap width/height 32bits, matching the API
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

15 years agorename drawable to drawing for now, so we don't collide with animator
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

15 years agouse static_cast
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

15 years agoadd check/hack to avoid drawing outside of the clip for hairlines
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

15 years agocheck-point for drawables (experimental)
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

15 years agopull latest from android
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

15 years agocheck for NaN in path iterator (otherwise we have an infinite loop)
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

15 years agoforgot to initialize fFactory in the unflatten constructor
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

15 years agobuild with -Wall
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

15 years agopromote SkMask's rowBytes to 32bits, since its bounds is a 32bit rect
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

15 years agofix capitalization for system includes
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

15 years agofix heapsort
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

15 years agoSimplify font-chaining (fallbacks) to have fonthost just return the next
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

15 years agodisable cubic test for now (currently broken)
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

15 years agoadd sanity checks to handles extremely large coordinates or filter margins.
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

15 years agoAdd missing file.
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

15 years agosee prev. checkin (missed these files). Change ownership rule for streams to the
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

15 years agoChange (correct) SkImageRef's ownership rule for streams to the skia standard
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

15 years agoInitial implementation of polygon trianagulation. It seems to be robust and passes...
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

15 years agoremember to specify the bloody font tag in the constructor!
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

15 years agomac fonts sort of work now
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

15 years agoimplement fontmetrics
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

15 years agocheck-point (2) on mac fonts
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

15 years agominor check-point for switching to glyphs
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

15 years agomigrate more legacy unittests into tests/
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

15 years agofix leak in Deserialize
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

15 years agofix ref() in CreateTypeface
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

15 years agopatch SkMath.h to build in ARMv4
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

15 years agoSignificant cleanup in api, and more importantly in sementics, of SkFontHost
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

15 years agoAPI cleanup: rename typeface Create to CreateFromName, and remove default arg
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

15 years agoMove SkTSort.h back to private, and instead allow in the makefile for tests to
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

15 years agoFormat more consistently with the rest of Skia.
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

15 years agoremove unimplemented (and uncalled) SkTypeface::Hash()
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

15 years agochange srcover (and dstover) to use the faster thought slightly less accurate
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

15 years agoadd test for different srcover implementations
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

15 years agoUnit test and bug fixes for cubic Bezier clipping.
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

15 years agoAdd cubic clipping, similar to that of quad clipping. Both Newton-Raphson and Bisecti...
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

15 years agoexplicitly call "our" version of clipPath in the case when clipRect needs to
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

15 years agoadd initial unittests for Path
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

15 years agoadd tests (unittests) to Makefile
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

15 years agomore tests (need more meat in there)
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

15 years agoadd initial unittest framework (tests)
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

15 years agoHandle kA8 bitmaps drawing through a matrix (was infinitely recursive)
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

15 years agoOops, CreateTypeface takes over ownership of the stream, instead of just ref()
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

15 years agoImplement CreateTypefaceFromFile
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

15 years agoadd picture-record option to speedup complex clips
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