aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Add debug check of chunk size written to skpGravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | R=mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/182153003 git-svn-id: http://skia.googlecode.com/svn/trunk@13692 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove MCRec.fNextGravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | | No longer used. R=reed@google.com, mtklein@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/186973004 git-svn-id: http://skia.googlecode.com/svn/trunk@13690 2bbb7eff-a529-9590-31e7-b0007b416f81
* Actually, we wrote only size bytes.Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | BUG=skia: R=halcanary@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/188343004 git-svn-id: http://skia.googlecode.com/svn/trunk@13688 2bbb7eff-a529-9590-31e7-b0007b416f81
* Avoid recomputing two consecutive identical 1D filters.Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | | | | | | | If the arguments to the X and Y filter computation are identical, the results will be identical; copying is much faster than recomputing. With a change like https://codereview.chromium.org/183763047/ applied this speeds up BitmapScaleBench on Linux by around 10%. BUG=skia:2236 R=humper@google.com, tomhudson@google.com Author: tomhudson@chromium.org Review URL: https://codereview.chromium.org/188743002 git-svn-id: http://skia.googlecode.com/svn/trunk@13687 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add size_t bytesWritten() const to SkWStream.Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com, robertphillips@google.com, bungeman@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/187653003 git-svn-id: http://skia.googlecode.com/svn/trunk@13684 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Manually set fFilterValues in SkConvolutionFilter1D Gravatar rmistry@google.com2014-03-06
| | | | | | | | | | | | | | | | | | Revert of https://codereview.chromium.org/184323003 Reason for revert: Caused unexpected CompareGM failures- http://108.170.217.252:10117/builders/Test-Win8-ShuttleA-GTX660-x86_64-Debug/builds/461/steps/CompareGMs/logs/stdio http://108.170.217.252:10117/builders/Test-Win7-ShuttleA-HD2000-x86_64-Release/builds/2062/steps/CompareGMs/logs/stdio http://108.170.217.252:10117/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/1400/steps/CompareGMs/logs/stdio TBR= NOTREECHECKS=True NOTRY=True git-svn-id: http://skia.googlecode.com/svn/trunk@13683 2bbb7eff-a529-9590-31e7-b0007b416f81
* Begin making SkPerlinNoiseShader const.Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | | | | | | | | | | | The overall goal is to make SkShader itself immutable (BUG=skia:1976). The fields cannot yet be made constant, due to the constructor which takes an SkReadBuffer. Other than that constructor, the fields are now unchanged. Remove setTileSize and initPaint. Merge initPaint with the constructor of PaintingData, since it is only ever used on a new PaintingData. Merge setTileSize with the SkPerlinNoiseShader constructor, its only call site. BUG=skia:1976 R=reed@google.com, sugoi@google.com, dominikg@chromium.org, senorblanco@google.com, senorblanco@chromium.org Author: scroggo@google.com Review URL: https://codereview.chromium.org/169973002 git-svn-id: http://skia.googlecode.com/svn/trunk@13682 2bbb7eff-a529-9590-31e7-b0007b416f81
* Manually set fFilterValues in SkConvolutionFilter1D.Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | | | | | | Using fFilterValues.reset() or a loop of fFilterValues.push_back() is about 5x slower than calling fFilterValues.resize_back() and then looping using primitive [] and =. This is only going to show up if you apply https://codereview.chromium.org/183763047/, where it yields about 2.5% speedup in the bitmap resize microbenchmarks on a Linux desktop. Ceteris paribus, it should actually improve rasterization time of drawBitmapRectToRect() with a resize by about 5% in Chromium. BUG=skia:2258 R=humper@google.com, tomhudson@google.com Author: tomhudson@chromium.org Review URL: https://codereview.chromium.org/184323003 git-svn-id: http://skia.googlecode.com/svn/trunk@13681 2bbb7eff-a529-9590-31e7-b0007b416f81
* Now that the matching changes have landed in Chromium we can clean up the ↵Gravatar commit-bot@chromium.org2014-03-06
| | | | | | | | | | | | API on our side. R=reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/187553003 git-svn-id: http://skia.googlecode.com/svn/trunk@13680 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-06
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13679 2bbb7eff-a529-9590-31e7-b0007b416f81
* Unify edge type enums across GrEffect subclasses that clip rendering to a ↵Gravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | | | geometry. BUG=skia: R=egdaniel@google.com, robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/183893023 git-svn-id: http://skia.googlecode.com/svn/trunk@13674 2bbb7eff-a529-9590-31e7-b0007b416f81
* This CL is motivated by the desire to make the skpinfo tool work a bit ↵Gravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | | better. The main concern is that the assumptions made w.r.t. written bytes may not be valid for all SkWStream sub-classes. R=bungeman@gmail.com, bungeman@google.com, reed@google.com, mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/182733008 git-svn-id: http://skia.googlecode.com/svn/trunk@13673 2bbb7eff-a529-9590-31e7-b0007b416f81
* Prevent SkBlockMemoryStream::skip from writing to low memory.Gravatar bungeman@google.com2014-03-05
| | | | | | | | | | | | | | SkBlockMemoryStream::read was modeled on SkDynamicMemoryWStream::read. However, SkDynamicMemoryWStream::read does not allow passing a NULL buffer and SkBlockMemoryStream::read must correctly handle this case for skips. In the current code, if a 'skip' crosses a block boundary, 'read' may attempt to write to low memory. R=robertphillips@google.com Review URL: https://codereview.chromium.org/187683003 git-svn-id: http://skia.googlecode.com/svn/trunk@13671 2bbb7eff-a529-9590-31e7-b0007b416f81
* DM: read image files without an extra copyGravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | BUG=skia: R=halcanary@google.com, reed@google.com, bsalomon@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/185263012 git-svn-id: http://skia.googlecode.com/svn/trunk@13669 2bbb7eff-a529-9590-31e7-b0007b416f81
* Replace scaled bitmap if entry already exist in cache.Gravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | BUG=skia:2251 R=reed@google.com Author: reveman@chromium.org Review URL: https://codereview.chromium.org/185263009 git-svn-id: http://skia.googlecode.com/svn/trunk@13667 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-05
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13665 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SK_SUPPORT_DEEPCOPYTO_CONFIG code -- no longer usedGravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | R=reed@google.com TBR=bsalomon@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/183763035 git-svn-id: http://skia.googlecode.com/svn/trunk@13664 2bbb7eff-a529-9590-31e7-b0007b416f81
* Counterproposal to 182733007: Add iterator to SkTDynamicHashGravatar commit-bot@chromium.org2014-03-05
| | | | | | | | | | | BUG=skia: R=egdaniel@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/177263005 git-svn-id: http://skia.googlecode.com/svn/trunk@13663 2bbb7eff-a529-9590-31e7-b0007b416f81
* Manual revert of https://code.google.com/p/skia/source/detail?r=13353 due to ↵Gravatar commit-bot@chromium.org2014-03-04
| | | | | | | | | | | | | perf regression. BUG=344020 R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/187023002 git-svn-id: http://skia.googlecode.com/svn/trunk@13662 2bbb7eff-a529-9590-31e7-b0007b416f81
* The motivation for this CL is to de-clutter SkPicture's beginRecording method.Gravatar commit-bot@chromium.org2014-03-04
| | | | | | | | | | R=reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/186813003 git-svn-id: http://skia.googlecode.com/svn/trunk@13658 2bbb7eff-a529-9590-31e7-b0007b416f81
* Apply the CTM to the offset in the slow SkOffsetImageFilter path.Gravatar senorblanco@chromium.org2014-03-04
| | | | | | | | | | | | | | | | | | This was being done in the fast path, but not the slow path. Since I had to rebaseline the offsetimagefilter GM anyway (to accomodate the new test case), I added a red border around the intersection of the (transformed) crop rect and clip rect in each sample, beyond which no pixels should be drawn. Chrome bug: https://code.google.com/p/chromium/issues/detail?id=346362 BUG=skia: R=sugoi@google.com Review URL: https://codereview.chromium.org/186643003 git-svn-id: http://skia.googlecode.com/svn/trunk@13656 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add GM that directly tests GrRRectEffect and add inverse fill version of effect.Gravatar commit-bot@chromium.org2014-03-04
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/176843016 git-svn-id: http://skia.googlecode.com/svn/trunk@13653 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-04
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13651 2bbb7eff-a529-9590-31e7-b0007b416f81
* This adds cull rect visualization to the debugger's "mega" visualization mode.Gravatar commit-bot@chromium.org2014-03-03
| | | | | | | | | | R=fmalita@google.com, fmalita@chromium.org Author: robertphillips@google.com Review URL: https://codereview.chromium.org/177423013 git-svn-id: http://skia.googlecode.com/svn/trunk@13649 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't emit declaration of gl_FragPos unless also changing the origin.Gravatar commit-bot@chromium.org2014-03-03
| | | | | | | | | | R=jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/182003002 git-svn-id: http://skia.googlecode.com/svn/trunk@13648 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleanup patch to move all of SkImageFilterUtils into SkImageFilter.Gravatar senorblanco@chromium.org2014-03-03
| | | | | | | | | | | | | | This was a utility class that dates from before GPU code was allowed in core. Now that it is, there's no reason not to have this functionality in SkImageFilter. Covered by existing tests. R=reed@google.com Review URL: https://codereview.chromium.org/185973003 git-svn-id: http://skia.googlecode.com/svn/trunk@13646 2bbb7eff-a529-9590-31e7-b0007b416f81
* Generating the 1M skps frequently yields truncated skps. This tool is ↵Gravatar commit-bot@chromium.org2014-03-03
| | | | | | | | | | | | | | | | | | intended to help automate weeding these out. Please see skbug:1057 rmistry for tools, gyp mtklein for src\core & include\core BUG=skia:1057 R=rmistry@google.com, mtklein@google.com, reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/176863004 git-svn-id: http://skia.googlecode.com/svn/trunk@13643 2bbb7eff-a529-9590-31e7-b0007b416f81
* The new "mega" viz mode both adds visualization and forces all drawing to ↵Gravatar commit-bot@chromium.org2014-03-03
| | | | | | | | | | | | the visible canvas (by replacing the active saveLayers with saves). R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/185293007 git-svn-id: http://skia.googlecode.com/svn/trunk@13640 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix CTM scaling and clipping of SkRectShaderImageFilter.Gravatar senorblanco@chromium.org2014-03-03
| | | | | | | | | | | | | | | | Pass the CTM as part of the local matrix passed by SkRectShaderImageFilter. Teach SkPerlinNoiseShader to respect the local matrix. Embiggen imagefiltersscaled GM size to accommodate the new test cases. Note: will require rebaselines of imagefiltersscaled and imagefiltersclipped R=sugoi@chromium.org BUG=skia: Review URL: https://codereview.chromium.org/184973007 git-svn-id: http://skia.googlecode.com/svn/trunk@13637 2bbb7eff-a529-9590-31e7-b0007b416f81
* New approach for GPU font atlasGravatar commit-bot@chromium.org2014-03-03
| | | | | | | | | | | | | In the previous code, each GrTextStrike had exclusive access to one or more GrPlots in the texture atlas. This led to poor packing when only a few glyphs were used. This change allows GrTextStrikes to share GrPlots, thereby getting much better utilization of the entire texture. BUG=skia:2224 R=robertphillips@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/177463003 git-svn-id: http://skia.googlecode.com/svn/trunk@13636 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adding code to calculate Underline Thickness from Font Metrics, this will be ↵Gravatar commit-bot@chromium.org2014-03-01
| | | | | | | | | | | | | useful when Skia is used with Blink/Chrome. Blink changes are uploaded with code change in patch https://codereview.chromium.org/147703002/ BUG=skia: R=reed@android.com, edisonn@google.com, reed@google.com, mtklein@google.com, mtklein@chromium.org, bungeman@google.com Author: h.joshi@samsung.com Review URL: https://codereview.chromium.org/152073003 git-svn-id: http://skia.googlecode.com/svn/trunk@13635 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-03-01
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13634 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
* Cleanup GrGLInterface after Chromium changesGravatar commit-bot@chromium.org2014-02-28
| | | | | | | | | | | | Depends on landing https://codereview.chromium.org/143263014 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/149533002 git-svn-id: http://skia.googlecode.com/svn/trunk@13630 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
* remove SK_SUPPORT_LEGACY_LAYERDRAWLOOPER_PAINTFLAGS -- not neededGravatar reed@google.com2014-02-28
| | | | | | | | | BUG=skia: R=scroggo@google.com Review URL: https://codereview.chromium.org/180483004 git-svn-id: http://skia.googlecode.com/svn/trunk@13623 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
* Make GrConvexPolyEffect support inverse fills and non-AA rectsGravatar commit-bot@chromium.org2014-02-28
| | | | | | | | | | | BUG=skia:2151 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/183833003 git-svn-id: http://skia.googlecode.com/svn/trunk@13621 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
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-02-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13619 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkCanvas::NewRaster factory -- a very common use-case in chromeGravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | | BUG=skia: R=scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/183533004 git-svn-id: http://skia.googlecode.com/svn/trunk@13617 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add GrSet class built on top of RedBlackTreeGravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | | BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/176903003 git-svn-id: http://skia.googlecode.com/svn/trunk@13616 2bbb7eff-a529-9590-31e7-b0007b416f81
* Culling APIGravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** SKP format breaking change *** Adding a couple of culling primitives: pushCull(SkRect) & popCull(). These are currently only plumbed for SKP playback quickreject. At record time, we perform a couple of optimizations to trim down the number of redundant culls: * collapse empty pushCull/popCull pairs * skip pushCull/popCull pairs nested within an identical cull rect Things still missing/to consider: * use an inlineable, simplified quickreject (Mike's old prototype) * debugger visualization for cull boxes * BBH integration: the initial prototype had some minimal BBH support, but since the optimizations required expensive rewinds and culling is expected to be a BBH alternative, it got dropped. R=bsalomon@google.com, reed@google.com, robertphillips@google.com, caryclark@google.com, tomhudson@google.com, iancottrell@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/138013009 git-svn-id: http://skia.googlecode.com/svn/trunk@13611 2bbb7eff-a529-9590-31e7-b0007b416f81
* Use SkTLazy to hold path in SkClipStack::ElementGravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | R=reed@google.com, robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/178583002 git-svn-id: http://skia.googlecode.com/svn/trunk@13610 2bbb7eff-a529-9590-31e7-b0007b416f81
* try to deprecate fFlagsMask from SkLayerDrawLooperGravatar reed@google.com2014-02-27
| | | | | | | | | | | | | | | We think we want to move around how flags/fields like linearText and strikeThru are specified. SkPaint has helpers for nearly all of these, but LayerInfo in the draw looper just exposes the raw bitfield. On survey of chrome/android, it appears that no one uses those, so it may be safe to just remove the feature entirely from the looper. R=bungeman@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/181433009 git-svn-id: http://skia.googlecode.com/svn/trunk@13607 2bbb7eff-a529-9590-31e7-b0007b416f81
* Factory methods for heap-allocated SkAnnotation objects.Gravatar commit-bot@chromium.org2014-02-27
| | | | | | | | | | | | | | | | | This is part of an effort to ensure that all SkPaint effects can only be allocated on the heap. This patch makes the constructors of SkAnnotation non-public and instead provides factory methods for creating these objects on the heap. BUG=skia:2187 R=reed@google.com, mtklein@google.com, scroggo@google.com Author: dominikg@chromium.org Review URL: https://codereview.chromium.org/181703003 git-svn-id: http://skia.googlecode.com/svn/trunk@13605 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add point count to lua SkPath.Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | Add some scripts for classifying rrects and counting complex clip combinations. R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/181843004 git-svn-id: http://skia.googlecode.com/svn/trunk@13601 2bbb7eff-a529-9590-31e7-b0007b416f81
* Upstream changes from AndroidGravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | R=scroggo@google.com, reed@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/176963003 git-svn-id: http://skia.googlecode.com/svn/trunk@13600 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert of Add getReducedClipStack to lua canvas ↵Gravatar bsalomon@google.com2014-02-26
| | | | | | | | | | | | (https://codereview.chromium.org/180283004/)" This reverts commit efded03a38d6147caaf2d951638d27fdd47eed64. Fixes builds Review URL: https://codereview.chromium.org/181903002 git-svn-id: http://skia.googlecode.com/svn/trunk@13599 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Add getReducedClipStack to lua canvas ↵Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/180283004/) Reason for revert: breaking a bunch of builds Original issue's description: > Add getReducedClipStack to lua canvas > > Committed: http://code.google.com/p/skia/source/detail?r=13594 R=reed@google.com TBR=reed@google.com NOTREECHECKS=true NOTRY=true Author: bsalomon@google.com Review URL: https://codereview.chromium.org/181653004 git-svn-id: http://skia.googlecode.com/svn/trunk@13597 2bbb7eff-a529-9590-31e7-b0007b416f81