bungeman@google.com
cb1bbb375a
Fonts with cubic outlines are rendered without ClearType by GDI.
...
https://codereview.appspot.com/6643060/
git-svn-id: http://skia.googlecode.com/svn/trunk@5929 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 18:48:35 +00:00
bsalomon@google.com
3ab43d5c5b
Minimize use of SkDraw's matrix in SkGpuDevice.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6604068
git-svn-id: http://skia.googlecode.com/svn/trunk@5906 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 19:39:09 +00:00
bsalomon@google.com
5dc26b9736
SkTCopyOnFirstWrite
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6650047
git-svn-id: http://skia.googlecode.com/svn/trunk@5905 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 19:32:32 +00:00
skia.committer@gmail.com
fc84359aa9
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 02:01:14 +00:00
senorblanco@chromium.org
9f25de7900
This patch implements generalized DAG connectivity for SkImageFilter. SkImageFilter maintains a list of inputs, which can be constructed either from a SkImageFilter** or zero or more SkImageFilter* arguments (varargs).
...
Existing filters which maintained their own filter connectivity were refactored to use the new constructors and flattening/unflattening code. Modifying the remaining filters which are not yet DAG-friendly is left for future work; they are considered to have zero inputs for now.
Review URL: https://codereview.appspot.com/6443119
git-svn-id: http://skia.googlecode.com/svn/trunk@5891 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 20:36:13 +00:00
bsalomon@google.com
a6926b1f03
Reland r5861 but leave setMatrixClip virtual on SkDevice (IOW this is a partial revert of r5871 which reverted r5861).
...
Unreviewed
Review URL: https://codereview.appspot.com/6631062
git-svn-id: http://skia.googlecode.com/svn/trunk@5881 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 15:25:50 +00:00
robertphillips@google.com
3fffb2ee9f
Reverting r5861 (remove gainfocus and setMatixClip) due to Chrome compilation issues
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5871 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-09 22:30:18 +00:00
bsalomon@google.com
a1c3d78f22
Remove gainFocus() and setMatrixClip() virtuals from SkDevice.
...
R=reed@google.com ,robertphillips@google.com
Review URL: https://codereview.appspot.com/6636050
git-svn-id: http://skia.googlecode.com/svn/trunk@5861 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-09 14:20:37 +00:00
bsalomon@google.com
0e354aacd8
Remove external matrix feature.
...
We haven't been testing this for nearly two years.
R=reed@google.com
Review URL: https://codereview.appspot.com/6640044
git-svn-id: http://skia.googlecode.com/svn/trunk@5857 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-08 20:44:25 +00:00
scroggo@google.com
5a7c6be72b
Add the ability to provide function pointers to SkPicture serialization
...
and deserialization for encoding and decoding bitmaps.
Remove kForceFlattenBitmapPixels_Flag, which is no longer used.
When an SkOrderedReadBuffer needs to read a bitmap, if it does not
have an image decoder, use a dummy bitmap.
In GM, add a tolerance option for color differences, used when
testing picture serialization, so it can assume two images are the
same even though PNG encoding/decoding may have resulted in small
differences.
Create dummy implementations for SkImageDecoder and SkImageEncoder
functions in SkImageDecoder_empty so that a project that does not
want to include the images project it can still build.
Allow ports to build without images project.
In Mac's image encoder, copy 4444 to 8888 before encoding.
Add SkWriter32::reservePad, to provide a pointer to write non 4 byte
aligned data, padded with zeroes.
In bench_ and render_ pictures, pass decode function to SkPicture
creation from a stream.
BUG=https://code.google.com/p/skia/issues/detail?id=842
Review URL: https://codereview.appspot.com/6551071
git-svn-id: http://skia.googlecode.com/svn/trunk@5818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 21:46:08 +00:00
scroggo@google.com
94bc60f986
Lock gFTMutex when modifying FT globals.
...
This prevents a crash when running bench_pictures with multiple threads.
Also remove an unused function and fix a typo in SkFontHost.
Review URL: https://codereview.appspot.com/6625043
git-svn-id: http://skia.googlecode.com/svn/trunk@5816 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 20:45:06 +00:00
bsalomon@google.com
7823d9a07f
Disable SK_DEBUG_PATH_REF in debug builds.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6602056
git-svn-id: http://skia.googlecode.com/svn/trunk@5810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 17:55:30 +00:00
skia.committer@gmail.com
7cc7f49479
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 02:01:34 +00:00
bsalomon@google.com
ae09f2dc3f
Adds extra debugging to SkPathRef that can optionally be turned on in a release build.
...
This is pretty hacky but hopefully will be quite short-lived.
Review URL: https://codereview.appspot.com/6584074
git-svn-id: http://skia.googlecode.com/svn/trunk@5793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 19:57:01 +00:00
bsalomon@google.com
1dfe88e00a
Revert r5557 (which itself was a revert of r5433). Relands SkPathRef. Will follow with change for extra debug checks to attempt to ferret out http://www.crbug.com/148637 .
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 13:46:20 +00:00
reed@google.com
425a8c71e4
add getSeed()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5775 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 17:51:29 +00:00
reed@google.com
dde646afb5
re-land removal of setBitmapDevice
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5746 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 14:58:57 +00:00
robertphillips@google.com
35e535a10f
Rolling back r5732 due to Chrome Mac compiler issues
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5744 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-30 21:05:15 +00:00
reed@google.com
768d59b97d
remove setBitmapDevice -- no longer called, and is a necessary step on our way
...
to removing setDevice (and hopefully getDevice after that).
git-svn-id: http://skia.googlecode.com/svn/trunk@5732 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 20:59:03 +00:00
senorblanco@chromium.org
9c39744a00
Fix recursive GPU processing for SkImageFilter. Plumb through the
...
SkImageFilter::Proxy parameter to the GPU recursion path. Extract
DeviceImageFilterProxy from SkCanvas.cpp into its own .h, and rename it.
https://codereview.appspot.com/6575059/
git-svn-id: http://skia.googlecode.com/svn/trunk@5720 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 21:57:45 +00:00
bsalomon@google.com
373ebc6345
Suppress some warnings on linux.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6572046
git-svn-id: http://skia.googlecode.com/svn/trunk@5687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:08:56 +00:00
mike@reedtribe.org
74bb77ee4c
add getMetaData() to SkCanvas (as part of our master plan to remove
...
subclasses of SkCanvas and SkDevice from our clients.
git-svn-id: http://skia.googlecode.com/svn/trunk@5679 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 02:24:45 +00:00
reed@google.com
33535f3c48
Reimplement drawBitmapRectToRect to correctly handle fraction srcRect.
...
The prev impl relied on drawBitmap "deducing" the destination rect by applying
the computed matrix to the bitmap's bounds. This cannot be done if the srcRect
is fractional, and therefore not representable w/ a bitmap.
The new impl computes the same matrix, but calls down to the device via drawRect
+ a bitmap_shader. This allows us to specfiy the dstRect explicitly.
The possible down-side is that we now rely on the device subclass to efficiently
handle draRect+shader, instead of calling its drawBitmap entry-point.
To give the device the chance to handle this differently, I now call through to
a new device virtual: drawBitmapRect. The default impl is to create the shader
and call drawRect, but a subclass can intercept that.
For now, the GPU override of drawBitmapRect is mimicing the old behavior (by
rounding the srcRect to an iRect). This preserves its ability to call drawBitmap
which handles very-large textures, but shows some gittering/imprecision, due to
the rounding. ... this is the same GPU behavior we have before this CL.
Review URL: https://codereview.appspot.com/6542065
git-svn-id: http://skia.googlecode.com/svn/trunk@5663 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 15:37:50 +00:00
robertphillips@google.com
0e82c6729f
"fix" chrome build
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5655 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 00:39:51 +00:00
caryclark@google.com
594dd3cd78
iOS support work in progress
...
include/core/SkTypes.h
- address unsigned warning
include/core/SkInstCnt.h
src/core/SkInstCnt.cpp
gyp/common.gypi
- always define SK_ENABLE_INST_COUNT for debug builds
src/views/mac/SkNSView.mm
- only call glClear if there is a GL context
src/ports/SkImageDecoder_CG.cpp
- fix iOS hack by using proper include
gyp/opts.gyp
- exclude more ARM files from iOS for now (see issue 900)
gyp/common_conditions.gypi
- add release, more ios specific common settings
gyp/bench.gyp
- add iOS condition
gyp/SampleApp.gyp
- remove precompiled header, hardcoded SDK path
- add more frameworks
gyp/debugger.gyp
- fix syntax error
- add iOS/Android condition
gyp/core.gyp
- remove hardcoded SDK path, add more frameworks
gyp/common_variables.gypi
- add ios SDK path
- add ios SDK version
gyp/iOSSampleApp.gyp
- remove obsolete project
gyp/zlib.gyp
- add ios library path
Review URL: https://codereview.appspot.com/6551070
git-svn-id: http://skia.googlecode.com/svn/trunk@5649 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-24 19:33:57 +00:00
scroggo@google.com
a0c2bc2438
Make flattenables no longer depend on global static initializers.
...
Instead, force all builds to call InitializeFlattenables.
Remove the make_debugger script, which was created to force
rebuilding without global static initializers so that all flattenables
would be linked. It is no longer necessary since all flattenables
will be linked thanks to InitializeFlattenables, which now can (and
must) be called when global static initializers are turned on.
BUG=https://code.google.com/p/skia/issues/detail?id=903
BUG=https://code.google.com/p/skia/issues/detail?id=902
Review URL: https://codereview.appspot.com/6548044
git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 17:54:46 +00:00
reed@google.com
52657c75b5
remove unused parameter (that also slowed us down) to SkAutoTDelete
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5611 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 18:04:12 +00:00
caryclark@google.com
867cbd8bc2
first cut at making iOS work
...
Replace __arm__ with SK_CPU_ARM
add support for iOS simulator and device
fix const warning in iOSSampleApp
update gyp files
https://code.google.com/p/skia/issues/detail?id=900
tracks fixing missing arm assembly
Review URL: https://codereview.appspot.com/6552045
git-svn-id: http://skia.googlecode.com/svn/trunk@5606 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-20 15:45:41 +00:00
skia.committer@gmail.com
c1ad022608
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5594 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-19 02:01:47 +00:00
reed@google.com
7112173c3c
re-re-land 5578
...
will follow w/ new .skp files to keep the waterfall green (I hope)
git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 15:14:33 +00:00
reed@google.com
10f9f4a844
revert 5580
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 14:04:54 +00:00
reed@google.com
eab16dea1c
re-land 5578 w/ pipe fix
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 13:47:20 +00:00
reed@google.com
c75c36a14b
revert 5578 -- broke pipe
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5579 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 13:20:52 +00:00
reed@google.com
f1ab723033
Change drawBitmapRect to take a float-src-rect instead of integer-src-rect. This
...
allows the client more control over the scaling. Because of virtual overrides
and wanting to keep the old call-sites up and running, this CL renames the
virtual entry-point to drawBitmapRectToRect, and downgrades drawBitmapRect to
a non-virtual helper function.
The implementation is to use the float-rect for computing the matrix, but still
cons-up an integer rect for the purposes of subsetting the original bitmap. We
do this by calling float_src->roundOut(&int_src) so that we include all
(partially) covered src pixels.
No change needed on SkDevice, since that signature is explicitly passed the
computed matrix.
Review URL: https://codereview.appspot.com/6501140
git-svn-id: http://skia.googlecode.com/svn/trunk@5578 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 12:59:44 +00:00
borenet@google.com
66bcbd12bf
Check for invalid SkPictures
...
- Remove hasRecorded() since nobody uses it.
- Add "success" boolean to SkPicture stream constructor
- Track failures in render_pictures and bench_pictures
Review URL: https://codereview.appspot.com/6493105
git-svn-id: http://skia.googlecode.com/svn/trunk@5573 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-17 18:26:06 +00:00
bsalomon@google.com
6c5418e6c2
Temporarily revert r5433 due to http://www.crbug.com/148637 until after M23 branch.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5557 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 20:30:37 +00:00
rileya@google.com
1c6307e36f
Fix some nits from http://codereview.appspot.com/6506103/
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5547 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 15:52:47 +00:00
skia.committer@gmail.com
1d225f2b33
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5539 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-14 02:01:10 +00:00
rileya@google.com
8515e79a76
Add R-Tree record flag to SkPicture, plus some cleanup/fixes in associated classes.
...
Review URL: https://codereview.appspot.com/6506103
git-svn-id: http://skia.googlecode.com/svn/trunk@5537 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-13 21:41:51 +00:00
reed@google.com
1f1543f012
re-apply 5508, but with the new compile-flag disabled for now
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5516 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 21:08:33 +00:00
reed@google.com
bfe1572f24
revert 5508 -- it broke most of the builds
...
Use http://skia.googlecode.com/svn/buildbot/buildbots.html to see the state of the build.
git-svn-id: http://skia.googlecode.com/svn/trunk@5511 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 18:34:49 +00:00
wjmaclean@chromium.org
1f8787a99f
Using the device scale factor for glyph positioning
...
The master bug is http://code.google.com/p/chromium/issues/detail?id=138101 .
The corresponding WebKit changes for this CL are here:
https://bugs.webkit.org/show_bug.cgi?id=96137
BUG=
Review URL: https://codereview.appspot.com/6506099
git-svn-id: http://skia.googlecode.com/svn/trunk@5508 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-12 15:53:20 +00:00
bsalomon@google.com
69aca79b5c
SkPathRef: one allocation for pts+verbs, path GenID, copy-on-write
...
Review URL: https://codereview.appspot.com/6488063/
git-svn-id: http://skia.googlecode.com/svn/trunk@5433 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:35:06 +00:00
bsalomon@google.com
5e72845024
Add SK_API to path == decl.
...
Over-the-shoulder review from robertphillips@
git-svn-id: http://skia.googlecode.com/svn/trunk@5426 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 13:32:37 +00:00
bungeman@google.com
b24b4fa12b
Future proof luminance caches.
...
https://codereview.appspot.com/6495071/
git-svn-id: http://skia.googlecode.com/svn/trunk@5382 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 13:49:59 +00:00
robertphillips@google.com
9474ed0617
Switch GrGpu's GrResource list over to using SkTDLinkedList
...
https://codereview.appspot.com/6500062/
git-svn-id: http://skia.googlecode.com/svn/trunk@5379 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 13:34:32 +00:00
scroggo@google.com
58b4ead36c
Perform multi core rendering in bench_pictures.
...
Add a flag in SkGPipeWriter for threadsafe drawing.
Add a deferred pipe controller to SamplePipeControllers, which can
be called to play back in multiple threads.
Depends on http://codereview.appspot.com/6459105/
Review URL: https://codereview.appspot.com/6482068
git-svn-id: http://skia.googlecode.com/svn/trunk@5371 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-31 16:15:22 +00:00
scroggo@google.com
057655589f
Remove dead code and update a comment.
...
InlineFactoryNames_Flag is no longer used, so remove it and update
the comment.
Review URL: https://codereview.appspot.com/6492057
git-svn-id: http://skia.googlecode.com/svn/trunk@5348 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-30 17:34:29 +00:00
skia.committer@gmail.com
a27096b474
Sanitizing source files in Skia_Nightly_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5346 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-30 14:38:00 +00:00
reed@google.com
1cf58d03a8
add SkWriter32::rewindToOffset() -- used for peephole edits in picture recording
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5345 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-30 14:03:21 +00:00