aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
Commit message (Collapse)AuthorAge
* Sketch SkPictureRecorder::optimizeFor(GrContext*).Gravatar mtklein2016-08-01
| | | | | | | | | | I'm open to API suggestions. We can pass this in finishAs(), up front, whatever. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2203453002 Review-Url: https://codereview.chromium.org/2203453002
* Replace 'Ulta' with 'Ultra'.Gravatar bungeman2016-08-01
| | | | | | | | | Start fixing a typo in an enum name. TBR=reed This is just a typo fix. Review-Url: https://codereview.chromium.org/2202703002
* implement isABitmap for imageshader, return localmatrix for bitmap's implGravatar reed2016-08-01
| | | | | | | | | For imageshader, I only return true if the image is explicitly raster-backed. I do not return true for texture, nor for generator (i.e. lazy/picture) backed. Is that ok? BUG=skia:5592 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2197323002 Review-Url: https://codereview.chromium.org/2197323002
* Replace old SkRecords RefBox with sk_sp.Gravatar mtklein2016-08-01
| | | | | | | | | | | | The main differences are that RefBox's constructor reffed and sk_sp's doesn't, and that RefBox auto-casts to the underlying pointer while sk_sp doesn't. I've added a bunch of sk_ref_sp() and .get() to compensate. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2197243003 Review-Url: https://codereview.chromium.org/2197243003
* GrFP can express distance vector field req., program builder declares ↵Gravatar dvonbeck2016-08-01
| | | | | | | | | | | | | | | | | | | | | variable for it This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates: - from child FPs to their parent - from parent FPs to the GrPaint - from GrPaint through the PipelineBuilder into GrPipeline - acessed from GrPipeline by GrGLSLProgramBuilder GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method. This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002 Committed: https://skia.googlesource.com/skia/+/4ef6dfa7089c092c67b0d5ec34e89c1e319af196 Review-Url: https://codereview.chromium.org/2114993002
* Add SkColorSpace::Equals() APIGravatar msarett2016-08-01
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196743002 Review-Url: https://codereview.chromium.org/2196743002
* Default fake gamma to sRGB.Gravatar mtklein2016-08-01
| | | | | | | | | | | | | No one appears to be using the default 2.2. This makes SK_GAMMA_SRGB the default / a no-op, which seems more realistic. Chrome's explicitly setting SK_GAMMA_EXPONENT or SK_GAMMA_SRGB. We set Android platform explicitly to 1.4. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2198073002 Review-Url: https://codereview.chromium.org/2198073002
* Remove some ancillary users of SkSurface::MakeRenderTargetDirectGravatar robertphillips2016-08-01
| | | | | | | | calved off of: https://codereview.chromium.org/2176333002/ (Remove SkSurface::MakeRenderTargetDirect) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2198433003 Review-Url: https://codereview.chromium.org/2198433003
* Revert of GrFP can express distance vector field req., program builder ↵Gravatar mtklein2016-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | declares variable for it (patchset #20 id:370001 of https://codereview.chromium.org/2114993002/ ) Reason for revert: UBSAN says we're reading a bad bool here: bool usesDistanceVectorField() const { return fUsesDistanceVectorField; } ../../../include/gpu/GrPaint.h:83:51: runtime error: load of value 239, which is not a valid value for type 'bool' SUMMARY: AddressSanitizer: undefined-behavior ../../../include/gpu/GrPaint.h:83:51 in Seems likely also the root of Valgrind failure: https://luci-milo.appspot.com/swarming/task/30522e4f2241cb10 Original issue's description: > GrFP can express distance vector field req., program builder declares variable for it > > This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates: > > - from child FPs to their parent > - from parent FPs to the GrPaint > - from GrPaint through the PipelineBuilder into GrPipeline > - acessed from GrPipeline by GrGLSLProgramBuilder > > GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method. > > This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002 > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002 > > Committed: https://skia.googlesource.com/skia/+/4ef6dfa7089c092c67b0d5ec34e89c1e319af196 TBR=egdaniel@google.com,robertphillips@google.com,bsalomon@google.com,dvonbeck@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=skia: Review-Url: https://codereview.chromium.org/2201613002
* Add ES 3.0 fallback for instanced renderingGravatar csmartdalton2016-07-29
| | | | | | | | | | | | | | | Adds the ability for GLInstancedRendering to use glDrawElementsInstanced when glDrawElementsIndirect is not supported. The only remaining 3.1 dependency now is EXT_texture_buffer. Also moves the cap for glDraw*Instanced out of GrCaps and into GrGLCaps. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2193303002 Review-Url: https://codereview.chromium.org/2193303002
* Conditionally define SK_SUPPORT_LEGACY_DATA_FACTORIES.Gravatar bungeman2016-07-29
| | | | | | | | | | | In order to remove this define it will first need to be defined in Chromium. However, doing so causes redefinition warnings as errors. Only define this macro if it is not already defined to avoid this. TBR=reed This doesn't change any API. Review-Url: https://codereview.chromium.org/2198453002
* GrFP can express distance vector field req., program builder declares ↵Gravatar dvonbeck2016-07-29
| | | | | | | | | | | | | | | | | | | | variable for it This update allows fragment processors to require a field of vectors to the nearest edge. This requirement propagates: - from child FPs to their parent - from parent FPs to the GrPaint - from GrPaint through the PipelineBuilder into GrPipeline - acessed from GrPipeline by GrGLSLProgramBuilder GrGLSL generates a variable for the distance vector and passes it down to the GeometryProcessor->emitCode() method. This CL's base is the CL for adding the BevelNormalSource API: https://codereview.chromium.org/2080993002 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2114993002 Review-Url: https://codereview.chromium.org/2114993002
* Remove GrContext::applyGammaGravatar robertphillips2016-07-29
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2191323002 Review-Url: https://codereview.chromium.org/2191323002
* Add test configs for instanced renderingGravatar csmartdalton2016-07-29
| | | | | | | | | | | | | | | Adds the following configs and enables them on select bots: glinst, glinst4, glinstdit4, glinst16, glinstdit16, esinst, esinst4, esinstdit4 Makes general changes to GrContextOptions, GrCaps, etc. to facilitate this. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182783004 Review-Url: https://codereview.chromium.org/2182783004
* Add color space xform support to SkJpegCodec (includes F16!)Gravatar msarett2016-07-29
| | | | | | | | | | | | | | | | | Also changes SkColorXform to support: RGBA->RGBA RGBA->BGRA Instead of: RGBA->SkPMColor TBR=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Committed: https://skia.googlesource.com/skia/+/73d55332e2846dd05e9efdaa2f017bcc3872884b Review-Url: https://codereview.chromium.org/2174493002
* Revert of Add color space xform support to SkJpegCodec (includes F16!) ↵Gravatar msarett2016-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #9 id:260001 of https://codereview.chromium.org/2174493002/ ) Reason for revert: Breaking MSAN Original issue's description: > Add color space xform support to SkJpegCodec (includes F16!) > > Also changes SkColorXform to support: > RGBA->RGBA > RGBA->BGRA > > Instead of: > RGBA->SkPMColor > > TBR=reed@google.com > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002 > CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot > > Committed: https://skia.googlesource.com/skia/+/73d55332e2846dd05e9efdaa2f017bcc3872884b TBR=mtklein@google.com,reed@google.com,herb@google.com,brianosman@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2195523002
* Remove use of MakeRenderTargetDirect from view systemGravatar robertphillips2016-07-28
| | | | | | | | Here is the CL that sent me down the SkGammaColorFilter path GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2178353005 Review-Url: https://codereview.chromium.org/2178353005
* Add color space xform support to SkJpegCodec (includes F16!)Gravatar msarett2016-07-28
| | | | | | | | | | | | | | | | Also changes SkColorXform to support: RGBA->RGBA RGBA->BGRA Instead of: RGBA->SkPMColor TBR=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2174493002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/2174493002
* turn bitmaps into images during recordingGravatar reed2016-07-28
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185563003 Review-Url: https://codereview.chromium.org/2185563003
* Add writeToMemory() API to SkColorSpaceGravatar msarett2016-07-28
| | | | | | | | | | | | | | | | | New API mirrors the form of similar APIs in SkRegion, SkMatrix, etc. This also fixes a bug: SkImageInfo appears in a object that Chrome stores in discardable memory. So when sk_sp<SkColorSpace> was added to SkImageInfo a leak was introduced. We'll use this new method and deserialize to store the SkColorSpace in the discardable object. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2192903002 Review-Url: https://codereview.chromium.org/2192903002
* SkPaint intercept API for SkTextBlob and horizontal textGravatar fmalita2016-07-28
| | | | | | | | | | | | Add getPosTextHIntercepts(), getTextBlobIntercepts(). Consolidate the implementation in GetTextIntercepts<> template. BUG=chormium:581456 R=caryclark@google.com,reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186663004 Review-Url: https://codereview.chromium.org/2186663004
* Make both SK_API definition points identical and order independent.Gravatar mtklein2016-07-28
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2189983002 Review-Url: https://codereview.chromium.org/2189983002
* Add SkGammaColorFilterGravatar robertphillips2016-07-28
| | | | | | | | WDYT about this as a means of replacing GrContext::applyGamma with a normal SkCanvas::drawImage? GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2190573002 Review-Url: https://codereview.chromium.org/2190573002
* Expose more gamma info for UMA statisticsGravatar msarett2016-07-27
| | | | | | | | TBR=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188633003 Review-Url: https://codereview.chromium.org/2188633003
* Fix GrDrawContextPriv::stencilRectGravatar csmartdalton2016-07-27
| | | | | | | | | | | | | Updates stencilRect to call drawNonAAFilledRect instead of drawFilledRect. drawFilledRect can use coverage AA, which isn't appropriate for stencil draws. Also modifies drawNonAAFilledRect to take a "useHWAA" argument instead of trying to deduce whether it should be used. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187583002 Review-Url: https://codereview.chromium.org/2187583002
* Rename GrContext's newDrawContext & drawContext to makeDrawContextGravatar robertphillips2016-07-27
| | | | | | | | These both return sk_sp. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186073002 Review-Url: https://codereview.chromium.org/2186073002
* require semi at the end of SkASSERT and friendsGravatar caryclark2016-07-27
| | | | | | | | R=bungeman@google.com TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185063002 Review-Url: https://codereview.chromium.org/2185063002
* Clean up some unused atomic routines.Gravatar mtklein2016-07-27
| | | | | | | | | | | AtomicTest was the only use of sk_atomic_add(). AtomicInc64 bench was the only use of sk_atomic_inc(int64_t*). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183473005 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN-Trybot,Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Release-TSAN-Trybot Review-Url: https://codereview.chromium.org/2183473005
* Add gyp define to enable vulkan debug layersGravatar egdaniel2016-07-27
| | | | | | | | | | | | | | | | | | On Debug vulkan bots, running with the debug layers on seems to be adding more than an hour to the total running time. Since we suppress any output on the bots anyways the debug layers are serving no purpose. Thus I am adding a gyp define to disable the layers on the bot. With this change, by default when running vulkan in Debug, the debug_layers will be enabled. The bots should disable the layers. Android framework should also have them disabled by default. TBR=djsollen@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185953003 Review-Url: https://codereview.chromium.org/2185953003
* Simplify color space xform storage and usage (float[] vs. SkMatrix44)Gravatar brianosman2016-07-27
| | | | | | | | | | Public API is really just internal. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2185533005 TBR=bsalomon@google.com Review-Url: https://codereview.chromium.org/2185533005
* Initial SVG modelGravatar fmalita2016-07-26
| | | | | | | | | A minimal subset needed to render tiger.svg: <svg>, <g>, <path>, 'd', 'fill'/'stroke' (color-only), 'transform'. R=reed@google.com,robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164193002 Review-Url: https://codereview.chromium.org/2164193002
* Avoid warnings on GCC 4.8.4Gravatar jcgregorio2016-07-26
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183243002 [mtklein adds...] TBR=reed@google.com No public API changes. Review-Url: https://codereview.chromium.org/2183243002
* Move SkJSONCPP.h to tools. It tool-only.Gravatar mtklein2016-07-26
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2184483003 CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot TBR=reed@google.com Review-Url: https://codereview.chromium.org/2184483003
* don't specialize drawBitmapRect for minirecorder; no longer called by blinkGravatar reed2016-07-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2183193002 Review-Url: https://codereview.chromium.org/2183193002
* Use Windowing system-specific WindowContext factories.Gravatar bsalomon2016-07-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2169543002 Review-Url: https://codereview.chromium.org/2169543002
* Reduce usage of MakeRenderTargetDirectGravatar robertphillips2016-07-26
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187573002 Review-Url: https://codereview.chromium.org/2187573002
* Remove SkSurfaceProps gamma-correctness flag entirely.Gravatar brianosman2016-07-26
| | | | | | | | | | | | | This is no longer required - gamma-correctness is now just based on the presence or absence of a color space. Public API change is just removal of (unused) flag. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188463002 TBR=bsalomon@google.com Review-Url: https://codereview.chromium.org/2188463002
* Remove all usage of SkSurfaceProps::isGammaCorrect()Gravatar brianosman2016-07-26
| | | | | | | | | | | | | DrawContext's isGammaCorrect now just based on presence of color space. Next change will remove the function and flag entirely, but I wanted to land this separately. This alters a few GMs in srgb/f16 mode, generally those that are creating off-screen surfaces in ways that were somewhat lossy before. No unexplained changes. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2186633002 Review-Url: https://codereview.chromium.org/2186633002
* Move prepareForExternalIO from GrRenderTarget to GrDrawContextGravatar robertphillips2016-07-26
| | | | | | | | This is part of the push to remove GrRenderTarget from SkGpuDevice GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182543003 Review-Url: https://codereview.chromium.org/2182543003
* Update typeface serialization style.Gravatar bungeman2016-07-25
| | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2030683002 Committed: https://skia.googlesource.com/skia/+/7ae1c72e593823e6e300e4199558555765bcec17 Review-Url: https://codereview.chromium.org/2030683002
* Add test for typeface style round trip.Gravatar bungeman2016-07-25
| | | | | | | | This also fixes the CG and GDI ports so they pass the test. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2171163002 Review-Url: https://codereview.chromium.org/2171163002
* Just pass the draw context to paint conversionGravatar brianosman2016-07-25
| | | | | | | | | | Concentrate on using draw context functionality to answer gamma and color related queries in more places. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182603003 Review-Url: https://codereview.chromium.org/2182603003
* remove/deprecate SkBitmap::getTexture, as it now always returns falseGravatar reed2016-07-25
| | | | | | | | | oh happy day BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175873002 Review-Url: https://codereview.chromium.org/2175873002
* remove fClipStack and attach/deattach-from-canvasGravatar reed2016-07-25
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180793002 Review-Url: https://codereview.chromium.org/2180793002
* typedef uint16_t SkGlyphIDGravatar halcanary2016-07-25
| | | | | | | This goes well with our existing `typedef int32_t SkUnichar`. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2095263003 Review-Url: https://codereview.chromium.org/2095263003
* Add destination color space to AsFPArgs. Eliminates last XFORMTODO.Gravatar brianosman2016-07-25
| | | | | | | | | | | | This is going to be needed in many more places as I finish connecting the dots. Even better - I'd like to switch to a world where SkColorSpace != nullptr is the only signal we use for gamma-correct rendering, so I can eliminate SkSourceGammaTreatment and SkSurfaceProps::isGammaCorrect. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2180503002 Review-Url: https://codereview.chromium.org/2180503002
* lockPixelsAreWritable is deprecatedGravatar reed2016-07-24
| | | | | | | | | BUG=skia:4328 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2177063002 TBR= Review-Url: https://codereview.chromium.org/2177063002
* Always init SkPathRef variables.Gravatar senorblanco2016-07-22
| | | | | | | BUG=623195 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2173853003 Review-Url: https://codereview.chromium.org/2173853003
* Add SkRasterPipeline blitter.Gravatar mtklein2016-07-22
| | | | | | | | | | | This is now pixel-exact with the existing sRGB SW impl as far as I've tested. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2146413002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot Committed: https://skia.googlesource.com/skia/+/3011e337693a9786f62d8de9ac4b239ad6dbdaca Review-Url: https://codereview.chromium.org/2146413002
* Bundle SkShader::asFragmentProcessor arguments in a structGravatar brianosman2016-07-22
| | | | | | | | | | The signature of this thing keeps changing (and is about to change again). This just makes maintenance much easier. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2175563003 Review-Url: https://codereview.chromium.org/2175563003