aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/core
Commit message (Collapse)AuthorAge
* Thread picture version through to SkReadBuffer.Gravatar commit-bot@chromium.org2014-03-28
| | | | | | | | | | | | | This will let code outside SkPicture* fork its read code based on the picture version. BUG=skia: R=reed@google.com, robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/214413008 git-svn-id: http://skia.googlecode.com/svn/trunk@13984 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of ARM Skia NEON patches - 35 - First AArch64 support ↵Gravatar commit-bot@chromium.org2014-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/143423004/) Reason for revert: GYP's failing on most (all?) bots. Original issue's description: > ARM Skia NEON patches - 35 - First AArch64 support > > Aarch64 support > > This change contains the necessary modifications to have Skia build and > run properly on an ARMv8 processor in aarch64 execution state. > > Here's a list of the changes: > > - add an arm64 target to the build system + SK_CPU_ARM64 flag > > - MatrixTest was failing when built in Release mode. Fused MAC > instructions were generated which made some intermediate results > more accurate. As the test relies on result comparison, the more > precise results when compared to others led to a gap bigger than > what was tolerated. As I don't know if some actual skia code relies > on results being comparable, I've disabled fused MAC instruction > with -ffp-contract=off for arm64. > > - Modify include/core/SkOnce.h to have barriers work. > > - SK_CPU_ARM64 implies SK_ARM_NEON_MODE_ALWAYS. > > - use existing Xfermode optimisations with modifications that can be > removed in the future when toolchains are ready. Also save a few > instructions is two Xfermodes (will apply to ARM too). > > - use existing SkBoxBlur and SkMorphology optimisations. > > - use existing SkBlitMask optimisations > > - use existing BitmapProcState and Convolution optimisations. > > Future changes will include: > > - Blitters (only partialy merged upstream) > > - SkUtils (there's little value in sending asm optimisations without > having them benchmarked on real hardware). > > Signed-off-by: Kevin PETIT <kevin.petit@arm.com> > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13980 R=djsollen@google.com, reed@google.com, halcanary@google.com, kevin.petit@arm.com TBR=djsollen@google.com, halcanary@google.com, kevin.petit@arm.com, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/216113005 git-svn-id: http://skia.googlecode.com/svn/trunk@13983 2bbb7eff-a529-9590-31e7-b0007b416f81
* ARM Skia NEON patches - 35 - First AArch64 supportGravatar commit-bot@chromium.org2014-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Aarch64 support This change contains the necessary modifications to have Skia build and run properly on an ARMv8 processor in aarch64 execution state. Here's a list of the changes: - add an arm64 target to the build system + SK_CPU_ARM64 flag - MatrixTest was failing when built in Release mode. Fused MAC instructions were generated which made some intermediate results more accurate. As the test relies on result comparison, the more precise results when compared to others led to a gap bigger than what was tolerated. As I don't know if some actual skia code relies on results being comparable, I've disabled fused MAC instruction with -ffp-contract=off for arm64. - Modify include/core/SkOnce.h to have barriers work. - SK_CPU_ARM64 implies SK_ARM_NEON_MODE_ALWAYS. - use existing Xfermode optimisations with modifications that can be removed in the future when toolchains are ready. Also save a few instructions is two Xfermodes (will apply to ARM too). - use existing SkBoxBlur and SkMorphology optimisations. - use existing SkBlitMask optimisations - use existing BitmapProcState and Convolution optimisations. Future changes will include: - Blitters (only partialy merged upstream) - SkUtils (there's little value in sending asm optimisations without having them benchmarked on real hardware). Signed-off-by: Kevin PETIT <kevin.petit@arm.com> BUG=skia: R=djsollen@google.com, reed@google.com, mtklein@google.com, halcanary@google.com Author: kevin.petit@arm.com Review URL: https://codereview.chromium.org/143423004 git-svn-id: http://skia.googlecode.com/svn/trunk@13980 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add discard API to SkCanvas, plumb it to glDiscardFramebuffer()Gravatar commit-bot@chromium.org2014-03-28
| | | | | | | | | | | BUG=skia:2349 R=robertphillips@google.com, reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/211683002 git-svn-id: http://skia.googlecode.com/svn/trunk@13976 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Implement text rendering with NVPR ↵Gravatar commit-bot@chromium.org2014-03-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/196133014/) Reason for revert: This probably caused Win8 test bot fail during gm run: http://108.170.217.252:10117/builders/Test-Win8-ShuttleA-GTX660-x86-Debug/builds/574 I can not identify any errors from the logs, so maybe it hung or something? Original issue's description: > Implement text rendering with NVPR > > Use path rendering to render the text from outlines if supported by the > GPU. Implement this in GrStencilAndCoverTextContext by copying large > chunks of code from GrBitmapTextContext (drawText) and > GrDistanceFieldTextContext (drawPosText). > > The drawing is implemented with "instanced" path drawing > functions. > > Moves the creation of the "main" text context from SkGpuDevice to the > GrContext::createTextContext. This is done because the decision of which > text renderer is optimal can be made only with the internal > implementation-specific information of the context. > > Committed: http://code.google.com/p/skia/source/detail?r=13962 R=jvanverth@google.com, bsalomon@google.com, mtklein@google.com TBR=bsalomon@google.com, jvanverth@google.com, mtklein@google.com NOTREECHECKS=true NOTRY=true Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/213123014 git-svn-id: http://skia.googlecode.com/svn/trunk@13963 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement text rendering with NVPRGravatar commit-bot@chromium.org2014-03-27
| | | | | | | | | | | | | | | | | | | | | | | Use path rendering to render the text from outlines if supported by the GPU. Implement this in GrStencilAndCoverTextContext by copying large chunks of code from GrBitmapTextContext (drawText) and GrDistanceFieldTextContext (drawPosText). The drawing is implemented with "instanced" path drawing functions. Moves the creation of the "main" text context from SkGpuDevice to the GrContext::createTextContext. This is done because the decision of which text renderer is optimal can be made only with the internal implementation-specific information of the context. R=jvanverth@google.com, bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/196133014 git-svn-id: http://skia.googlecode.com/svn/trunk@13962 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove all references to legacy Config8888Gravatar reed@google.com2014-03-26
| | | | | | | | | BUG=skia: R=bsalomon@google.com Review URL: https://codereview.chromium.org/211043002 git-svn-id: http://skia.googlecode.com/svn/trunk@13952 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
* Revert "Revert of implement readPixels and writePixels natively, w/o using ↵Gravatar reed@google.com2014-03-25
| | | | | | | | | | | | | the (deprecated) (https://codereview.chromium.org/199733016/)" This reverts commit 9a90bd16dc6756395c422adf0f24560d033ed9ea. BUG=skia: R=bsalomon@google.com Review URL: https://codereview.chromium.org/211293002 git-svn-id: http://skia.googlecode.com/svn/trunk@13939 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of implement readPixels and writePixels natively, w/o using the ↵Gravatar commit-bot@chromium.org2014-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (deprecated) (https://codereview.chromium.org/199733016/) Reason for revert: Android bots segfaulting in tests. Original issue's description: > implement readPixels and writePixels natively, w/o using the (deprecated) > SkCanvas::Config8888 enum. > > Revert "Revert "hide Config8888 entirely". Broke a bunch of builds." > > This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b. > > Needs chrome to remove the READPIXELS guard from skia's .gyp > > Committed: https://code.google.com/p/skia/source/detail?r=13931 R=reed@google.com TBR=reed@google.com NOTREECHECKS=true NOTRY=true Author: mtklein@google.com Review URL: https://codereview.chromium.org/209233004 git-svn-id: http://skia.googlecode.com/svn/trunk@13932 2bbb7eff-a529-9590-31e7-b0007b416f81
* implement readPixels and writePixels natively, w/o using the (deprecated)Gravatar reed@google.com2014-03-25
| | | | | | | | | | | | | | SkCanvas::Config8888 enum. Revert "Revert "hide Config8888 entirely". Broke a bunch of builds." This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b. Needs chrome to remove the READPIXELS guard from skia's .gyp Review URL: https://codereview.chromium.org/199733016 git-svn-id: http://skia.googlecode.com/svn/trunk@13931 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-24
| | | | | | | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=13856 Committed: http://code.google.com/p/skia/source/detail?r=13887 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13927 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add new experimental API to SkPicture to get "id" of current opGravatar commit-bot@chromium.org2014-03-24
| | | | | | | | | | | | When gathering information about a picture (in the new SkDevice::EXPERIMENTAL_optimize entry point) it is necessary to be able to correlate the gathered information with the command in the SkPicture (so the information can later be combined with the similarly indexed information from the BBH). This entry point exposes that information to friend classes. R=reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/206853003 git-svn-id: http://skia.googlecode.com/svn/trunk@13919 2bbb7eff-a529-9590-31e7-b0007b416f81
* Have SkTArray state that it default-initializes.Gravatar bungeman@google.com2014-03-24
| | | | | | | | | | | | The current comments in SkTArray lead one to believe that it is default constructing all types. However, it is not calling the default constructor for primitive types, it is actually default-initializing. R=bsalomon@google.com Review URL: https://codereview.chromium.org/208393006 git-svn-id: http://skia.googlecode.com/svn/trunk@13909 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add removeShuffle to SkTArray and add SkTArray tests.Gravatar bungeman@google.com2014-03-21
| | | | | | | | R=reed@google.com Review URL: https://codereview.chromium.org/208153008 git-svn-id: http://skia.googlecode.com/svn/trunk@13895 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of SkPaint: eliminate some dead bytes in 64-bit build. ↵Gravatar commit-bot@chromium.org2014-03-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/203203003/) Reason for revert: Huh, some Android tests are still failing despite the fix. IntelRhB, Xoom... that's weird. Original issue's description: > SkPaint: eliminate some dead bytes in 64-bit build. > > + memcpy-based copy constructor was hiding this gap -> manual copy constructor. > + Split tests for finer-grained failures. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13856 > > Committed: http://code.google.com/p/skia/source/detail?r=13887 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/206623005 git-svn-id: http://skia.googlecode.com/svn/trunk@13888 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-20
| | | | | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=13856 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13887 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix cull nesting assertion.Gravatar commit-bot@chromium.org2014-03-20
| | | | | | | | | | | | | | | | | | | | Cull rects are in local coordinates and cannot be compared directly. No wonder it was so hard enforcing this in Blink :o This moves the validation logic into SkCanvas, using a device-space cull stack (debug build only). There are still some Blink bugs causing violations, so for now I'd like to keep this as an error message only. R=reed@google.com, robertphillips@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/200923008 git-svn-id: http://skia.googlecode.com/svn/trunk@13885 2bbb7eff-a529-9590-31e7-b0007b416f81
* replace old SK_TRACE_EVENT macros with new TRACE_EVENT ones, and then remove ↵Gravatar commit-bot@chromium.org2014-03-20
| | | | | | | | | | | | | them entirely! BUG=skia:353 R=tomhudson@google.com, epoger@google.com, reed@google.com, egdaniel@google.com, bsalomon@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/196133033 git-svn-id: http://skia.googlecode.com/svn/trunk@13884 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "hide Config8888 entirely". Broke a bunch of builds.Gravatar bsalomon@google.com2014-03-20
| | | | | | | | | | | | | | | This reverts commit fa11c49cc11a6c9ebafbf9c59e118917f9b3cc56. Revert "Sanitizing source files in Housekeeper-Nightly" to make the above revert clean. This reverts commit b5787422c8eb2a27a9576777597fd9e06784acdb. TBR=reed@google.com TBR=jcgregorio@google.com Review URL: https://codereview.chromium.org/205963003 git-svn-id: http://skia.googlecode.com/svn/trunk@13872 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13871 2bbb7eff-a529-9590-31e7-b0007b416f81
* stub for ganesh vetoGravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | BUG=skia: R=bsalomon@google.com, nduca@chromium.org Author: humper@google.com Review URL: https://codereview.chromium.org/197803002 git-svn-id: http://skia.googlecode.com/svn/trunk@13866 2bbb7eff-a529-9590-31e7-b0007b416f81
* hide Config8888 entirelyGravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | BUG=skia: R=bsalomon@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/203993002 git-svn-id: http://skia.googlecode.com/svn/trunk@13865 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding a new SkSurface factory for generating surfaces from the scratch ↵Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | texture pool. TEST=Surface unit test BUG=crbug.com/351798 R=bsalomon@google.com, robertphillips@google.com, reed@google.com Author: junov@chromium.org Review URL: https://codereview.chromium.org/201153023 git-svn-id: http://skia.googlecode.com/svn/trunk@13864 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fixed cross compilation with mingw.Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | | | | | | | | Tested in Mozilla source tree. I tried to use skia build system, but it's up to the task for cross compilation. SkHRESULT.cpp - Use proper file name (that matters on case sensitive OSes) SkAtomics_win.h - Don't use pragma intrinsic on GCC (this causes massive warnings) SkOSFile_win.cpp - This one is tricky. GCC doesn't allow (void*) casts in template argument constants and INVALID_HANDLE_VALUE looks like this: ((HANDLE)(LONG_PTR)-1) where HANDLE is typedefed to void*. Changed the code to use LONG_PTR as template argument and cast it when needed. BUG=skia: R=bungeman@google.com, reed@google.com Author: cjacek@gmail.com Review URL: https://codereview.chromium.org/198643004 git-svn-id: http://skia.googlecode.com/svn/trunk@13862 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of SkPaint: eliminate some dead bytes in 64-bit build. ↵Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/203203003/) Reason for revert: Causing RunTest failures on Android. Original issue's description: > SkPaint: eliminate some dead bytes in 64-bit build. > > + memcpy-based copy constructor was hiding this gap -> manual copy constructor. > + Split tests for finer-grained failures. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13856 R=reed@google.com, mtklein@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, mtklein@google.com, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/204543002 git-svn-id: http://skia.googlecode.com/svn/trunk@13858 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkPaint: eliminate some dead bytes in 64-bit build.Gravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | | | | + memcpy-based copy constructor was hiding this gap -> manual copy constructor. + Split tests for finer-grained failures. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/203203003 git-svn-id: http://skia.googlecode.com/svn/trunk@13856 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add a means of extracting active operations from SkPictureGravatar commit-bot@chromium.org2014-03-18
| | | | | | | | | | | | | | | | | | For the "pull forward" task I will be comparing the two cases: analyze the whole skp and use the BBH information analyze only the active portion of the skp In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it. Committed: http://code.google.com/p/skia/source/detail?r=13836 R=reed@google.com, bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/195793010 git-svn-id: http://skia.googlecode.com/svn/trunk@13853 2bbb7eff-a529-9590-31e7-b0007b416f81
* update comment on setShader to clarify alpha-bitmap behavior in bitmapshadersGravatar commit-bot@chromium.org2014-03-18
| | | | | | | | | | | BUG=skia:2293 R=bsalomon@google.com, yunchao.he@intel.com Author: reed@google.com Review URL: https://codereview.chromium.org/203203005 git-svn-id: http://skia.googlecode.com/svn/trunk@13851 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of r13836 due to Chromium cc_unittests failuresGravatar robertphillips@google.com2014-03-18
| | | | | | | | https://codereview.chromium.org/203333005/ git-svn-id: http://skia.googlecode.com/svn/trunk@13850 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove SkCanvas matrix ops return value.Gravatar commit-bot@chromium.org2014-03-18
| | | | | | | | | | | | | The internal SkMatrix ops can no longer fail -> we can remove the bool return value. R=bsalomon@google.com, reed@google.com, robertphillips@google.com, scroggo@google.com, fmalita@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/200223008 git-svn-id: http://skia.googlecode.com/svn/trunk@13849 2bbb7eff-a529-9590-31e7-b0007b416f81
* add new readPixels with direct memory parametersGravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | BUG=skia: R=scroggo@google.com, bsalomon@google.com, robertphillips@google.com, fmalita@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/199413013 git-svn-id: http://skia.googlecode.com/svn/trunk@13840 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add nine patch type to SkRRect.Gravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | | | | BUG=skia:2181 Committed: http://code.google.com/p/skia/source/detail?r=13833 R=robertphillips@google.com, reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/196343015 git-svn-id: http://skia.googlecode.com/svn/trunk@13839 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Add nine patch type to SkRRect. ↵Gravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/196343015/) Reason for revert: causes tests to have infinite loop Original issue's description: > Add nine patch type to SkRRect. > > BUG=skia:2181 > > Committed: http://code.google.com/p/skia/source/detail?r=13833 R=robertphillips@google.com, reed@google.com TBR=reed@google.com, robertphillips@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2181 Author: bsalomon@google.com Review URL: https://codereview.chromium.org/202163004 git-svn-id: http://skia.googlecode.com/svn/trunk@13837 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add a means of extracting active operations from SkPictureGravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | | | | | | For the "pull forward" task I will be comparing the two cases: analyze the whole skp and use the BBH information analyze only the active portion of the skp In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it. R=reed@google.com, bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/195793010 git-svn-id: http://skia.googlecode.com/svn/trunk@13836 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SK_SUPPORT_LEGACY_WRITEPIXELSCONFIG -- dead codeGravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | BUG=skia: R=halcanary@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/201973003 git-svn-id: http://skia.googlecode.com/svn/trunk@13834 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add nine patch type to SkRRect.Gravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | BUG=skia:2181 R=robertphillips@google.com, reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/196343015 git-svn-id: http://skia.googlecode.com/svn/trunk@13833 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r13831 (Add a means of extracting active operations from ↵Gravatar robertphillips@google.com2014-03-17
| | | | | | SkPicture) due to Mac compiler issue git-svn-id: http://skia.googlecode.com/svn/trunk@13832 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add a means of extracting active operations from SkPictureGravatar robertphillips@google.com2014-03-17
| | | | | | | | https://codereview.chromium.org/195793010/ git-svn-id: http://skia.googlecode.com/svn/trunk@13831 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-17
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13825 2bbb7eff-a529-9590-31e7-b0007b416f81
* add NewRasterDirect for creating a canvas drawing to pre-allocated pixelsGravatar commit-bot@chromium.org2014-03-17
| | | | | | | | | | | R=reed@google.com TBR=scroggo@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/196923004 git-svn-id: http://skia.googlecode.com/svn/trunk@13824 2bbb7eff-a529-9590-31e7-b0007b416f81
* Proposed SkCanvas API for preLoading textures to VRAM v2.0Gravatar commit-bot@chromium.org2014-03-16
| | | | | | | | | | | | | | This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)). Committed: http://code.google.com/p/skia/source/detail?r=13810 R=reed@google.com, bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/197123003 git-svn-id: http://skia.googlecode.com/svn/trunk@13822 2bbb7eff-a529-9590-31e7-b0007b416f81
* don't reference config() -- use colorType() insteadGravatar reed@google.com2014-03-14
| | | | | | | | BUG=skia: Review URL: https://codereview.chromium.org/200853002 git-svn-id: http://skia.googlecode.com/svn/trunk@13813 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert r13810 (Proposed SkCanvas API for preLoading textures to VRAM v2.0)Gravatar robertphillips@google.com2014-03-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13811 2bbb7eff-a529-9590-31e7-b0007b416f81
* Proposed SkCanvas API for preLoading textures to VRAM v2.0Gravatar commit-bot@chromium.org2014-03-14
| | | | | | | | | | | | This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)). R=reed@google.com, bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/197123003 git-svn-id: http://skia.googlecode.com/svn/trunk@13810 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for expanding crop rects in image filtersGravatar senorblanco@chromium.org2014-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: this patch set is based on https://codereview.chromium.org/189913021/, and needs that patch to land first. Until now, crop rects in Skia have only been able to reduce the size of the destination bounds, but not expand them. SVG semantics require the latter as well. The heart of the change is in applyCropRect(), which now assigns each edge, instead of doing an intersection with the crop rect. In order to support this (and still work well with tiled drawing) we need to clip the resulting crop rect to the clipping region of the filters. This uses the Context struct previously landed from https://codereview.chromium.org/189913021/. Many of the pixel loops are not yet ready to handle a destination rect larger than the source rect. So we provide a convenience version of applyCropRect() which creates an offscreen and pads it out with transparent black. Once the pixel loops and shaders have been fixed to support larger destination bounds, they should be switched back to the non-drawing version of applyCropRect(). BUG=skia: R=bsalomon@google.com, reed@google.com Committed: https://code.google.com/p/skia/source/detail?r=13805 Review URL: https://codereview.chromium.org/198003008 git-svn-id: http://skia.googlecode.com/svn/trunk@13809 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Implement support for expanding crop rects in image filters"Gravatar senorblanco@chromium.org2014-03-14
| | | | | | | | | | | Breaking ImageFilterTests unit test. TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/196353021 git-svn-id: http://skia.googlecode.com/svn/trunk@13806 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for expanding crop rects in image filtersGravatar senorblanco@chromium.org2014-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: this patch set is based on https://codereview.chromium.org/189913021/, and needs that patch to land first. Until now, crop rects in Skia have only been able to reduce the size of the destination bounds, but not expand them. SVG semantics require the latter as well. The heart of the change is in applyCropRect(), which now assigns each edge, instead of doing an intersection with the crop rect. In order to support this (and still work well with tiled drawing) we need to clip the resulting crop rect to the clipping region of the filters. This uses the Context struct previously landed from https://codereview.chromium.org/189913021/. Many of the pixel loops are not yet ready to handle a destination rect larger than the source rect. So we provide a convenience version of applyCropRect() which creates an offscreen and pads it out with transparent black. Once the pixel loops and shaders have been fixed to support larger destination bounds, they should be switched back to the non-drawing version of applyCropRect(). BUG=skia: R=bsalomon@google.com, reed@google.com Review URL: https://codereview.chromium.org/198003008 git-svn-id: http://skia.googlecode.com/svn/trunk@13805 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement support for a Context parameter in image filtersGravatar senorblanco@chromium.org2014-03-14
| | | | | | | | | | | | | | | Some upcoming work (support for expanding crop rects) requires the clip bounds to be available during filter traversal. This change replaces the SkMatrix parameter in the onFilterImage() traversals with a Context parameter. It contains the CTM, as well as the clip bounds. BUG=skia: R=reed@google.com Review URL: https://codereview.chromium.org/189913021 git-svn-id: http://skia.googlecode.com/svn/trunk@13803 2bbb7eff-a529-9590-31e7-b0007b416f81
* keep kVector enum in legacy mode for getDevicePropertiesGravatar reed@google.com2014-03-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13801 2bbb7eff-a529-9590-31e7-b0007b416f81