Commit Graph

782 Commits

Author SHA1 Message Date
mike@reedtribe.org
bad1b2ff1d add SkPath::contains(x, y)
git-svn-id: http://skia.googlecode.com/svn/trunk@4526 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 01:51:33 +00:00
robertphillips@google.com
59f46b81f8 Fixed Windows compiler complaints
http://codereview.appspot.com/6392044



git-svn-id: http://skia.googlecode.com/svn/trunk@4511 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 17:30:58 +00:00
tomhudson@google.com
c377baf406 Add placement new macros to SkPostConfig, call SkNEW* from Ganesh.
TODO: unify with the placement new implementation in SkTemplatesPriv.h,
once various issues there are overcome. reed@ should be taking the lead
there.

http://codereview.appspot.com/6384043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4492 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 20:17:56 +00:00
senorblanco@chromium.org
3a67a668db Add an SK_PRINTF_LIKE macro, which declares a function to have printf-like
semantics, allowing gcc and clang to check the format string against the
arguments.  Enable its use on SkString (printf, appendf, and prependf).  Also
define an SK_SIZE_T_SPECIFIER macro so there's a cross-platform way of
printing a size_t.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@4485 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 18:22:08 +00:00
reed@google.com
142e1fe7cf restore 4478 w/ fixed assert (no long need 8-byte alignment)
git-svn-id: http://skia.googlecode.com/svn/trunk@4480 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:44:44 +00:00
reed@google.com
fc8581b2d8 revert 4478
git-svn-id: http://skia.googlecode.com/svn/trunk@4479 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:40:48 +00:00
reed@google.com
f8affe5adf switch callers to SkChecksum::Compute (no 32/64 preference)
Review URL: https://codereview.appspot.com/6377043

git-svn-id: http://skia.googlecode.com/svn/trunk@4478 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:05:51 +00:00
reed@google.com
b158a82bc1 fix 64bit warnings (use: GYP_DEFINES=skia_arch_width=64 make ... )
git-svn-id: http://skia.googlecode.com/svn/trunk@4464 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 13:13:23 +00:00
reed@google.com
00aad94f01 define SK_CPU_SSE_LEVEL to a min of SSE2 if we're on 64bit x86
git-svn-id: http://skia.googlecode.com/svn/trunk@4463 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 13:02:35 +00:00
reed@google.com
88db9ef0cd add SkChecksum as a static class, for the replacement API
after this lands, plan to deprecate/remove the older APIs
Review URL: https://codereview.appspot.com/6356059

git-svn-id: http://skia.googlecode.com/svn/trunk@4457 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 19:44:20 +00:00
robertphillips@google.com
54823c227d Rolling back r4034 (Proposed plumbing to propagate save & restore)
http://codereview.appspot.com/6346066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4456 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 19:12:29 +00:00
bsalomon@google.com
44f7c4a6f8 Make SkTSearch variants with compare func as template param
Review URL: https://codereview.appspot.com/6345060/



git-svn-id: http://skia.googlecode.com/svn/trunk@4449 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 15:03:10 +00:00
rileya@google.com
3e33258cd1 Added GPU implementation of 2-point conical gradient.
Review URL: https://codereview.appspot.com/6354062

git-svn-id: http://skia.googlecode.com/svn/trunk@4442 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 13:43:35 +00:00
reed@google.com
8dbd5725c0 normalize names for SSE levels
git-svn-id: http://skia.googlecode.com/svn/trunk@4440 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 12:08:39 +00:00
reed@google.com
fd59d12000 change NewWithCString to allocate room for the terminating NULL, so the data
can be treated as a cstring (duh).



git-svn-id: http://skia.googlecode.com/svn/trunk@4430 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 20:28:31 +00:00
reed@google.com
2e07942f42 add read/write SkData methods
git-svn-id: http://skia.googlecode.com/svn/trunk@4427 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 19:35:13 +00:00
reed@google.com
126b4362be detect SSE level in visual studio
git-svn-id: http://skia.googlecode.com/svn/trunk@4424 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 19:00:27 +00:00
reed@google.com
5ccbe38285 undo accidental checkin
git-svn-id: http://skia.googlecode.com/svn/trunk@4422 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 17:29:44 +00:00
reed@google.com
ab69788571 create symbols for the various SSE values
add GCC check for SSSE3, and assume it is ordered SSE3 < SSSE3 < SSE4



git-svn-id: http://skia.googlecode.com/svn/trunk@4421 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 17:27:51 +00:00
reed@google.com
4a2cb30acc add SK_CPU_SSE_LEVEL, which may be defined to 2 or 3 (or 41 or 42 in the future)
to tell us at compile-time what SSE instructions are available. If none are
known to be available (though we still can check at runtime) SK_CPU_SSE_LEVEL
will be undefined.




git-svn-id: http://skia.googlecode.com/svn/trunk@4419 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 14:36:37 +00:00
robertphillips@google.com
23579275c7 Fixed memory deletion error in instance counting mechanism
http://codereview.appspot.com/6344057/



git-svn-id: http://skia.googlecode.com/svn/trunk@4399 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 21:30:45 +00:00
reed@google.com
dbc936dff3 add SkData::NewFromCString()
git-svn-id: http://skia.googlecode.com/svn/trunk@4383 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 15:40:09 +00:00
robertphillips@google.com
fffc8d01b5 Added EOF marker to address clang++ error
git-svn-id: http://skia.googlecode.com/svn/trunk@4381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 00:29:23 +00:00
junov@chromium.org
ef76060cbf Adding checksum to SkFlatData to accelerate SkPicture recording.
The checksum triggers an early exit in the mem compare use to search for duplicate flattened objects. Also, call to memcmp was replaced with 64-bit at a time comparison loop.

Review URL: http://codereview.appspot.com/6339046/
BUG=http://code.google.com/p/chromium/issues/detail?id=54079
TEST=Checksum and PictureRecord tests in bench.exe



git-svn-id: http://skia.googlecode.com/svn/trunk@4378 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 20:03:16 +00:00
robertphillips@google.com
97fafe1b5e Altered SkInstCnt to print out atexit
http://codereview.appspot.com/6348043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4377 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:52:20 +00:00
robertphillips@google.com
b74af872cc Separated Inst counting from the SK_DEBUG #define (now SK_ENABLE_INST_COUNT)
http://codereview.appspot.com/6353047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:41:42 +00:00
reed@google.com
c6faa5a0c4 add SkAlign8 and SkIsAlign8 macros
git-svn-id: http://skia.googlecode.com/svn/trunk@4362 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 15:07:11 +00:00
robertphillips@google.com
0456e0b7b8 Added Inst counting to SkFlattenable-derived classes
http://codereview.appspot.com/6355043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4359 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 14:03:26 +00:00
reed@google.com
73e19fb1ba show # of unknown subclasses in dump
git-svn-id: http://skia.googlecode.com/svn/trunk@4347 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 18:58:03 +00:00
reed@google.com
fcb57b5570 more SkInstCnt plumbing
git-svn-id: http://skia.googlecode.com/svn/trunk@4344 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 17:55:30 +00:00
reed@google.com
82ce2b8afb add more SkInstCnt plumbing
git-svn-id: http://skia.googlecode.com/svn/trunk@4343 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 17:43:26 +00:00
reed@google.com
3b42998466 stick SkInstCnt in more classes, to help track down leaks
git-svn-id: http://skia.googlecode.com/svn/trunk@4341 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 15:30:08 +00:00
reed@google.com
34342f6f51 export flags on the state of the world when a picture was serialized.
e.g. don't read/write functionptrs in that case (sizeof may be different for one)
Review URL: https://codereview.appspot.com/6331050

git-svn-id: http://skia.googlecode.com/svn/trunk@4318 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-25 14:36:28 +00:00
robertphillips@google.com
15c0fea699 AutoScratchTexture can now release its texture and it will return to the texture cache when freed
http://codereview.appspot.com/6262043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4301 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-22 12:41:43 +00:00
robertphillips@google.com
15e9d3e66e Expanded distribution of instance counting
http://codereview.appspot.com/6300114/



git-svn-id: http://skia.googlecode.com/svn/trunk@4291 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-21 20:25:03 +00:00
bsalomon@google.com
4da34e36cb Add GrMemoryPool as a helper to override operators new/delete
Review URL: http://codereview.appspot.com/6306090/



git-svn-id: http://skia.googlecode.com/svn/trunk@4282 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-19 15:40:27 +00:00
robertphillips@google.com
4d73ac22a1 Version 2 of the Instance Counting system. This one simplifies the print out of information.
http://codereview.appspot.com/6296069/



git-svn-id: http://skia.googlecode.com/svn/trunk@4255 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 18:54:08 +00:00
reed@google.com
9a323c98f6 faster SkScalarIsFinite()
git-svn-id: http://skia.googlecode.com/svn/trunk@4244 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 13:03:08 +00:00
robertphillips@google.com
4bdfb8c9d6 Compiler complaints + some minor cleanup
http://codereview.appspot.com/6295070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4238 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 21:23:49 +00:00
reed@google.com
51c62a6cfa add readPtr and writePtr to SkReader32 and SkWriter32
add template helper SkSWriter32, which allocates initial storage buffer
Review URL: https://codereview.appspot.com/6299075

git-svn-id: http://skia.googlecode.com/svn/trunk@4237 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 20:47:53 +00:00
djsollen@google.com
64a0ec3655 Move SkColorTable into its own header and reduce includes in SkFlattenable.h
Review URL: https://codereview.appspot.com/6299072

git-svn-id: http://skia.googlecode.com/svn/trunk@4236 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 15:17:27 +00:00
robertphillips@google.com
f6747b0b90 Split GrContext's AA Rect drawing methods into helper class
http://codereview.appspot.com/6300070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4233 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 00:32:28 +00:00
reed@google.com
7886ad3de1 remove SK_CAN_USE_FLOAT (deprecated)
git-svn-id: http://skia.googlecode.com/svn/trunk@4232 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-11 21:21:26 +00:00
djsollen@google.com
94e75ee46a Rename the existing flatten(void*) methods.
This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062

git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-08 18:30:46 +00:00
bsalomon@google.com
df9d656c35 Add SkPath::getVerbs/countVerbs
Review URL: http://codereview.appspot.com/6306053/


git-svn-id: http://skia.googlecode.com/svn/trunk@4209 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 21:43:15 +00:00
reed@google.com
83226976b5 extend asAGradient for Conical type (to be implemented by PDF and XPS)
Review URL: https://codereview.appspot.com/6308051

git-svn-id: http://skia.googlecode.com/svn/trunk@4207 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 20:26:47 +00:00
bsalomon@google.com
f6d3c5aa5f Make SkPath::RawIter require a non-NULL pts pointer.
Review URL: http://codereview.appspot.com/6301060/



git-svn-id: http://skia.googlecode.com/svn/trunk@4206 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-07 17:47:33 +00:00
caryclark@google.com
3dd459151f fix warnings on Mac in miscellaneous files
Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6305047

git-svn-id: http://skia.googlecode.com/svn/trunk@4186 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-06 12:11:10 +00:00
robertphillips@google.com
977b9c8af3 Instance counting for SkRefCnt-derived objects (w/ CanvasTest fix)
http://codereview.appspot.com/6242070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4170 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-05 19:35:09 +00:00
robertphillips@google.com
25c199343d Reverting r4162
git-svn-id: http://skia.googlecode.com/svn/trunk@4164 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-05 16:24:32 +00:00
robertphillips@google.com
3227ab5f64 Added instance counting system for SkRefCnt-derived objects
http://codereview.appspot.com/6242070/



git-svn-id: http://skia.googlecode.com/svn/trunk@4162 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-05 15:40:54 +00:00
reed@google.com
8b0d0f6a9c remove public function-ptr based colorfilter
Review URL: https://codereview.appspot.com/6286046

git-svn-id: http://skia.googlecode.com/svn/trunk@4141 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-04 18:10:33 +00:00
junov@chromium.org
4866cc0afb Adding option to serialize mutable bitmaps in SkPicture
BUG=http://code.google.com/p/chromium/issues/detail?id=115654
REVIEW=http://codereview.appspot.com/6221066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4130 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 21:23:07 +00:00
bungeman@google.com
04640299dc VC++ allows template parameter shadowing.
git-svn-id: http://skia.googlecode.com/svn/trunk@4127 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 19:47:51 +00:00
bungeman@google.com
e70f798ebc Serialize support for GDI.
http://codereview.appspot.com/6263046/



git-svn-id: http://skia.googlecode.com/svn/trunk@4126 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 19:38:19 +00:00
tomhudson@google.com
1f90287df3 Punctuation cleanup to satisfy idiosyncracies of OpenBSD gcc 4.2.1.
Original patch by landry.breuil.

http://code.google.com/p/skia/issues/detail?id=626



git-svn-id: http://skia.googlecode.com/svn/trunk@4112 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 13:15:47 +00:00
djsollen@google.com
15eeca0068 Update the implementation of SkTypeface_android.h functions.
This CL removes the hardcoded mappings of FallbackScripts to
a particular font file and replaces it with a dynamic mechanism
that takes a style and representative character code for a given
FallbackScript class and returns the most appropriate SkTypeface
that contains that character code.
Review URL: https://codereview.appspot.com/6197074

git-svn-id: http://skia.googlecode.com/svn/trunk@4111 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-01 12:52:26 +00:00
djsollen@google.com
9714516a0d Add SkFontDescriptor for serializing fonts.
Review URL: https://codereview.appspot.com/6250080

git-svn-id: http://skia.googlecode.com/svn/trunk@4106 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 19:55:08 +00:00
reed@google.com
0d10280190 We often rgn-diff an area >= the other rgn. now we detect that and return empty
We do this when we update our devices in SkCanvas.cpp
Review URL: https://codereview.appspot.com/6249073

git-svn-id: http://skia.googlecode.com/svn/trunk@4101 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 18:28:59 +00:00
robertphillips@google.com
d414406073 Windows compiler complaint cleanup
http://codereview.appspot.com/6262047/



git-svn-id: http://skia.googlecode.com/svn/trunk@4098 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-31 15:29:44 +00:00
djsollen@google.com
d2700eec7e Refactor dictionaries for use by entities other than just SkPicture
Review URL: https://codereview.appspot.com/6101043

git-svn-id: http://skia.googlecode.com/svn/trunk@4077 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 16:54:13 +00:00
digit@google.com
eec9dbcace arm: First step towards dynamic NEON support.
This patch adds minimal support for dynamic ARM NEON support,
i.e. the ability to probe the CPU at runtime for NEON and
provide alternate code paths when it is available.

- Add include/core/SkUtilsArm.h, which declares a few helper
  macros (e.g. SK_NEON_ARM_IS_DYNAMIC), plus the handy
  function 'sk_cpu_arm_has_neon()' which returns true if
  the target CPU supports the ARM NEON instruction set.

  Note that the header is in include/core/ because it will
  have to be included from NEON-specific code under src/code/

  It would probably be more logical to put it under include/opts/
  instead, but this would require moving all the NEON-specific
  stuff under src/code/ into src/opts/, which is not trivial
  due to the way the code is currently architected.

- Add src/core/SkUtilsArm.cpp which implements
  'sk_cpu_arm_has_neon' for ARM-based Linux systems, only
  when SK_NEON_ARM_IS_DYNAMIC is true.

  (For other cases, 'sk_cpu_arm_has_neon' is an inline function
   that returns a constant 'true' or 'false' value).

  There is no user-level accessible CPUID instruction on ARM,
  so do all CPU feature probing by parsing /proc/cpuinfo.
  This is Linux-specific.

  For Debug build types, the CPU probing result is printed
  to the Android log (or Linux command-line) for easier
  debugging.

- Create a new 'opts_neon' target (static library) which shall
  contain all the NEON-specific code paths for the library.

  This is necessary because -mfpu=neon impacts also non-scalar
  code. Just like with -mssse3 on x86, we can't build the rest
  of the library with this flag.

  Note that for now, we only include memset16_neon and
  memset32_neon in this library.

- Modify opts_check_arm.cpp to implement SK_ARM_NEON_IS_DYNAMIC
  properly.

Compared to a 'xoom' build, the only difference is the use of
NEON-optimized memset16/32 functions. Later patches will move
more NEON-specific code paths to 'opts_neon'.
Review URL: https://codereview.appspot.com/6247058

git-svn-id: http://skia.googlecode.com/svn/trunk@4069 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-30 13:54:41 +00:00
reed@google.com
744fabad47 addPoly() entry-point, to quickly add MoveTo+N*LineTo (useful in dashing)
Review URL: https://codereview.appspot.com/6256063

git-svn-id: http://skia.googlecode.com/svn/trunk@4061 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 19:54:52 +00:00
reed@google.com
8b06f1a7ff Detect when the caller was hairline AND strokeandfill, and resolve that into FILL
This fixes the unittests on WIN in the trybot for DEPS roll 4048
Review URL: https://codereview.appspot.com/6242057

git-svn-id: http://skia.googlecode.com/svn/trunk@4057 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 12:03:46 +00:00
mike@reedtribe.org
398b1bcb7d add SkPoint::isZero(), match the existing method on SkIPoint
git-svn-id: http://skia.googlecode.com/svn/trunk@4055 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-29 01:40:15 +00:00
reed@google.com
fd4be26c42 Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and
if stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6250051

git-svn-id: http://skia.googlecode.com/svn/trunk@4048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 01:04:12 +00:00
reed@google.com
d3521f1a8d revert 4046 -- GM:pathfill failed on one bot, maybe uninitialized memory somewhere?
git-svn-id: http://skia.googlecode.com/svn/trunk@4047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:32:22 +00:00
reed@google.com
9797272edf Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and if
stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6249050

git-svn-id: http://skia.googlecode.com/svn/trunk@4046 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:13:57 +00:00
robertphillips@google.com
49d9fd5fdb Plumbing to propagate save & restore from SkCanvas down to GrContext & lower
http://codereview.appspot.com/6203067/



git-svn-id: http://skia.googlecode.com/svn/trunk@4034 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-23 11:44:08 +00:00
reed@google.com
1f1db4cc5b update dox for NewFromMalloc() to clarify ownership
git-svn-id: http://skia.googlecode.com/svn/trunk@4017 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-21 20:00:39 +00:00
tomhudson@google.com
ffe39bd3b6 Fix type errors and a few warnings for Visual Studio 2010 64-bit build.
We're still far from 64b statically safe, mostly around SkReader32.h
and the address-alignment code in GrTypes.h.
Original code provided by jianliang79.

http://code.google.com/p/skia/issues/detail?id=601



git-svn-id: http://skia.googlecode.com/svn/trunk@3994 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 15:38:00 +00:00
reed@google.com
ebd24962df change SkChunkAlloc to grow its allocations geometrically (not linearly)
plus add a bench and unittest for it.



git-svn-id: http://skia.googlecode.com/svn/trunk@3989 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 14:28:11 +00:00
reed@google.com
803c67dbd7 change SetTLSFontCacheLimit to be void, since it doesn't easily know the prev value
git-svn-id: http://skia.googlecode.com/svn/trunk@3987 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 13:50:36 +00:00
reed@google.com
6172d67d1c Allow font-cache to use thread_local_storage for a private cache
Review URL: https://codereview.appspot.com/6200051

git-svn-id: http://skia.googlecode.com/svn/trunk@3986 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 13:38:03 +00:00
reed@google.com
ff0da4ff48 Mutexes in pixelrefs were done very sloppily initially. The code (a) assumes all
pixelref subclasses want a mutex to guard their lock/unlock virtuals, and (b)
most subclasses use the same mutex for *all* of their instances, even when there
is no explicit need to guard modifying one instances with another.

When we try drawing bitmaps from multiple threads, we are seeing a lot of slow-
down from these mutexes. This CL has two changes to try to speed things up.

1. Add setPreLocked(), for pixelrefs who never need the onLockPixels
virtual to be called. This speeds up those subclasses in multithreaded environs
as it avoids the mutex lock all together (e.g. SkMallocPixelRef).

2. Add setMutex() to allow a subclass to change the mutex choice. ashmem wants
this, since its unflattening constructor cannot pass down the null, it needs
to cleanup afterwards.
Review URL: https://codereview.appspot.com/6199075

git-svn-id: http://skia.googlecode.com/svn/trunk@3985 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-17 13:14:52 +00:00
bungeman@google.com
526956644a Add 'inline' to suppress unused warnings with Android NDK build.
git-svn-id: http://skia.googlecode.com/svn/trunk@3982 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 20:37:39 +00:00
reed@google.com
73a025811c computeFastStrokeBounds needs to pass kStroke_Style instead of kFill_Style (ya think?)
git-svn-id: http://skia.googlecode.com/svn/trunk@3981 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 19:21:12 +00:00
reed@google.com
115d931d2f pass the region-op to the clipstack for SkCanvas::clipRegion.
we were defaulting to intersect all the time (doh).



git-svn-id: http://skia.googlecode.com/svn/trunk@3980 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 18:50:40 +00:00
bungeman@google.com
20a0477009 Fix new atomic declarations for Android.
git-svn-id: http://skia.googlecode.com/svn/trunk@3979 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 18:37:31 +00:00
bungeman@google.com
a02bc1519c WeakRefCnt
http://codereview.appspot.com/5649046/


git-svn-id: http://skia.googlecode.com/svn/trunk@3978 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 18:21:56 +00:00
reed@google.com
4a3b714d73 Iter::next takes a bool (defaults to true for now) if we want to consume degenerates.
path-filling and stroking pass false, as they already are written to handle
small segments (and it makes next() run 2x faster if you pass false).
Review URL: https://codereview.appspot.com/6214049

git-svn-id: http://skia.googlecode.com/svn/trunk@3974 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 17:16:46 +00:00
reed@google.com
d5f20797e1 can't make the compute-bounds methods private yet :(
git-svn-id: http://skia.googlecode.com/svn/trunk@3969 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 14:15:02 +00:00
reed@google.com
a584aed5f7 perform quickReject in drawPoints (which is called by drawLine) just like we
already did in drawRect and drawPath



git-svn-id: http://skia.googlecode.com/svn/trunk@3968 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 14:06:02 +00:00
reed@google.com
7b463acd46 speedup SkRect::isFinite() (almost 2x)
add SkRect:set(p0, p1) for quick bounds of 2 points



git-svn-id: http://skia.googlecode.com/svn/trunk@3967 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 13:35:36 +00:00
reed@google.com
5dd510f1d2 update dox for copy-constructor
git-svn-id: http://skia.googlecode.com/svn/trunk@3966 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 13:04:22 +00:00
reed@google.com
e4f10a7080 add computeFastBounds to SkPathEffect, so we can attempt quickReject
Review URL: https://codereview.appspot.com/6209070

git-svn-id: http://skia.googlecode.com/svn/trunk@3964 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 20:47:50 +00:00
reed@google.com
97ecd1d454 update dox for measureText
git-svn-id: http://skia.googlecode.com/svn/trunk@3960 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 19:25:17 +00:00
reed@google.com
9e25dbf589 remove null-check in SKPath::Iter::next() -- not needed, and slows us down a little
git-svn-id: http://skia.googlecode.com/svn/trunk@3944 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 17:05:38 +00:00
robertphillips@google.com
6623fcd1ee Convert AAClipCache's GrRects to GrIRects
http://codereview.appspot.com/6210057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3942 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 16:47:23 +00:00
reed@google.com
880dc472ab add dox for Shaders, and how the paint's alpha modulates the shader's colors.
git-svn-id: http://skia.googlecode.com/svn/trunk@3909 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-11 14:47:03 +00:00
robertphillips@google.com
5d64068a36 Warn if return values from SkRect's Make* methods are ignored
http://codereview.appspot.com/6200060/



git-svn-id: http://skia.googlecode.com/svn/trunk@3894 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 14:50:44 +00:00
reed@google.com
7e6c4d1601 add SkPath::isLine(), similar to isRect()
git-svn-id: http://skia.googlecode.com/svn/trunk@3892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 14:05:43 +00:00
reed@google.com
75a0972dd7 move SkStrokePathEffect into hiding for now, as its functionality is rethought.
git-svn-id: http://skia.googlecode.com/svn/trunk@3890 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 12:56:16 +00:00
reed@google.com
f51018d8f9 allow SkAutoTUnref to be used syntactially as the object is refs
Review URL: https://codereview.appspot.com/6189059

git-svn-id: http://skia.googlecode.com/svn/trunk@3870 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-08 18:08:49 +00:00
reed@google.com
0389d93314 remove unused ptr/len parameters from CreateTypeface
Review URL: https://codereview.appspot.com/6201056

git-svn-id: http://skia.googlecode.com/svn/trunk@3862 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 21:06:55 +00:00
reed@google.com
82d447d4f1 revert TLS change (until we impl windows backend)
git-svn-id: http://skia.googlecode.com/svn/trunk@3858 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 19:27:18 +00:00
reed@google.com
09dcf754ff allow thread-local font cache
Review URL: https://codereview.appspot.com/6101053

git-svn-id: http://skia.googlecode.com/svn/trunk@3857 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 19:12:04 +00:00
reed@google.com
c7a67cb57e Just use std qsort
Review URL: https://codereview.appspot.com/6195052

git-svn-id: http://skia.googlecode.com/svn/trunk@3846 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 14:52:12 +00:00
reed@google.com
e3987da2d2 make CanNormalize inline for the float build (big speedup for PathIter)
git-svn-id: http://skia.googlecode.com/svn/trunk@3845 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-07 13:51:05 +00:00
reed@google.com
99c114e0ac We were numerically overflowing our 16bit coordinates that we communicate
between these two procs. The fixes was in two parts:

1. Just don't draw bitmaps larger than 64K-1 in width or height, since we
   can't represent those coordinates in our transport format (yet).
2. Perform an unsigned shift during the calculation, so we don't get
   sign-extension bleed when packing the two values (X,Y) into our 32bit
   slot.
Review URL: https://codereview.appspot.com/6173046

git-svn-id: http://skia.googlecode.com/svn/trunk@3836 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-03 20:14:26 +00:00
epoger@google.com
58b8d4a7a8 recreate http://codereview.appspot.com/6131051/ in svn instead of git
Review URL: https://codereview.appspot.com/6181044

git-svn-id: http://skia.googlecode.com/svn/trunk@3829 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-03 14:02:17 +00:00
reed@google.com
9c36a76102 store x-interval-count per scanline, so we can skip lines in O(1)
Review URL: https://codereview.appspot.com/6147043

git-svn-id: http://skia.googlecode.com/svn/trunk@3825 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-02 18:07:33 +00:00
reed@google.com
af7e6943b7 record yspancount and intervalcount in regions
Review URL: https://codereview.appspot.com/6132055

git-svn-id: http://skia.googlecode.com/svn/trunk@3808 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-01 14:43:22 +00:00
reed@google.com
8790fc635e add comment on return-value for SkTSearch
git-svn-id: http://skia.googlecode.com/svn/trunk@3797 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 17:17:21 +00:00
reed@google.com
7d4aee34e2 Variant of SkRegion::op (called Oper) that either writes the result into a 3rd
region (normal mode) or does a quick-return if the result will be non-empty
(called for predicates like contains() and intersects()).

git-svn-id: http://skia.googlecode.com/svn/trunk@3791 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-30 13:29:02 +00:00
epoger@google.com
c4ae974db6 Add SkString.contains()
Review URL: https://codereview.appspot.com/6130046

git-svn-id: http://skia.googlecode.com/svn/trunk@3781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-27 17:11:31 +00:00
reed@google.com
e49aca968c add optional storage parameter to SkWriter32
git-svn-id: http://skia.googlecode.com/svn/trunk@3759 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-24 21:12:39 +00:00
reed@google.com
064e50d495 allow SkMutex* as an alternative arg to SkAutoMutexAcquire constructor
git-svn-id: http://skia.googlecode.com/svn/trunk@3754 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-23 16:04:22 +00:00
reed@google.com
eb9a9bfc73 cleanups in prep for tls cache
Review URL: https://codereview.appspot.com/6109045

git-svn-id: http://skia.googlecode.com/svn/trunk@3749 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-23 13:43:30 +00:00
reed@google.com
d6195f956f add x() and y() aliases for fLeft and fTop (matching SkIRect)
git-svn-id: http://skia.googlecode.com/svn/trunk@3737 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-19 21:01:24 +00:00
bsalomon@google.com
6aa2965ca8 Track oval in SkPath
Committed on behalf of Guanqun.Lu@gmail.com

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



git-svn-id: http://skia.googlecode.com/svn/trunk@3716 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-18 13:29:52 +00:00
reed@google.com
f11508d7f4 expose font-table APIs to SkTypeface
Review URL: https://codereview.appspot.com/6050046

git-svn-id: http://skia.googlecode.com/svn/trunk@3707 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 18:01:31 +00:00
bsalomon@google.com
f3488ebaac Revert r3705 for fixed pt failures.
git-svn-id: http://skia.googlecode.com/svn/trunk@3706 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:38:20 +00:00
bsalomon@google.com
c047d414a4 track oval in SkPath
Committed on behalf of Guanqun.Lu@gmail.com

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



git-svn-id: http://skia.googlecode.com/svn/trunk@3705 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-17 15:22:06 +00:00
caryclark@google.com
95bfdedb37 Add cast to support 64 bit.
http://code.google.com/p/skia/issues/detail?id=524
Review URL: https://codereview.appspot.com/6038053

git-svn-id: http://skia.googlecode.com/svn/trunk@3701 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 19:21:30 +00:00
justinlin@google.com
fffb2f1bda Add SK_SYSTEM_ZLIB define.
Review URL: https://codereview.appspot.com/5991067

git-svn-id: http://skia.googlecode.com/svn/trunk@3699 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 19:10:21 +00:00
epoger@google.com
66ef614693 Fix 64-bit build on Mac
BUG=http://code.google.com/p/skia/issues/detail?id=524
Thanks to mmaerean@adobe.com for the patch.
Review URL: https://codereview.appspot.com/6022058

git-svn-id: http://skia.googlecode.com/svn/trunk@3686 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 15:04:45 +00:00
robertphillips@google.com
fa1d29112d Propagated AA flags through Ganesh's clip stack (in preparation for GL AA clipping)
http://codereview.appspot.com/6038051/



git-svn-id: http://skia.googlecode.com/svn/trunk@3685 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-16 14:49:14 +00:00
reed@google.com
90c07ea1d0 replace getTotalClipStack() with replayClips()+ClipVisitor
git-svn-id: http://skia.googlecode.com/svn/trunk@3670 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-13 13:50:27 +00:00
reed@google.com
f3edf9fdc9 add SK_WARN_UNUSED_RESULT warning to SkPathMeasure methods that might leave
POD var-arguments uninitialized.



git-svn-id: http://skia.googlecode.com/svn/trunk@3665 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-12 19:44:38 +00:00
reed@google.com
a707f60874 mark getTotalClip as deprecated
remove unimplemented (and duplicate) getTotalClipBounds



git-svn-id: http://skia.googlecode.com/svn/trunk@3661 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-12 16:12:16 +00:00
djsollen@google.com
2b2ede3e71 Decouple the SkFlattenable from SkReader32/SkWriter32.
The current impl for SkFlattenable read/write buffers is 
that they extend from SkReader32 and SkWriter32, but that
dependency must be abstract if we are to add any other
serialization format.
Review URL: https://codereview.appspot.com/5999045

git-svn-id: http://skia.googlecode.com/svn/trunk@3654 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-12 13:24:04 +00:00
reed@google.com
9b5ca29af8 allow the tolerance to be zero for nearlyzero
git-svn-id: http://skia.googlecode.com/svn/trunk@3652 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-12 12:51:32 +00:00
epoger@google.com
94fa43c625 Fix SkPathStroker::lineTo() for line with length SK_ScalarNearlyZero
Review URL: https://codereview.appspot.com/5992077

git-svn-id: http://skia.googlecode.com/svn/trunk@3650 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-11 17:51:01 +00:00
bsalomon@google.com
c967795b8f Make it possible to share a comparison func with both SkTSearch and SkQSort
Review URL: http://codereview.appspot.com/6006043/



git-svn-id: http://skia.googlecode.com/svn/trunk@3648 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-10 21:03:23 +00:00
bsalomon@google.com
0e5104c157 misc fixes
Submitted on behalf of Guanqun.Lu@gmail.com

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



git-svn-id: http://skia.googlecode.com/svn/trunk@3640 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-10 16:20:41 +00:00
bungeman@google.com
363a4c22af Warn when ignoring result of SkMatrix::invert.
http://codereview.appspot.com/5989067/


git-svn-id: http://skia.googlecode.com/svn/trunk@3637 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-09 22:33:11 +00:00
junov@chromium.org
b0a7ace7cb Renaming SkCanvas::fLayerCount to fSaveLayerCount for readability
REVIEW=http://codereview.appspot.com/5992047/



git-svn-id: http://skia.googlecode.com/svn/trunk@3619 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-05 18:33:23 +00:00
junov@chromium.org
2ac4ef5e6e Fixing the drawing of blurred shodows for hairline paths with software rendering
BUG=http://code.google.com/p/chromium/issues/detail?id=121251
REVIEW=http://codereview.appspot.com/5981053/



git-svn-id: http://skia.googlecode.com/svn/trunk@3592 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-04-04 15:16:51 +00:00
djsollen@google.com
54924243c1 Cleanup code related to SkFlattenable::flatten()
The following changes were made by this CL:

1. Make flatten() a protected method as callers should use
   SkFlattenableWriteBuffer to flatten an object
2. Make flatten a const method (including subclasses)
3. Mark subclass implementation of flatten with SK_OVERRIDE
4. Ensure overridden flatten impls call their parent
5. Remove no-op implementations of flatten from subclasses

Additionally, if necessary the unflattening constructor was
also moved to the protected section of the subclasses
header if it was not already there.

git-svn-id: http://skia.googlecode.com/svn/trunk@3540 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-29 15:18:04 +00:00
djsollen@google.com
5370cd969d Consolidate PixelRef flattables with the standard impl
The flatten method on these functions can no longer be
const as SkFlattenables declaration is not const and 
would result in the const methods only being called when
the reference to the object was const.
Review URL: https://codereview.appspot.com/5941043

git-svn-id: http://skia.googlecode.com/svn/trunk@3533 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-28 20:47:01 +00:00
vandebo@chromium.org
a728e35edc Fix a bunch of Coverity defects - class members not initialized in the constructor.
CID=14533,14036,9275,9271,4156,4153,4151,1666,1665,1618,1617,1616,1615

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

git-svn-id: http://skia.googlecode.com/svn/trunk@3532 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-28 20:29:38 +00:00
djsollen@google.com
ba28d03e94 Create macro for registering classes for deserialization
Review URL: https://codereview.appspot.com/5909063

git-svn-id: http://skia.googlecode.com/svn/trunk@3494 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-26 17:57:35 +00:00
bsalomon@google.com
fdf6eb75ab fix compilation bug in fixed pt
git-svn-id: http://skia.googlecode.com/svn/trunk@3489 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-26 15:33:05 +00:00
bsalomon@google.com
8fe84b53a6 Add SkMatrix::cheapEqualTo, use in Gr code
Review URL: http://codereview.appspot.com/5865057/



git-svn-id: http://skia.googlecode.com/svn/trunk@3488 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-26 15:24:27 +00:00
djsollen@google.com
a2ca41e3af Cleanup Macros arround static initializers for SkFlattenable.
This CL also removes an unused debugging function from the class
Review URL: https://codereview.appspot.com/5890043

git-svn-id: http://skia.googlecode.com/svn/trunk@3483 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-23 19:00:34 +00:00
reed@google.com
8926b169f6 apply imagefilter to all draw calls
Review URL: https://codereview.appspot.com/5856048

git-svn-id: http://skia.googlecode.com/svn/trunk@3476 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-23 15:36:36 +00:00
robertphillips@google.com
6970557055 Re-attempting Linux debug GL interface compiler complaint fix.
Fixed two additional compiler complaints.

http://codereview.appspot.com/5845068/



git-svn-id: http://skia.googlecode.com/svn/trunk@3456 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-21 19:46:50 +00:00
djsollen@google.com
e63793a2c8 Upstream changes from Android repository.
Review URL: https://codereview.appspot.com/5752055

git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-21 15:39:03 +00:00
reed@google.com
56d3a23c3e Cast the result of SK_OFFSETOF to size_t to match offsetof() and avoid narrowing conversion errors
git-svn-id: http://skia.googlecode.com/svn/trunk@3446 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-21 12:25:48 +00:00
tomhudson@google.com
599445130c Move SkClampRange into src/effects, where it isn't being advertised as
something for end-users.

http://codereview.appspot.com/5864044/



git-svn-id: http://skia.googlecode.com/svn/trunk@3445 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-20 21:18:43 +00:00
djsollen@google.com
166e653f67 Fix scaling issue when drawing text on a path.
If the paint is stroked and the font size is small
we were incorrectly rendering the sample text.
Review URL: https://codereview.appspot.com/5844060

git-svn-id: http://skia.googlecode.com/svn/trunk@3437 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-20 14:24:38 +00:00
reed@google.com
0b53d59a24 add optional updateMatrixClip param to getTopDevice(). Chrome should set this
only when it is needed, and in doing so it can stop using the layeriter just
to get its top device.



git-svn-id: http://skia.googlecode.com/svn/trunk@3432 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-19 18:26:34 +00:00
tomhudson@google.com
8dd90a926a (SSE2) acceleration for rectangular opaque erases.
15% speedup for rectangles < 31 px wide, 5% for larger.

http://codereview.appspot.com/5843050/



git-svn-id: http://skia.googlecode.com/svn/trunk@3423 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-19 13:49:50 +00:00
reed@google.com
80e1459c32 add IRect variant of getBounds()
git-svn-id: http://skia.googlecode.com/svn/trunk@3414 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-16 14:58:07 +00:00
reed@google.com
0beaba5b34 decal mode babystep
git-svn-id: http://skia.googlecode.com/svn/trunk@3413 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-16 14:38:06 +00:00
reed@google.com
fb2d3c6981 forward declare SkRect
git-svn-id: http://skia.googlecode.com/svn/trunk@3410 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 21:18:11 +00:00
reed@google.com
86b2e43a33 add getBounds() helper
git-svn-id: http://skia.googlecode.com/svn/trunk@3409 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-03-15 21:17:03 +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