Commit Graph

88 Commits

Author SHA1 Message Date
reed@google.com
f6c9a5ba5c add restore() to SkAutoCanvasRestore
git-svn-id: http://skia.googlecode.com/svn/trunk@6505 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-20 15:12:21 +00:00
reed@google.com
260eae59b4 move setDevice() to protected: in preparation for its eventual demise
git-svn-id: http://skia.googlecode.com/svn/trunk@6416 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-14 19:07:24 +00:00
reed@google.com
cd5f7e2222 mark SkCanvas::setDevice as DEPRECATED -- need to remove all callers in chrome
git-svn-id: http://skia.googlecode.com/svn/trunk@6414 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-14 14:40:07 +00:00
caryclark@google.com
8f0a7b8e73 Add temporary interfaces in blur and clip to
permit testing if it is to our advantage
to selectively disable soft clipping and
high quality blurs during animations.
Review URL: https://codereview.appspot.com/6812092

git-svn-id: http://skia.googlecode.com/svn/trunk@6328 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-11-07 14:54:49 +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
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
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
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
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
reed@google.com
97af1a64ae Add caching of the snapshot image form a surface
Notify the surface when the canvas draws into it, so it can invalidate the
cached image, and (if needed) perform a copy-on-write on the surface if it
was being shared with the image.
Review URL: https://codereview.appspot.com/6441115

git-svn-id: http://skia.googlecode.com/svn/trunk@5306 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-28 12:19:02 +00:00
reed@google.com
3b3e895df6 remove EdgeType enum. Unimportant distinction, and removing speeds up quickReject
Review URL: https://codereview.appspot.com/6448161

git-svn-id: http://skia.googlecode.com/svn/trunk@5140 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 20:53:31 +00:00
justinlin@google.com
20a550c6ea Add virtual destructor to class with virtual functions.
BUG=
TEST=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4810 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 17:37:12 +00:00
robertphillips@google.com
40a1ae4df2 Added SkDevice onAttachToCanvas & onDetachFromCanvas methods
http://codereview.appspot.com/6348100/



git-svn-id: http://skia.googlecode.com/svn/trunk@4598 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-13 15:36:15 +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
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
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
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
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
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
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
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
djsollen@google.com
92d2a299d2 reapply r3259 (that was reverted) with fix.
The SkASSERT was incorrect and failing on debug runs.
Review URL: https://codereview.appspot.com/5699071

git-svn-id: http://skia.googlecode.com/svn/trunk@3263 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-27 16:17:59 +00:00
junov@chromium.org
a907ac3e3e Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track matrix and clipping state
Removed 'virtual' from a few canvas methods that no longer need it thanks to this change.

BUG=http://code.google.com/p/skia/issues/detail?id=506
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5697052/



git-svn-id: http://skia.googlecode.com/svn/trunk@3261 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-24 21:54:07 +00:00
djsollen@google.com
3cc0d8a6f0 reverting r3259 because of gm/test failure.
git-svn-id: http://skia.googlecode.com/svn/trunk@3260 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-24 21:21:51 +00:00
djsollen@google.com
42bbef71c7 Enable quickRejectY in SkCanvas to be inlined.
This CL was tested against the picturePlayback bench and
showed an approx 10-13% improvement on Android when playing
back text.
Review URL: https://codereview.appspot.com/5687083

git-svn-id: http://skia.googlecode.com/svn/trunk@3259 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-24 21:03:42 +00:00
junov@chromium.org
0b5b0ce39c reverting r3257 because of gm failure.
git-svn-id: http://skia.googlecode.com/svn/trunk@3258 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-24 20:44:56 +00:00
junov@chromium.org
421bcc375a Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track matrix and clipping state
Removed 'virtual' from a few canvas methods that no longer need it thanks to this change.

BUG=http://code.google.com/p/skia/issues/detail?id=506
TEST=Canvas unit test
REVIEW=http://codereview.appspot.com/5697052/



git-svn-id: http://skia.googlecode.com/svn/trunk@3256 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-24 20:07:08 +00:00
junov@chromium.org
8f9ecbd346 Adding API and unit testing for deferred canvas clearing/purging
REVIEW=http://codereview.appspot.com/5646057/
TEST=DeferredCanvas unit test



git-svn-id: http://skia.googlecode.com/svn/trunk@3181 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-02-13 21:53:45 +00:00
junov@chromium.org
bf6c1e4aff Adding a flush method to SkCanvas
BUG=http://code.google.com/p/skia/issues/detail?id=467
REVIEW=http://codereview.appspot.com/5600044/
TEST=gm uses the new code path on all its test cases



git-svn-id: http://skia.googlecode.com/svn/trunk@3102 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-30 14:53:22 +00:00
vandebo@chromium.org
74b4619616 Formatting cleanup: remove extra whitespace
Change by arthurhsu@chromium.org, original CL: http://codereview.appspot.com/5587049/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@3098 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-28 01:45:11 +00:00
junov@google.com
4370aedf7f Adding class SkDeferredCanvas for deferred rendering.
TEST=added a new pass to gm, so all gm tests are run through SkDeferredCanvas
REVIEW=http://codereview.appspot.com/5430058/



git-svn-id: http://skia.googlecode.com/svn/trunk@3059 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-01-18 16:21:08 +00:00
reed@google.com
7c2029367c add canvas::isDrawingToLayer(), as a fast query for chrome; faster than
setting up a drawiter and counting the layers.



git-svn-id: http://skia.googlecode.com/svn/trunk@2875 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-12-14 18:48:05 +00:00
bsalomon@google.com
d58a1cd00b Add config8888 support to writePixels
Review URL: http://codereview.appspot.com/5374052/



git-svn-id: http://skia.googlecode.com/svn/trunk@2662 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-10 20:57:43 +00:00
djsollen@google.com
56c69773ae Update files to use SK_BUILD_FOR_ANDROID.
This CL also removes any unecessary references to
the ANDROID definition.
Review URL: http://codereview.appspot.com/5354049

git-svn-id: http://skia.googlecode.com/svn/trunk@2629 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-08 19:00:26 +00:00
bsalomon@google.com
6850eab42b Override 32BPP format in SkCanvas::readPixels
Review URL: http://codereview.appspot.com/5330073/



git-svn-id: http://skia.googlecode.com/svn/trunk@2600 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-03 20:29:47 +00:00
bsalomon@google.com
daba14b7d4 Line-endings only change (some windows line-endings snuck in)
git-svn-id: http://skia.googlecode.com/svn/trunk@2588 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 20:10:48 +00:00
bsalomon@google.com
c69809745e Recommit r2584 with gpu pass of the new ReadPixels test disabled in fixed pt (gpu code doesn't work in general in fixed pt).
git-svn-id: http://skia.googlecode.com/svn/trunk@2586 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:57:21 +00:00
bsalomon@google.com
ace7bd5623 Revert r2584 (new test fails in fixed pt builds)
git-svn-id: http://skia.googlecode.com/svn/trunk@2585 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:39:51 +00:00
bsalomon@google.com
1a8ddf0a35 Changes the SkCanvas::readPixels API. Allows caller to read into prealloced bitmap pixels. Changes how clipping to device bounds is handled.
Review URL: http://codereview.appspot.com/5307077/



git-svn-id: http://skia.googlecode.com/svn/trunk@2584 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-02 19:34:16 +00:00
reed@google.com
210ce003a5 add getDeviceSize() so callers won't need to call getDevice() so much
... we hope to make devices private in the future



git-svn-id: http://skia.googlecode.com/svn/trunk@2577 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-11-01 14:24:23 +00:00