aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Remove GrContext from GrDrawTargetGravatar bsalomon2015-05-29
| | | | | | Still exists on clip target (for now). Review URL: https://codereview.chromium.org/1166553002
* Remove GrContext from GrClipMaskCacheGravatar bsalomon2015-05-29
| | | | Review URL: https://codereview.chromium.org/1144013007
* Add Em test font.Gravatar bungeman2015-05-29
| | | | | | | | | | | This test font contains ☓ U+2613 SALTIRE ⬛ U+2B1B BLACK LARGE SQUARE ⬜ U+2B1C WHITE LARGE SQUARE All at full EM size (with standard amount above and below the baseline). Review URL: https://codereview.chromium.org/1134153002
* use inline version of eval quad if tangent is not neededGravatar caryclark2015-05-29
| | | | | | R=reed@google.com Review URL: https://codereview.chromium.org/1160163002
* Removing GrAutoMallocGravatar joshualitt2015-05-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1161993003
* Add direct getter for GrCaps to GrContext.Gravatar bsalomon2015-05-29
| | | | | | | | TBR=joshualitt@google.com Committed: https://skia.googlesource.com/skia/+/9138c46e572085870638b6f7ad7fcdfcdf3cac99 Review URL: https://codereview.chromium.org/1149773005
* add bench for building strokesGravatar reed2015-05-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1160093004
* delete experimental path renderersGravatar joshualitt2015-05-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1160863006
* add context override of GeometryBufferMapThresholdGravatar joshualitt2015-05-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1159713006
* add assert that the pixelref really did success in requestlockGravatar reed2015-05-28
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1142343010
* Revert of small CL to experiment with 'disabling' memory mapping (patchset ↵Gravatar joshualitt2015-05-28
| | | | | | | | | | | | | | | | | | | | | | | #1 id:1 of https://codereview.chromium.org/1160003004/) Reason for revert: experiment complete Original issue's description: > small CL to experiment with 'disabling' memory mapping > > TBR=bsalomon@google.com > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/2e48e1514396b363ecd19372eab637b11bfb8a82 TBR=robertphillips@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1159133004
* Whitespace change to test bugdroidGravatar rmistry2015-05-28
| | | | | | | | | | BUG=493278 BUG=skia:2139 NOTRY=true TBR= Review URL: https://codereview.chromium.org/1166443002
* small CL to experiment with 'disabling' memory mappingGravatar joshualitt2015-05-28
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1160003004
* Revert of Add direct getter for GrCaps to GrContext. (patchset #4 id:60001 ↵Gravatar bsalomon2015-05-28
| | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1149773005/) Reason for revert: Breaking Original issue's description: > Add direct getter for GrCaps to GrContext. > > TBR=joshualitt@google.com > > Committed: https://skia.googlesource.com/skia/+/9138c46e572085870638b6f7ad7fcdfcdf3cac99 TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1164443002
* Add direct getter for GrCaps to GrContext.Gravatar bsalomon2015-05-28
| | | | | | TBR=joshualitt@google.com Review URL: https://codereview.chromium.org/1149773005
* Break GrTextContext's reliance on SkGpuDeviceGravatar robertphillips2015-05-28
| | | | | | | | | | | This CL seems to have 2 main downsides: 1) It duplicates some code in SkBaseDevice::filterTextFlags 2) It makes it tougher to derive from SkGpuDevice It seems reasonable (at least to me) that the TextContexts get the power to reset the LCD flags. Review URL: https://codereview.chromium.org/1159973002
* simplify RawIter - don't return a pt in kCloseGravatar reed2015-05-27
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1156893003
* Implement Porter Duff XP with a blend tableGravatar cdalton2015-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes the runtime logic used by PorterDuffXferProcessor to decide blend coeffs and shader outputs, and instead uses a compile-time constant table of pre-selected blend formulas. Separates out the dst read fallback into its own XP. Introduces a new blend strategy for srcCoeff=0 that can apply coverage with a reverse subtract blend equation instead of dual source blending. Adds new macros in GrBlend.h to analyze blend formulas both runtime. Removes kSetCoverageDrawing_OptFlag and GrSimplifyBlend as they are no longer used. Adds a GM that verifies all xfermodes, including arithmetic, with the color/coverage invariants used by Porter Duff. Adds a unit test that verifies each Porter Duff formula with every color/coverage invariant. Major changes: * Uses a reverse subtract blend equation for coverage when srcCoeff=0 (clear, dst-out [Sa=1], dst-in, modulate). Platforms that don't support dual source blending no longer require a dst copy for dst-in and modulate. * Sets BlendInfo::fWriteColor to false when the blend does not modify the dst. GrGLGpu will now use glColorMask instead of blending for these modes (dst, dst-in [Sa=1], modulate ignored for [Sc=1]). * Converts all SA blend coeffs to One for opaque inputs, and ISA to Zero if there is also no coverage. (We keep ISA around when there is coverage because we use it to tweak alpha for coverage.) * Abandons solid white optimizations for the sake of simplicity (screen was the only mode that previous had solid white opts). Minor differences: * Inconsequential differences in opt flags (e.g. we now return kCanTweakAlphaForCoverage_OptFlag even when there is no coverage). * Src coeffs when the shader outputs 0. * IS2C vs IS2A when the secondary output is scalar. BUG=skia: Committed: https://skia.googlesource.com/skia/+/9a70920db22b6309c671f8e5d519bb95570e4414 Review URL: https://codereview.chromium.org/1124373002
* Better comments in SkXfermodeInterpretationGravatar halcanary2015-05-27
| | | | | | TBR=reed@google.com Review URL: https://codereview.chromium.org/1159493003
* revert reorderingGravatar joshualitt2015-05-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1155593004
* Add caps overrides to GMsGravatar bsalomon2015-05-27
| | | | Review URL: https://codereview.chromium.org/1158963002
* Use SkTArray instead of SkSTArray in movable.Gravatar bungeman2015-05-27
| | | | | | | | | | | SkTArray is trivially movable, but SkSTArray is not, since it may contain an internal pointer. FontFileInfo is supposed to be trivially movable but currently isn't due to containing an SkSTArray. Removing this particular optimization should not affect performance much as this type is only used for parsing and does not allocate any memory unless a variation axis is actually specified. Review URL: https://codereview.chromium.org/1155383002
* New CodeSrc* draw mode kScanline_Subset_ModeGravatar emmaleer2015-05-27
| | | | | | | | | kScanline_Subset_Mode decodes the image in subsets using a scanline decoder. The number of subsets can be specified by changing the constant divisor. The number of subsets is equal to divisor*divisor. Review URL: https://codereview.chromium.org/1157153003
* Move SkGpuDevice::internalDrawPath to GrBlurUtils::drawPathWithMaskFilterGravatar robertphillips2015-05-27
| | | | | | | | | | | This CL is ugly but it: removes the stored SkGpuDevice back pointer from GrTextContext (at the cost of passing more parameters) moves SkGpuDevice::internalDrawPath to GrDrawContext::drawPathFull Unfortunately, the GrTextContext-derived classes still need the SkGpuDevice for filterTextFlags calls but I will try removing that in a separate CL. Review URL: https://codereview.chromium.org/1157773003
* Fall back to older inorder buffer if we have NVPRGravatar joshualitt2015-05-27
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/b72ec98b2090e5728354dac66eb1886a28e4da6b Review URL: https://codereview.chromium.org/1143153008
* Revert of Fall back to older inorder buffer if we have NVPR (patchset #3 ↵Gravatar joshualitt2015-05-27
| | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/1143153008/) Reason for revert: breaking bots Original issue's description: > Fall back to older inorder buffer if we have NVPR > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/b72ec98b2090e5728354dac66eb1886a28e4da6b TBR=bsalomon@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1160663006
* Fall back to older inorder buffer if we have NVPRGravatar joshualitt2015-05-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1143153008
* enable reorderingGravatar joshualitt2015-05-27
| | | | | | | NO_MERGE_BUILDS BUG=skia: Review URL: https://codereview.chromium.org/1158213002
* CL to add setFullscreen and setVsync to SkWindowGravatar joshualitt2015-05-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1151333004
* SkPDF: with opaque draws, treat SRC mode as SRC_OVERGravatar halcanary2015-05-27
| | | | | | BUG=473572 Review URL: https://codereview.chromium.org/1159763004
* fixing onSkipScanlines png errorGravatar emmaleer2015-05-27
| | | | | | | There was a bug in onSkipScanlines where NULL was being passed instead of the SrcRow to png_read_rows. This caused SkipScanlines to appear to be skipping, as fCurrScanline was updated and SkipScanlines returned success, however png_read_rows was not actually reading anything, and no lines were skipped. Review URL: https://codereview.chromium.org/1159853003
* don't use accessBitmapGravatar reed2015-05-26
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1154293002
* Unblock DEPS roll by remove SkAutoTUnref from GrDrawContextGravatar robertphillips2015-05-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1156103006
* Fix SkAndroidSDKCanvas virtualsGravatar tomhudson2015-05-26
| | | | | | | | | Catch Android Framework-only code up to a change made in the SkCanvas signature. R=scroggo@google.com,reed@google.com Review URL: https://codereview.chromium.org/1151673004
* speculative revert change to pixmap for bitmapscalerGravatar reed2015-05-26
| | | | | | | BUG=491891 TBR= Review URL: https://codereview.chromium.org/1159793003
* real fix for textblob use after gpu freeGravatar joshualitt2015-05-26
| | | | | | | | | | | This patch addresses two issues: 1) Textblobs with abandoned strikes were not properly regenerating. 2) Provided by ericrk - GrTextBlobCache removed blobs from |fCache| during freeAll, but left potentially released blobs in the |fBlobList|. We now remove these from |fBlobList| as well. BUG=skia: Review URL: https://codereview.chromium.org/1160633002
* Split GrCaps impl out into its own cppGravatar bsalomon2015-05-26
| | | | | | TBR=joshualitt@google.com Review URL: https://codereview.chromium.org/1151503003
* Split drawing functionality out of GrContext and into new GrDrawContextGravatar robertphillips2015-05-26
| | | | | | | | This is mainly a mechanical CL. There were some fiddly bits in GrContext.cpp where it no longer had access to the GrDrawTarget (and had to use the new GrDrawContext). I've converted GrAARectRenderer & GrOvalRenderer into static classes so I could stop allocating them. Review URL: https://codereview.chromium.org/1151283004
* change internals over to SkPixmap and stop using accessBitmapGravatar reed2015-05-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1155443004
* Move DstCoordTexture to GrXP, rename and remove the word "copy" from ↵Gravatar bsalomon2015-05-26
| | | | | | | | dstcopytexture names. Committed: https://skia.googlesource.com/skia/+/bb106b5f6ee18f7453b63f3a95f421b60a957f39 Review URL: https://codereview.chromium.org/1132093004
* Reorder across clearsGravatar joshualitt2015-05-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1161643002
* sync-and-gyp: make smarterGravatar halcanary2015-05-26
| | | | | | | | | | | | | This fixes two issues: If gyp is run with the CXX and CC environment variables set, it will produce different ninja build files. sync-and-gyp now tracks the values of those variables; if they change, re-run gyp. Secondly, we introduced find.py, which is used inside gyp files. If the contents of certain directories changes, gyp should be re-run. So now we track those directories too. Review URL: https://codereview.chromium.org/1153083002
* Disabling ~path_hairline in iOS nanobenchGravatar stephana2015-05-26
| | | | | | | | | Temporary measure to make nanobench succeed. TBR=borenet BUG=skia: Review URL: https://codereview.chromium.org/1144173004
* remove unneeded device:lockpixelsGravatar reed2015-05-25
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1156073003
* Avoid creating GrGLPath to the resource cache when creating GrGLPathRangesGravatar kkinnunen2015-05-24
| | | | | | | | | | | Do not create a GrGLPath when loading glyphs with the driver and creating GrGLPathRange based on those. The path would be inserted to the GPU resource cache and then immediately be released. Instead, just init the first path object of the path range as the template. Review URL: https://codereview.chromium.org/1146983004
* Update SKP versionGravatar skia.buildbots2015-05-24
| | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR= NO_MERGE_BUILDS Review URL: https://codereview.chromium.org/1159443003
* deprecate calling lockPixelsGravatar reed2015-05-23
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1156003002
* move readPixels from bitmap -> pixmapGravatar reed2015-05-23
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1153893003
* remove bitmaps entirely from sprite blits (as source)Gravatar reed2015-05-23
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1156713004
* Revert of Implement Porter Duff XP with a blend table (patchset #12 ↵Gravatar bungeman2015-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:220001 of https://codereview.chromium.org/1124373002/) Reason for revert: Blocking DEPS roll into Chromium. Crashing virtual/gpu/fast/canvas/canvas-composite-*.html tests with the assert ../../third_party/skia/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp:281: failed assertion "k110_GrGLSLGeneration != gpu->glslGeneration() || fOutputs.empty()" Original issue's description: > Implement Porter Duff XP with a blend table > > Removes the runtime logic used by PorterDuffXferProcessor to decide > blend coeffs and shader outputs, and instead uses a compile-time > constant table of pre-selected blend formulas. > > Introduces a new blend strategy for srcCoeff=0 that can apply coverage > with a reverse subtract blend equation instead of dual source > blending. > > Adds new macros in GrBlend.h to analyze blend formulas both runtime. > > Removes kSetCoverageDrawing_OptFlag and GrSimplifyBlend as they are no > longer used. > > Adds a GM that verifies all xfermodes, including arithmetic, with the > color/coverage invariants used by Porter Duff. > > Adds a unit test that verifies each Porter Duff formula with every > color/coverage invariant. > > Major changes: > > * Uses a reverse subtract blend equation for coverage when srcCoeff=0 > (clear, dst-out [Sa=1], dst-in, modulate). Platforms that don't > support dual source blending no longer require a dst copy for > dst-in and modulate. > > * Sets BlendInfo::fWriteColor to false when the blend does not modify > the dst. GrGLGpu will now use glColorMask instead of blending for > these modes (dst, dst-in [Sa=1], modulate ignored for [Sc=1]). > > * Converts all SA blend coeffs to One for opaque inputs, and ISA to > Zero if there is also no coverage. (We keep ISA around when there > is coverage because we use it to tweak alpha for coverage.) > > * Abandons solid white optimizations for the sake of simplicity > (screen was the only mode that previous had solid white opts). > > Minor differences: > > * Inconsequential differences in opt flags (e.g. we now return > kCanTweakAlphaForCoverage_OptFlag even when there is no coverage). > > * Src coeffs when the shader outputs 0. > > * IS2C vs IS2A when the secondary output is scalar. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/9a70920db22b6309c671f8e5d519bb95570e4414 TBR=egdaniel@google.com,bsalomon@google.com,cdalton@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1153993002