aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* Add comments to SkRecordDraw to help people follow.Gravatar danakj2014-11-03
| | | | | | | | | | The calls to visit() to execute the SkRecord::Draw::operator() code path is not clear to read, so adding some comments to help other new-comers follow this through to the SkCanvas calls. R=mtklein@chromium.org Review URL: https://codereview.chromium.org/695403003
* Test factory uses the inorder draw bufferGravatar joshualitt2014-11-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/696353002
* Don't allow renderTarget==NULL to GrContext::clear() and friends.Gravatar bsalomon2014-11-03
| | | | Review URL: https://codereview.chromium.org/680413005
* Remove GrGLTexIDGravatar bsalomon2014-11-03
| | | | | | BUG=skia:2889 Review URL: https://codereview.chromium.org/695133003
* Force input coverage to be only a byte in gpu shaders.Gravatar egdaniel2014-11-03
| | | | | | | | Prime coverage invariant output calculations with single component BUG=skia: Review URL: https://codereview.chromium.org/649783003
* Add class GrGLTextureRenderTarget for GL texture/rendertarget objectsGravatar bsalomon2014-11-03
| | | | | | BUG=skia:2889 Review URL: https://codereview.chromium.org/695813003
* Shrink saveLayer device bounds when it supplies an explicit bounds and has a ↵Gravatar robertphillips2014-11-03
| | | | | | | | | | | | | | | | | | | | | | complex paint This CL shrinks the bound computed for saveLayers that possess both an explicit bound and a complex paint (e.g., one that affects transparent black). In this case the bound of the layer should be the clipped explicit bound rather then the clip prior/after the saveLayer/restore block. In the following the first bound is the currently computed bound while the second is the new/desired one: For a 100x100 picture saveLayer (no bound, no paint) [ 0 0 100 100 ] [ 50 50 100 100 ] setMatrix (translate 50, 50) [ 0 0 100 100 ] [ 50 50 100 100 ] saveLayer (bound of 0, 0, 50, 50 - complex paint) [ 0 0 100 100 ] [ 50 50 100 100 ] restore [ 0 0 100 100 ] [ 50 50 100 100 ] restore [ 0 0 100 100 ] [ 50 50 100 100 ] Review URL: https://codereview.chromium.org/696763002
* Always enable layer hoisting in SkiaGravatar robertphillips2014-11-03
| | | | | | This will prevent bit rot of the layer hoisting code and position us better for turning this on in Chromium. Review URL: https://codereview.chromium.org/698493002
* Revert of Temporary fix to remove drawrect call from GpuGL (patchset #6 ↵Gravatar joshualitt2014-10-31
| | | | | | | | | | | | | | | | | | | | | id:90005 of https://codereview.chromium.org/694933002/) Reason for revert: patch breaks angle bots and K1 Original issue's description: > Temporary fix to remove drawrect call from GpuGL > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d4a5c2028117c100ccf44263c0118a0b4745f627 TBR=bsalomon@google.com,joshualitt@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/693223002
* Temporary fix to remove drawrect call from GpuGLGravatar joshualitt2014-10-31
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/694933002
* GrContext no longer ever draws on GpuGravatar joshualitt2014-10-31
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/7a75e5230872732e71ea99058d9afe5d4b6758b0 Review URL: https://codereview.chromium.org/683733005
* Beginning to refactor nvpr codeGravatar joshualitt2014-10-31
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/687563008
* Some distance field text optimizations.Gravatar jvanverth2014-10-31
| | | | | | | | | | - Add clipRect check - Remove creation of scalerContext to check for color fonts in canDraw() (no longer needed) BUG=skia:2933 Review URL: https://codereview.chromium.org/696503004
* Revert of GrContext no longer ever draws on Gpu (patchset #7 id:120001 of ↵Gravatar joshualitt2014-10-31
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/683733005/) Reason for revert: breaks some android bots Original issue's description: > GrContext no longer ever draws on Gpu > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/7a75e5230872732e71ea99058d9afe5d4b6758b0 TBR=bsalomon@google.com,joshualitt@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/694983002
* GrContext no longer ever draws on GpuGravatar joshualitt2014-10-31
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/683733005
* Revert of Turn SkTaskGroups back on. (patchset #1 id:1 of ↵Gravatar mtklein2014-10-31
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/687263007/) Reason for revert: precautionary revert. may have caused WinXP crashes on Chrome tree: https://code.google.com/p/chromium/issues/detail?id=429207 Original issue's description: > Turn SkTaskGroups back on. > > Revert "Disable SkTaskGroup in SkMultiPictureDraw temporarily." > Revert "Revert harder, removing SkTaskGroup.cpp from core temporarily." > > NOTREECHECKS=true > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/2100c5ed7a5e5470a04e7af7309d8bd3fc4249f7 TBR=reed@google.com,mtklein@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/693993002
* small fix for cache clearGravatar joshualitt2014-10-31
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/695873002
* SK_USE_SCALED_FONTMETRICS for correct scalingGravatar reed2014-10-31
| | | | | | | related blink change: https://codereview.chromium.org/691133002 Review URL: https://codereview.chromium.org/692083002
* Objects should be unrefed instead of deletedGravatar sugoi2014-10-31
| | | | | | | | When an error occurs reading a flattenable object, it should be unrefed instead of deleted because, in the case of SkXferMode, for example, we'd actually be deleting a cached object kept in a static array. BUG=428789 Review URL: https://codereview.chromium.org/695633003
* Cleanup: Go with SkDebugf instead of GrPrintf.Gravatar tfarina2014-10-31
| | | | | | | | | | | Since GrPrintf is just defined to SkDebugf, we can go with the later directly. BUG=None TEST=None R=bsalomon@google.com Review URL: https://codereview.chromium.org/695663003
* Use Color Processor for color bitmap text draws on gpu.Gravatar egdaniel2014-10-31
| | | | | | | | | | | | | | | | | | | This change is here since previously color bitmap text was rendered using a geometry processor in the coverage stage. The problem with this is that we cannot correctly do xfer modes with this method. So I now make color bitmap text draw using a color stage in the same was as a draw bitmap call. One issue that arrises from this fix is that we end up adding this final color processor after any previous color processors. Thus if we have a custom blend implemented as a color processor it will be before this text one and we won't blend correctly. This issue will get fixed once an xfer processor is fully implemented. I have hacked a test locally to show that if we can add the text color processor to the begining of the color stages we do blend correctly in all cases (so the xfer processor will be a fix). BUG=skia: Review URL: https://codereview.chromium.org/689923004
* Turn SkTaskGroups back on.Gravatar mtklein2014-10-31
| | | | | | | | | | | Revert "Disable SkTaskGroup in SkMultiPictureDraw temporarily." Revert "Revert harder, removing SkTaskGroup.cpp from core temporarily." NOTREECHECKS=true BUG=skia: Review URL: https://codereview.chromium.org/687263007
* Upgrade GPUOptimizeGravatar robertphillips2014-10-30
| | | | | | | | | | | | This will be a bit hairy to review. The FillBounds and CollectLayers code has diverged significantly resulting in the rendering path seeing different bounds than the hoisting path. This CL merges the FillBounds changes into CollectLayers. A follow on CL will, hopefully, find a way to layer CollectLayers on top of FillBounds. The only code in CollectLayers that is different from FillBounds is bracketed by "LAYER HOISTING" comments. NOTREECHECKS=true Review URL: https://codereview.chromium.org/685263004
* Trying to be consistent when members are allowed to be NULLGravatar sugoi2014-10-30
| | | | | | | | Got a few crashes running the fuzzer locally, all related to handling NULL members/parameters in an inconsistent way. BUG=skia: Review URL: https://codereview.chromium.org/675013003
* Cleanup conversion that the new NDK compiler tries to over optimize.Gravatar djsollen2014-10-30
| | | | | | | This allows us to upgrade to NDK r10c as the dftext gm no longer fails when compiled with -O2. Review URL: https://codereview.chromium.org/690053002
* Add return value on GrRecordReplaceDrawGravatar robertphillips2014-10-30
| | | | | | This assists debugging layer hoisting errors (e.g., when a layer is hoisted but not actually used in subsequent rendering). Review URL: https://codereview.chromium.org/694533004
* Fix member variable namingGravatar robertphillips2014-10-30
| | | | | | | | This renaming was missed in (MultiPictureDraw is taskgroup aware - https://codereview.chromium.org/684923002) TBR=reed@google.com Review URL: https://codereview.chromium.org/654293005
* Combine nameFontStyleProc and FindByNameStyle.Gravatar bungeman2014-10-30
| | | | | | These two functions do the same thing, combine them. Review URL: https://codereview.chromium.org/688133003
* Make RTree handle the case where the playback canvas has empty clip boundsGravatar junov2014-10-30
| | | | | | BUG=skia:3074 Review URL: https://codereview.chromium.org/678303004
* Fix bug in aggressive layer cache purgingGravatar robertphillips2014-10-30
| | | | | | A picture may possess many layers that get placed in one plot of the atlas. In this case we can only remove the plot from the plotUsage tracking structure when all the layers belonging to the picture in that plot have been removed. Review URL: https://codereview.chromium.org/654463004
* Cleanup android to ensure it can compile with clangGravatar djsollen2014-10-30
| | | | Review URL: https://codereview.chromium.org/694533002
* allow SkUserConfig.h to control NOGPUGravatar reed2014-10-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/685243002
* tell our grcontext to abandon its backendGravatar reed2014-10-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/692803003
* Revert of scale xmin and xmax for FontMetrics (patchset #1 id:1 of ↵Gravatar robertphillips2014-10-30
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/685153004/) Reason for revert: Experimental revert to see if this is blocking the DEPS roll Original issue's description: > scale xmin and xmax for FontMetrics > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/79c276e4fd93d9c9fd57a45bc6929c48e4415b2f TBR=mtklein@google.com,bungeman@google.com,reed@google.com,reed@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/691033002
* Disable SkTaskGroup in SkMultiPictureDraw temporarily.Gravatar mtklein2014-10-30
| | | | | | | | Think this should be enough to get rolling again. NOTREECHECKS=true Review URL: https://codereview.chromium.org/687273006
* Support multiple scales for dfpaths.Gravatar jvanverth2014-10-30
| | | | | | | | | Adds miplevel as part of dfpath key, and scale factor so we know how much to adjust to fit desired scale. BUG=skia:2935 Review URL: https://codereview.chromium.org/687283002
* cleanup reentrance logic in CMMGravatar joshualitt2014-10-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/684223002
* Revert of Use SkTypeface::getBounds() in bounding-box calculations. ↵Gravatar mtklein2014-10-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #5 id:80001 of https://codereview.chromium.org/680363003/) Reason for revert: Mac mini asserting Original issue's description: > Use SkTypeface::getBounds() in bounding-box calculations. > > This should produce tighter conservative bounding boxes for text than the > approximation code it replaces. > > Recording performance is neutral on my desktop. Playback performance > improves by up to 15% on text heavy pages, e.g. > > desk_pokemonwiki.skp_1 3.24ms -> 2.83ms 0.87x > desk_baidu.skp_1 1.91ms -> 1.58ms 0.83x > > Committed: https://skia.googlesource.com/skia/+/bf8dc343df4fbdcb8af546eb68b640e011a33489 > > CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot > > Committed: https://skia.googlesource.com/skia/+/c51add674dfb89b988a7fbc05f41838c203f9dcd TBR=reed@google.com,mtklein@chromium.org NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/690833002
* use SkTaskGroup::batchGravatar reed2014-10-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/688753002
* Use SkTypeface::getBounds() in bounding-box calculations.Gravatar mtklein2014-10-29
| | | | | | | | | | | | | | | | | This should produce tighter conservative bounding boxes for text than the approximation code it replaces. Recording performance is neutral on my desktop. Playback performance improves by up to 15% on text heavy pages, e.g. desk_pokemonwiki.skp_1 3.24ms -> 2.83ms 0.87x desk_baidu.skp_1 1.91ms -> 1.58ms 0.83x Committed: https://skia.googlesource.com/skia/+/bf8dc343df4fbdcb8af546eb68b640e011a33489 CQ_EXTRA_TRYBOTS=client.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot Review URL: https://codereview.chromium.org/680363003
* SkTaskGroup::batch(fn, args, N)Gravatar mtklein2014-10-29
| | | | | | | | Porting QuiltTask isn't important in itself; this is mostly an API feeler. BUG=skia: Review URL: https://codereview.chromium.org/689673003
* Discard atlas after every MultiPictureDraw::drawGravatar robertphillips2014-10-29
| | | | | | | | | | This is intended to prevent ghosting on tiled architectures. This CL also defers creation of the atlas (and its texture) until it is actually needed. Committed: https://skia.googlesource.com/skia/+/6d5b5455743414ddb11d2b8c1fe9d7959f2b853d Review URL: https://codereview.chromium.org/678403002
* scale xmin and xmax for FontMetricsGravatar reed2014-10-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/685153004
* Revert of scale xmin/xmax etc in fontmetrics (patchset #1 id:1 of ↵Gravatar bungeman2014-10-29
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/690533004/) Reason for revert: Breaking tests in Chromium, and not in a good way. Original issue's description: > scale xmin/xmax etc in fontmetrics > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/f8c2feffd68b3262f3c039ec1bd517c5f6cc9e4c TBR=reed@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/686263002
* Separate out GrSurfaceConfig's fields from other structs used to create ↵Gravatar bsalomon2014-10-29
| | | | | | | | GrGL* subclasses of GrSurface. BUG=skia:2889 Review URL: https://codereview.chromium.org/691523002
* remove now unused (by Chrome) ifdefGravatar humper2014-10-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/688043002
* MultiPictureDraw is taskgroup aware.Gravatar reed2014-10-29
| | | | | | | | SampleApp is multipicturedraw aware. BUG=skia: Review URL: https://codereview.chromium.org/684923002
* Fix bounds computation of all 0-input filters.Gravatar senorblanco2014-10-29
| | | | | | | | | | | The SkRectShaderImageFilter had the same bug as previously fixed for SkBitmapSource and SkPictureImageFilter. Rather than copy-and-paste the implementation, this change makes all filters with 0 inputs return their source bounds, instead of returning false. BUG=427251 Review URL: https://codereview.chromium.org/681643003
* BUG=skia:Gravatar joshualitt2014-10-29
| | | | Review URL: https://codereview.chromium.org/683933003
* SkTaskGroup::add(fn, arg)Gravatar mtklein2014-10-29
| | | | | | | | NOTREECHECKS=true BUG=skia: Review URL: https://codereview.chromium.org/687953003