aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/utils
Commit message (Collapse)AuthorAge
...
* Migrate SkRTConfRegistry test to DEF_TEST().Gravatar tfarina2014-08-12
| | | | | | | | | | BUG=None TEST=dm --tests=true --gms=false R=mtklein@google.com, bsalomon@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/444303002
* SkCanvas::drawPatch param SkPoint[12]Gravatar dandov2014-08-12
| | | | | | | | | | | | | | | | | | drawPatch now receives as parameter const SkPoint cubics[12] Adjusted derived classes and serialization. Ajusted GM's and benches that take into account combinations of optional parameters, the scale of the patch and 4 different types of patches. Planning on adding the extra functionality of SkPatch in another CL. BUG=skia: R=egdaniel@google.com, reed@google.com Author: dandov@google.com Review URL: https://codereview.chromium.org/463493002
* Revert of Revert of remove (now unneeded) legacy onDrawPicture variant ↵Gravatar reed2014-08-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/457253002/) Reason for revert: webkit has been updated, so re-landing Original issue's description: > Revert of remove (now unneeded) legacy onDrawPicture variant (https://codereview.chromium.org/456203002/) > > Reason for revert: > still need to update ProfilingCanvas in blink > > Original issue's description: > > remove (now unneeded) legacy onDrawPicture variant > > > > TBR=fmalita@google.com > > > > Committed: https://skia.googlesource.com/skia/+/2e69d292e5a389db7d9264eb66172376692de8ca > > TBR= > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/47f9bdcc3d741a63935c52bfe85db44ab13f66f2 R=reed@chromium.org TBR=reed@chromium.org NOTREECHECKS=true NOTRY=true Author: reed@google.com Review URL: https://codereview.chromium.org/460693002
* Revert of remove (now unneeded) legacy onDrawPicture variant ↵Gravatar reed2014-08-10
| | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/456203002/) Reason for revert: still need to update ProfilingCanvas in blink Original issue's description: > remove (now unneeded) legacy onDrawPicture variant > > TBR=fmalita@google.com > > Committed: https://skia.googlesource.com/skia/+/2e69d292e5a389db7d9264eb66172376692de8ca TBR= NOTREECHECKS=true NOTRY=true Author: reed@chromium.org Review URL: https://codereview.chromium.org/457253002
* remove (now unneeded) legacy onDrawPicture variantGravatar reed2014-08-10
| | | | | | | | TBR=fmalita@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/456203002
* add drawPicture variant that takes a matrix and paintGravatar reed2014-08-09
| | | | | | | | | | will need some staging strategy, since chrome and blink have overrides of onDrawPicture R=robertphillips@google.com, fmalita@google.com, bsalomon@google.com, mtklein@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/448793004
* Stopped skipping tests in dm of SkPatch by implementing theGravatar dandov2014-08-07
| | | | | | | | | | | corresponding drawPath calls on classes that derive from SkCanvas. BUG=skia: R=egdaniel@google.com, bsalomon@google.com, mtklein@google.com, robertphillips@google.com Author: dandov@google.com Review URL: https://codereview.chromium.org/429343004
* SkThreadPool and co. are not public.Gravatar mtklein2014-08-06
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/444583006
* SkCanvas interface for drawing a patch.Gravatar dandov2014-08-04
| | | | | | | | | | | | | | | | | Added function SkCanvas::drawPatch to the API. This function receives the patch to draw and the paint. Added function SkBaseDevice::drawPatch to the API. This function also receives the patch to draw and the paint. Currently SkGpuDevice and SkBitmapDevice generate the mesh taking into account the scale factor and call the corresponding device's drawVertices. BUG=skia: R=jvanverth@google.com, egdaniel@google.com, bsalomon@google.com Author: dandov@google.com Review URL: https://codereview.chromium.org/424663006
* Change SkCanvasState to use inheritance.Gravatar scroggo2014-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The base class, SkCanvasState, now holds the version, width, and height. These fields will always be a necessary part of the class. (Also add in some padding.) The other fields, which may change, have been moved into the subclass, SkCanvasState_v1. If/when the version changes, it will correspond to a new subclass. In SkCanvasStateUtils::CreateFromCanvasState, check the version on the base class, then do a static_cast to the version corresponding to SkCanvasState::version. Remove CANVAS_STATE_VERSION, which is redundant with the version specified by the subclass. Use unambiguous type for rowBytes. Build Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG. This allows us to run the full suite of CanvasState tests. It is also representative of what will be used on Android by WebView. Fix CanvasStateTest where it was broken inside ifdef'ed out code. Use SkCanvas::getBaseLayerSize() instead of the deprecated SkCanvas::getDeviceSize(). Update the comments in the header to be more clear. In particular, an SkCanvasState can only be used to pass an SkCanvas' state to a future version of Skia (or the same); not an older version. NOTREECHECKS=true BUG=b/15693384 R=reed@google.com, mtklein@google.com, djsollen@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/372003002
* Add thread safety configuration check.Gravatar henrik.smiding2014-07-09
| | | | | | | | | | | | | | | | | Enables the possibility to set thread model in the configuration files (like Android does). Also adds a warning check to make sure that we have an implementation for the thread safety class. Author: joakim.landberg@intel.com Signed-off-by: Henrik Smiding <henrik.smiding@intel.com> R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com, torne@chromium.org, scroggo@google.com Author: henrik.smiding@intel.com Review URL: https://codereview.chromium.org/361423003
* Split SkPicturePlayback out of SkPictureDataGravatar robertphillips2014-07-07
| | | | | | | | | | | | | | | | | | | This splits the playback functionality out of SkPictureData. The old SkPictureData::draw method is pulled out along with its supporting functions as verbatim as possible. Some follow on CLs will be required to: re-enable profiling in the debugger (and remove the vestiges of SkTimedPicture) re-enable display of command offsets in the picture (this should probably wait until we've switched to SkRecord though) Clean up CachedOperationList (maybe fuse with SkPicture::OperationList) Split SkPicturePlayback into a base class and two derived classes Implement parallel version of GatherGPUInfo for SkRecord Landing this is blocked on removing Android's use of the abortPlayback entry point. R=mtklein@google.com, reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/377623002
* When performing offscreen rendering on windows, attempt to use a pbuffer ↵Gravatar bsalomon2014-07-01
| | | | | | | | | | | | context. A pbuffer context is less likely to have a blocking SwapBuffers (due to vsync). R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/336863009
* Cleanup: Delete SkJSON header.Gravatar tfarina2014-06-30
| | | | | | | | | | | | | It seems it does not have any implementation so it is unlikely it will have any user, either internal or external. BUG=None TEST=make all R=bsalomon@google.com, mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/353183006
* stop calling SkCanvas::getDeviceGravatar reed2014-06-30
| | | | | | | | | BUG=skia: R=bsalomon@google.com, robertphillips@google.com, junov@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/355193006
* SaveFlags be-goneGravatar Florin Malita2014-06-30
| | | | | | | | | | Remove the deprecated save(SaveFlags), willSave(SaveFlags) and all traces of kMatrix_SaveFlags/kClip_SaveFlag. BUG=skia:2297 R=mtklein@google.com, reed@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/340403003
* Support using OpenGL ES context on desktopGravatar kkinnunen2014-06-30
| | | | | | | | | | | | | | Support using OpenGL ES context on desktop for unix and Android platforms. This is mainly useful in development. Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The possible parameters for the flag are "gl" and "gles". R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/319043005
* Deprecate SkPicture::clone().Gravatar mtklein2014-06-27
| | | | | | | | | | | | | | | | | | Chrome will need -DSK_SUPPORT_LEGACY_PICTURE_CLONE. This removes the modes from our tools that use clone(). No bots run these. DM used clone() in a way that we can just share the picture now. I plan to bring back the ability to test multithreaded picture rendering soon. BUG=skia:2378 R=robertphillips@google.com, mtklein@google.com, bsalomon@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/338633011
* Promote SkInterpolator unit test to our tests driver.Gravatar tfarina2014-06-26
| | | | | | | | | | BUG=None TEST=make tests && out/Debug/tests -m Interpolator R=mtklein@google.com, bsalomon@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/351713005
* Revert of Support using OpenGL ES context on desktop ↵Gravatar rmistry2014-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/319043005/) Reason for revert: Caused segmentation fault on many builders. Please see reverted CL's msg #21 for details. Original issue's description: > Support using OpenGL ES context on desktop > > Support using OpenGL ES context on desktop for unix and Android platforms. This > is mainly useful in development. > > Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The > possible parameters for the flag are "gl" and "gles". > > Committed: https://skia.googlesource.com/skia/+/74fc727dc88ee24d89f88cb1709f963e9073aeb3 R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com, kkinnunen@nvidia.com TBR=bsalomon@google.com, kkinnunen@nvidia.com NOTREECHECKS=true NOTRY=true Author: rmistry@google.com Review URL: https://codereview.chromium.org/351583002
* Support using OpenGL ES context on desktopGravatar kkinnunen2014-06-22
| | | | | | | | | | | | | | Support using OpenGL ES context on desktop for unix and Android platforms. This is mainly useful in development. Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The possible parameters for the flag are "gl" and "gles". R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/319043005
* In Android framework, make tools depend on jsoncppGravatar scroggo2014-06-18
| | | | | | | | | | | | | | | | | | Always build the tools with JSON, but either build our own or use the system's. Rename skia_build_json_writer to skia_use_system_jsoncpp, since we now always build with JSON. Remove SK_BUILD_JSON_WRITER, which was only there so we could build without JSON it in the framework. BUG=skia:2448 R=djsollen@google.com, reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/303913002
* More SaveFlags removal twiddling.Gravatar fmalita2014-06-17
| | | | | | | | | | | | | | | | | | This is a follow up to https://codereview.chromium.org/338913002/. More tweaks to allow migrating clients to the new API. 1) switch the shim call direction willSave(SaveFlags) -> willSave() (internal users are still using the former, so external overriders of the latter will not be notified otherwise - doh) 2) ensure willSave() stays visible in SkProxyCanvas (Chromium's TimingCanvas attempts to call it explicitly). BUG=skia:2297 R=reed@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/334393008
* Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)Gravatar robertphillips2014-06-04
| | | | | | | | R=reed@google.com, bsalomon@google.com, mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/313613004
* remove SkBounder -- unused and unlovedGravatar reed2014-06-03
| | | | | | | | | BUG=skia: R=scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/312553006
* Remove unitmappers header.Gravatar scroggo2014-06-02
| | | | | | | | | | | | This file contained a bunch of unitmappers. Luckily noone includes it, since it wouldn't compile (the unitmapper class was removed in https://codereview.chromium.org/288313009). R=reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/295383013
* Changed JSON formatting more, workaround bug where SkStringPrintf causes ↵Gravatar commit-bot@chromium.org2014-05-20
| | | | | | | | | | | | | encoding issues BUG=skia: R=bensong@google.com, jcgregorio@google.com, reed@google.com, bsalomon@google.com Author: kelvinly@google.com Review URL: https://codereview.chromium.org/294093002 git-svn-id: http://skia.googlecode.com/svn/trunk@14808 2bbb7eff-a529-9590-31e7-b0007b416f81
* Generate bench/Android.mk from gyp.Gravatar commit-bot@chromium.org2014-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For now, remove json functionality and do not depend on json. This allows us to build and run until solving skbug.com/2448. bench/DeferredSurfaceCopyBench.cpp: Include GrRenderTarget last, so SK_SUPPORT_GPU will be set properly. bench/ResultsWriter.h: bench/benchmain.cpp: Remove JSONResultsWriter when SK_BUILD_JSON_WRITER is not defined, which is the case for the Android framework build. gyp/bench.gyp: Depend on skia and cutils (for android_atomic_inc etc). gyp/common_conditions.gypi: Define SK_BUILD_JSON_WRITER when skia_build_json_writer is set. gyp/common_variables.gypi: Add a flag for skia_build_json_writer, and set it only when skia_android_framework is not set. gyp/jsoncpp.gyp: Do not build jsoncpp when skia_build_json_writer is not defined. include/utils/SkJSONCPP.h: Do not include json headers when SK_BUILD_JSON_WRITER is not defined. platform_tools/android/bin/gyp_to_android.py: Generate bench/Android.mk. platform_tools/android/gyp_gen/gypd_parser.py: Skip dest_dir when checking for include_dirs. platform_tools/android/gyp_gen/makefile_writer.py: Build bench/Android.mk when building external/skia. platform_tools/android/gyp_gen/tool_makefile_writer.py: Add a parameter for putting the binary into /data/local/tmp. BUG=skia:2447 BUG=skia:2448 R=halcanary@google.com, reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/282053002 git-svn-id: http://skia.googlecode.com/svn/trunk@14760 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add asADash to Lua for scrapingGravatar commit-bot@chromium.org2014-05-14
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com, reed@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/267423006 git-svn-id: http://skia.googlecode.com/svn/trunk@14733 2bbb7eff-a529-9590-31e7-b0007b416f81
* eliminate mac xcode 5 only warningGravatar commit-bot@chromium.org2014-05-04
| | | | | | | | | | | | | | on os x 10.9.2 unistd.h defines sysconf as long sysconf(int); R=mtklein@google.com, reed@google.com Author: caryclark@google.com Review URL: https://codereview.chromium.org/261673004 git-svn-id: http://skia.googlecode.com/svn/trunk@14559 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: Push GPU-parent child tasks to the front of the queue.Gravatar commit-bot@chromium.org2014-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like yesterday's change to run CPU-parent child tasks serially in thread, this reduces peak memory usage by improving the temporaly locality of the bitmaps we create. E.g. Let's say we start with tasks A B C and D Queue: [ A B C D ] Running A creates A' and A", which depend on a bitmap created by A. Queue: [ B C D A' A" * ] That bitmap now needs sit around in RAM while B C and D run pointlessly and can only be destroyed at *. If instead we do this and push dependent child tasks to the front of the queue, the queue and bitmap lifetime looks like this: Queue: [ A' A" * B C D ] This is much, much worse in practice because the queue is often several thousand tasks long. 100s of megs of bitmaps can pile up for 10s of seconds pointlessly. To make this work we add addNext() to SkThreadPool and its cousin DMTaskRunner. I also took the opportunity to swap head and tail in the threadpool implementation so it matches the comments and intuition better: we always pop the head, add() puts it at the tail, addNext() at the head. Before Debug: 49s, 1403352k peak Release: 16s, 2064008k peak After Debug: 49s, 1234788k peak Release: 15s, 1903424k peak BUG=skia:2478 R=bsalomon@google.com, borenet@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/263803003 git-svn-id: http://skia.googlecode.com/svn/trunk@14506 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make drawText calls non-virtual, to ease SkFont and TextBlob ↵Gravatar reed@google.com2014-04-23
| | | | | | | | | | | | | | | (https://codereview.chromium.org/243853006/)" associated chrome change (to be committed with DEPS roll) https://codereview.chromium.org/248693002/ This reverts commit bfaceb53f58c9625b5471fcff35b5ca9ca3ae29c. TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/248083002 git-svn-id: http://skia.googlecode.com/svn/trunk@14321 2bbb7eff-a529-9590-31e7-b0007b416f81
* expose CGImage -> SkBitmapGravatar commit-bot@chromium.org2014-04-22
| | | | | | | | | | | BUG=skia: R=scroggo@google.com, halcanary@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/243463005 git-svn-id: http://skia.googlecode.com/svn/trunk@14315 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of make drawText calls non-virtual, to ease SkFont and TextBlob ↵Gravatar commit-bot@chromium.org2014-04-22
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/243853006/) Reason for revert: need to test more the code-path where we don't opt into the new virtuals Original issue's description: > make drawText calls non-virtual, to ease SkFont and TextBlob > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=14307 R=robertphillips@google.com TBR=robertphillips@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: reed@google.com Review URL: https://codereview.chromium.org/247983003 git-svn-id: http://skia.googlecode.com/svn/trunk@14314 2bbb7eff-a529-9590-31e7-b0007b416f81
* make drawText calls non-virtual, to ease SkFont and TextBlobGravatar commit-bot@chromium.org2014-04-22
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/243853006 git-svn-id: http://skia.googlecode.com/svn/trunk@14307 2bbb7eff-a529-9590-31e7-b0007b416f81
* Consolidate SkCanvas matrix virtuals.Gravatar commit-bot@chromium.org2014-03-25
| | | | | | | | | | | | | | | | Remove didTranslate, didScale, didRotate & didSkew, and rely on didConcat instead. Subclasses can sniff the matrix type if they want to differentiate. (work in progress) R=reed@google.com, robertphillips@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/203203004 git-svn-id: http://skia.googlecode.com/svn/trunk@13940 2bbb7eff-a529-9590-31e7-b0007b416f81
* add initial scraper for dashingGravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | BUG=skia: R=bsalomon@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/196603027 git-svn-id: http://skia.googlecode.com/svn/trunk@13843 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move SkNoSaveLayerCanvas.h to include/utilsGravatar robertphillips@google.com2014-03-16
| | | | | | | | https://codereview.chromium.org/197243005 git-svn-id: http://skia.googlecode.com/svn/trunk@13823 2bbb7eff-a529-9590-31e7-b0007b416f81
* De-virtualize SkCanvas matrix ops.Gravatar commit-bot@chromium.org2014-03-13
| | | | | | | | | | | | | | This moves the matrix management logic into non-virtual SkCanvas methods, and turns the virtuals into protected notifiers. R=reed@google.com, robertphillips@google.com, bsalomon@google.com BUG=skia:2297 Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/195793012 git-svn-id: http://skia.googlecode.com/svn/trunk@13799 2bbb7eff-a529-9590-31e7-b0007b416f81
* De-virtualize SkCanvas save/restore.Gravatar commit-bot@chromium.org2014-03-12
| | | | | | | | | | | | | This moves the state management logic into non-virtual SkCanvas methods, and turns the virtuals into protected notifiers. R=reed@google.com, robertphillips@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/194713008 git-svn-id: http://skia.googlecode.com/svn/trunk@13776 2bbb7eff-a529-9590-31e7-b0007b416f81
* support direct writing to top layer, and hide getTopLayer()Gravatar reed@google.com2014-03-12
| | | | | | | | | | | | | | | | this should remove many of the chrome callers that today call accessBitmap on the toplayer, so they can read/write those pixels. The ultimate fix will be to support custom allocation of raster layers (via GDI/cairo/mac) so we can remove PlatformDevice subclassing in skia/ext BUG=skia: R=bsalomon@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/197433002 git-svn-id: http://skia.googlecode.com/svn/trunk@13774 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Revert of Revert "De-virtualize SkCanvas save/restore." ↵Gravatar commit-bot@chromium.org2014-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/196323003/) Reason for revert: Pulling out to rename the virtuals. Original issue's description: > Revert of Revert "De-virtualize SkCanvas save/restore." (https://codereview.chromium.org/194923008/) > > Reason for revert: > Re-landing after roll fix. > > Original issue's description: > > Revert "De-virtualize SkCanvas save/restore." > > > > (To allow a roll fix into the tree). > > > > This reverts commit edf702204be42c945254191f9f9cd6585b3d189b. > > > > R=halcanary@google.com > > > > Committed: https://code.google.com/p/skia/source/detail?r=13748 > > TBR=halcanary@google.com,fmalita@chromium.org > NOTREECHECKS=true > NOTRY=true > > Committed: http://code.google.com/p/skia/source/detail?r=13754 R=halcanary@google.com, fmalita@chromium.org TBR=fmalita@chromium.org, halcanary@google.com NOTREECHECKS=true NOTRY=true Author: fmalita@google.com Review URL: https://codereview.chromium.org/197553002 git-svn-id: http://skia.googlecode.com/svn/trunk@13765 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Revert "De-virtualize SkCanvas save/restore." ↵Gravatar commit-bot@chromium.org2014-03-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/194923008/) Reason for revert: Re-landing after roll fix. Original issue's description: > Revert "De-virtualize SkCanvas save/restore." > > (To allow a roll fix into the tree). > > This reverts commit edf702204be42c945254191f9f9cd6585b3d189b. > > R=halcanary@google.com > > Committed: https://code.google.com/p/skia/source/detail?r=13748 R=halcanary@google.com, fmalita@chromium.org TBR=fmalita@chromium.org, halcanary@google.com NOTREECHECKS=true NOTRY=true Author: fmalita@google.com Review URL: https://codereview.chromium.org/196323003 git-svn-id: http://skia.googlecode.com/svn/trunk@13754 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "De-virtualize SkCanvas save/restore."Gravatar fmalita@google.com2014-03-11
| | | | | | | | | | | | (To allow a roll fix into the tree). This reverts commit edf702204be42c945254191f9f9cd6585b3d189b. R=halcanary@google.com Review URL: https://codereview.chromium.org/194923008 git-svn-id: http://skia.googlecode.com/svn/trunk@13748 2bbb7eff-a529-9590-31e7-b0007b416f81
* De-virtualize SkCanvas save/restore.Gravatar fmalita@google.com2014-03-11
| | | | | | | | | | | This moves the state management logic into non-virtual SkCanvas methods, and turns the virtuals into protected notifiers. R=robertphillips@google.com, reed@google.com Review URL: https://codereview.chromium.org/194713008 git-svn-id: http://skia.googlecode.com/svn/trunk@13747 2bbb7eff-a529-9590-31e7-b0007b416f81
* Drop executable flag from headers so that they can be packagedGravatar robertphillips@google.com2014-03-11
| | | | | | | | https://codereview.chromium.org/194883004/ git-svn-id: http://skia.googlecode.com/svn/trunk@13746 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: make GPU tasks multithreaded again. Big refactor.Gravatar commit-bot@chromium.org2014-02-28
| | | | | | | | | | | | | | | | | | | | | | The main meat of things is in SkThreadPool. We can now give SkThreadPool a type for each thread to create and destroy on its local stack. It's TLS without going through SkTLS. I've split the DM tasks into CpuTasks that run on threads with no TLS, and GpuTasks that run on threads with a thread local GrContextFactory. The old CpuTask and GpuTask have been renamed to CpuGMTask and GpuGMTask. Upshot: default run of out/Debug/dm goes from ~45 seconds to ~20 seconds. BUG=skia: R=bsalomon@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/179233005 git-svn-id: http://skia.googlecode.com/svn/trunk@13632 2bbb7eff-a529-9590-31e7-b0007b416f81
* add new onClip* methods to SkCanvasGravatar robertphillips@google.com2014-02-28
| | | | | | | | https://codereview.chromium.org/183453002/ git-svn-id: http://skia.googlecode.com/svn/trunk@13627 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of r13620 (add new onClip* methods to SkCanvas - ↵Gravatar robertphillips@google.com2014-02-28
| | | | | | https://codereview.chromium.org/183453002/) due to broken Chrome Canary and failing tests. git-svn-id: http://skia.googlecode.com/svn/trunk@13622 2bbb7eff-a529-9590-31e7-b0007b416f81
* add new onClip* methods to SkCanvasGravatar robertphillips@google.com2014-02-28
| | | | | | | | https://codereview.chromium.org/183453002/ git-svn-id: http://skia.googlecode.com/svn/trunk@13620 2bbb7eff-a529-9590-31e7-b0007b416f81