aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/utils
Commit message (Collapse)AuthorAge
* Implement SkCondVar for windows.Gravatar scroggo@google.com2012-10-31
| | | | | | | | Only works on Vista or later, since it uses condition variables. Review URL: https://codereview.appspot.com/6812062 git-svn-id: http://skia.googlecode.com/svn/trunk@6225 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkThreadPool for managing threads.Gravatar scroggo@google.com2012-10-31
| | | | | | | | | | Skia-ized from https://codereview.appspot.com/6755043/ TODO: Use SkThread and platform independent features. Review URL: https://codereview.appspot.com/6777064 git-svn-id: http://skia.googlecode.com/svn/trunk@6217 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding virtual method to SkDeferredCanvas::NotificationClient for signaling ↵Gravatar junov@google.com2012-10-01
| | | | | | | | | | when commands are skipped due to the skip on clear optimization. TEST=DeferredCanvas unit test BUG=http://code.google.com/p/chromium/issues/detail?id=116840 Review URL: https://codereview.appspot.com/6590050 git-svn-id: http://skia.googlecode.com/svn/trunk@5747 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding hasPendingCommands API method to SkDeferredCanvasGravatar junov@chromium.org2012-09-20
| | | | | | | BUG=http://code.google.com/p/chromium/issues/detail?id=146178 Review URL: https://codereview.appspot.com/6550050 git-svn-id: http://skia.googlecode.com/svn/trunk@5632 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding a silent playback option to SkGPipeReadGravatar junov@chromium.org2012-09-20
| | | | | | | | | | | Testing state consistency after silent playback in CanvasTest indirectly through SkDeferredCanvas. BUG=http://code.google.com/p/chromium/issues/detail?id=146178 TEST=CanvasTest unit test, and bench with --mode deferredSilent Review URL: https://codereview.appspot.com/6542047 git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81
* re-re-land 5578Gravatar reed@google.com2012-09-18
| | | | | | | | 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
* revert 5580Gravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
* re-land 5578 w/ pipe fixGravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 5578 -- broke pipeGravatar reed@google.com2012-09-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@5579 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change drawBitmapRect to take a float-src-rect instead of integer-src-rect. ThisGravatar reed@google.com2012-09-18
| | | | | | | | | | | | | | | | | | 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
* Result of running tools/sanitize_source_files.py (which was added in ↵Gravatar rmistry@google.com2012-08-23
| | | | | | | | | https://codereview.appspot.com/6465078/) This CL is part I of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6485054 git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
* Stop refcounting SkDeferredCanvas::NotificationClientGravatar junov@chromium.org2012-08-20
| | | | | | | | User code (i.e. WebKit) is now responsible for the lifetime scope of the notification client. With http://trac.webkit.org/changeset/125804 skia-side ref counting has become unnecessary and undesirable. Review URL: https://codereview.appspot.com/6443146 git-svn-id: http://skia.googlecode.com/svn/trunk@5169 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleaning up deprecated API in SkDeferredCanvasGravatar junov@chromium.org2012-08-17
| | | | | | Review URL: https://codereview.appspot.com/6461077 git-svn-id: http://skia.googlecode.com/svn/trunk@5152 2bbb7eff-a529-9590-31e7-b0007b416f81
* DirectWrite font host for skia.Gravatar bungeman@google.com2012-08-16
| | | | | | | https://codereview.appspot.com/5417063/ git-svn-id: http://skia.googlecode.com/svn/trunk@5128 2bbb7eff-a529-9590-31e7-b0007b416f81
* Extended Inst counting to find "unknown" leaked object (SkTMaskGamma)Gravatar robertphillips@google.com2012-08-16
| | | | | | | | http://codereview.appspot.com/6453127/ git-svn-id: http://skia.googlecode.com/svn/trunk@5123 2bbb7eff-a529-9590-31e7-b0007b416f81
* Augmenting SkDeferredCanvas notification interface to signal flushes and ↵Gravatar junov@chromium.org2012-08-14
| | | | | | | | | | | | memory allocations Renamed SkDeferredCanvas::DeviceContext to SkDeferredCanvas::NotificationClient BUG=http://code.google.com/p/chromium/issues/detail?id=136828 TEST=Added coverage for new API to DeferredCanvas unit test. Added DeferredCanvas bench test to track deferred canvas overhead cost. Review URL: https://codereview.appspot.com/6442108 git-svn-id: http://skia.googlecode.com/svn/trunk@5078 2bbb7eff-a529-9590-31e7-b0007b416f81
* Moving DeferredDevice and DeferredGPipeController classes out of the ↵Gravatar junov@chromium.org2012-08-07
| | | | | | | | deferred canvas API header Review URL: https://codereview.appspot.com/6449104 git-svn-id: http://skia.googlecode.com/svn/trunk@4989 2bbb7eff-a529-9590-31e7-b0007b416f81
* Removing the SkPicture backend from SkDeferredCanvas codeGravatar junov@chromium.org2012-08-07
| | | | | | Review URL: https://codereview.appspot.com/6446095 git-svn-id: http://skia.googlecode.com/svn/trunk@4974 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding API to SkGPipe and SkDeferredCanvas for controlling memory usage ↵Gravatar junov@chromium.org2012-08-07
| | | | | | | | | externally BUG=http://code.google.com/p/chromium/issues/detail?id=136828 Review URL: https://codereview.appspot.com/6454102 git-svn-id: http://skia.googlecode.com/svn/trunk@4971 2bbb7eff-a529-9590-31e7-b0007b416f81
* Turning on deferred canvas SkGPipe backend by defaultGravatar junov@chromium.org2012-08-01
| | | | | | Review URL: https://codereview.appspot.com/6452080 git-svn-id: http://skia.googlecode.com/svn/trunk@4897 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make SkDeferredCanvas query SkGPipeWriter for space allocated for bitmaps.Gravatar scroggo@google.com2012-07-26
| | | | | | | | | | | SkGPipe now has a method to report how much memory is used for its shared heap. BUG=http://code.google.com/p/skia/issues/detail?id=738 TEST=DeferredCanvasTest Review URL: https://codereview.appspot.com/6445046 git-svn-id: http://skia.googlecode.com/svn/trunk@4791 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactoring how SkDeferredCanvas manages mutable bitmapsGravatar junov@chromium.org2012-07-25
| | | | | | | | | | | | | This CL makes the SkGPipe flavor of SkDeferredCanvas properly decide whether to flush or record mutable bitmaps. The flushing is now managed by conditionally switching the canvas to non-deferred mode, which avoids an unnecessary transient copy of the bitmap. BUG=http://code.google.com/p/chromium/issues/detail?id=137884 TEST=DeferredCanvas unit test, sub test TestDeferredCanvasMemoryLimit Review URL: https://codereview.appspot.com/6421060 git-svn-id: http://skia.googlecode.com/svn/trunk@4756 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove SkSfntUtils, as it is not longer used.Gravatar bungeman@google.com2012-07-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4735 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkSfntUtils should use public types.Gravatar bungeman@google.com2012-07-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4734 2bbb7eff-a529-9590-31e7-b0007b416f81
* Response to post-commit review comments on r4714Gravatar junov@chromium.org2012-07-23
| | | | | | | | | Correcting formatting and adding const in SkDeferredCanvas.h Unreviewed git-svn-id: http://skia.googlecode.com/svn/trunk@4718 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix unbound memory consumption problem with run away deferred canvases.Gravatar junov@chromium.org2012-07-23
| | | | | | | | | | | | With this CL, deferred canvases will trigger a flush when then the memory allocated for recording commands (including flattened objects) exceeds 64MB. TEST=DeferredCanvas skia unit test, test step TestDeferredCanvasMemoryLimit BUG=http://code.google.com/p/chromium/issues/detail?id=137884 Review URL: https://codereview.appspot.com/6425053 git-svn-id: http://skia.googlecode.com/svn/trunk@4714 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r4695Gravatar junov@chromium.org2012-07-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4697 2bbb7eff-a529-9590-31e7-b0007b416f81
* Try turning on the SkGPipe path in SkDeferredCanvasGravatar junov@chromium.org2012-07-20
| | | | | | | | Unreviewed git-svn-id: http://skia.googlecode.com/svn/trunk@4695 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixing heap corruption issue in deferred canvas when using SkGPipe.Gravatar junov@chromium.org2012-07-19
| | | | | | | | Swapping the declaration order of fPipeController and fPipeWriter to make sure that the writer is destroyed first before the controller. Review URL: https://codereview.appspot.com/6427054 git-svn-id: http://skia.googlecode.com/svn/trunk@4682 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactoring SkDeferredCanvas to use SkGPipe.Gravatar junov@chromium.org2012-07-18
| | | | | | | | | | Keeping the refactor hidden behind a config macro for now. TEST=covered by existing skia gm tests BUG=https://code.google.com/p/chromium/issues/detail?id=133432 Review URL: https://codereview.appspot.com/6405054 git-svn-id: http://skia.googlecode.com/svn/trunk@4656 2bbb7eff-a529-9590-31e7-b0007b416f81
* Added SkDevice onAttachToCanvas & onDetachFromCanvas methodsGravatar robertphillips@google.com2012-07-13
| | | | | | | | http://codereview.appspot.com/6348100/ git-svn-id: http://skia.googlecode.com/svn/trunk@4598 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkPath::contains(x, y)Gravatar mike@reedtribe.org2012-07-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4526 2bbb7eff-a529-9590-31e7-b0007b416f81
* experimental hittest for paths (incomplete)Gravatar mike@reedtribe.org2012-07-03
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4437 2bbb7eff-a529-9590-31e7-b0007b416f81
* more SkInstCnt plumbingGravatar reed@google.com2012-06-26
| | | | | | | | fix some typeface leaks git-svn-id: http://skia.googlecode.com/svn/trunk@4348 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move SkColorTable into its own header and reduce includes in SkFlattenable.hGravatar djsollen@google.com2012-06-12
| | | | | | Review URL: https://codereview.appspot.com/6299072 git-svn-id: http://skia.googlecode.com/svn/trunk@4236 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SK_API to null canvas create methodGravatar bsalomon@google.com2012-06-11
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4221 2bbb7eff-a529-9590-31e7-b0007b416f81
* Null canvasGravatar bsalomon@google.com2012-06-11
| | | | | | | | Review URL: http://codereview.appspot.com/6117051/ git-svn-id: http://skia.googlecode.com/svn/trunk@4220 2bbb7eff-a529-9590-31e7-b0007b416f81
* Windows compiler complaint cleanupGravatar robertphillips@google.com2012-05-31
| | | | | | | | http://codereview.appspot.com/6262047/ git-svn-id: http://skia.googlecode.com/svn/trunk@4098 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add device to top level N-way canvas.Gravatar djsollen@google.com2012-05-01
| | | | | | Review URL: https://codereview.appspot.com/6131062 git-svn-id: http://skia.googlecode.com/svn/trunk@3811 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add coverage AA support for SampleApp root layers (windows only)Gravatar bsalomon@google.com2012-04-17
| | | | | | | | | Review URL: http://codereview.appspot.com/6043045/ git-svn-id: http://skia.googlecode.com/svn/trunk@3703 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleanup code related to SkFlattenable::flatten()Gravatar djsollen@google.com2012-03-29
| | | | | | | | | | | | | | | | | 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
* Move SkTextBox.h from utils to views.Gravatar bungeman@google.com2012-03-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3531 2bbb7eff-a529-9590-31e7-b0007b416f81
* Create macro for registering classes for deserializationGravatar djsollen@google.com2012-03-26
| | | | | | Review URL: https://codereview.appspot.com/5909063 git-svn-id: http://skia.googlecode.com/svn/trunk@3494 2bbb7eff-a529-9590-31e7-b0007b416f81
* Utils must not depend on Views.Gravatar bungeman@google.com2012-03-21
| | | | | | | http://codereview.appspot.com/5867051/ git-svn-id: http://skia.googlecode.com/svn/trunk@3459 2bbb7eff-a529-9590-31e7-b0007b416f81
* Upstream changes from Android repository.Gravatar djsollen@google.com2012-03-21
| | | | | | Review URL: https://codereview.appspot.com/5752055 git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
* reverting r3268 because of test failuresGravatar junov@chromium.org2012-02-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3270 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkDeferredCanvas, performance: small refactor to remove unnecessary ↵Gravatar junov@chromium.org2012-02-28
| | | | | | | | | | conditional branches on all canvas API calls REVIEW=http://codereview.appspot.com/5700086/ git-svn-id: http://skia.googlecode.com/svn/trunk@3268 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track ↵Gravatar junov@chromium.org2012-02-24
| | | | | | | | | | | | | | 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
* reverting r3257 because of gm failure.Gravatar junov@chromium.org2012-02-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3258 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modify SkDeferredCanvas so that it uses its inherited SkCanvas to track ↵Gravatar junov@chromium.org2012-02-24
| | | | | | | | | | | | | | 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