aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Reland "Add support for SkCanvas::kStrict_SrcRectConstraint to GrTextureOp."Gravatar Brian Salomon2018-05-26
| | | | | | | | | | | | | | | | This is a reland of a0047bcff704a9121a6d82a6f97d6124463a2e54 Original change's description: > Add support for SkCanvas::kStrict_SrcRectConstraint to GrTextureOp. > > Change-Id: I8faa2838b3110b8080ac48bbe223240e3fb22998 > Reviewed-on: https://skia-review.googlesource.com/129762 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> Change-Id: Icbad064ae2779f4e140a55e520c0034cd1d17477 Reviewed-on: https://skia-review.googlesource.com/130305 Reviewed-by: Stephen White <senorblanco@chromium.org>
* Revert "Add support for SkCanvas::kStrict_SrcRectConstraint to GrTextureOp."Gravatar Stephen White2018-05-26
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit a0047bcff704a9121a6d82a6f97d6124463a2e54. Reason for revert: Possibly blocking the Chromium roll (layout tests) Original change's description: > Add support for SkCanvas::kStrict_SrcRectConstraint to GrTextureOp. > > Change-Id: I8faa2838b3110b8080ac48bbe223240e3fb22998 > Reviewed-on: https://skia-review.googlesource.com/129762 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,brianosman@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: If7ddf13d8a63bc1ab6a51a1395896282f3a31702 Reviewed-on: https://skia-review.googlesource.com/130304 Reviewed-by: Stephen White <senorblanco@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Revert "Workaround constexpr bug in MSVC 2015 in GrTextureOp"Gravatar Stephen White2018-05-26
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9eff78e2623d600282ca63c2e9988e0ffbba2949. Reason for revert: Possibly blocking Chromium roll (layout tests) Original change's description: > Workaround constexpr bug in MSVC 2015 in GrTextureOp > > Change-Id: I441858aab5fcd63e5467625a23681c5bcd35f25b > Reviewed-on: https://skia-review.googlesource.com/130122 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,brianosman@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I4cf8f2b86cc601cf649e23e3889150419a834cb1 Reviewed-on: https://skia-review.googlesource.com/130303 Reviewed-by: Stephen White <senorblanco@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Revert "Turn off domain in GrTextureOp when src rect contains entire proxy"Gravatar Stephen White2018-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 869433fa113d1573d5d91fcafdca413b247ce1b0. Reason for revert: possibly preventing Chromium roll (layout tests) Original change's description: > Turn off domain in GrTextureOp when src rect contains entire proxy > > Move check for turning off domain when nearest/no-aa to GrRenderTargetContext. > > Change-Id: I3c071b5f73fb3134218453204f30c3020c9dad9a > Reviewed-on: https://skia-review.googlesource.com/130143 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I8afc3c05b504ccde7d44e973d707f4cba1dc51b1 Reviewed-on: https://skia-review.googlesource.com/130302 Reviewed-by: Stephen White <senorblanco@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
* GrTessellator: remove collinear vertices.Gravatar Stephen White2018-05-25
| | | | | | | | | | | During sanitize_contours(), remove any points which are collinear with their previous and next points. Bug: skia:8503 Change-Id: Iba1df73b15a92047302bc26f01cb79f4de118760 Reviewed-on: https://skia-review.googlesource.com/130206 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Revert "Create API for GrVkMemoryAllocator and impliment use of AMD ↵Gravatar Greg Daniel2018-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | VulkanMemoryAllocator on this API." This reverts commit 26c0e4c1f54759249c2d61b50fb5430bd73793f2. Reason for revert: breaks roll into fuchsia Original change's description: > Create API for GrVkMemoryAllocator and impliment use of AMD VulkanMemoryAllocator on this API. > > Bug: skia: > Change-Id: I1e122e1b11ab308c2f83cb98c36c81511f4507d0 > Reviewed-on: https://skia-review.googlesource.com/129980 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > Reviewed-by: Jim Van Verth <jvanverth@google.com> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com,bungeman@google.com Change-Id: I6c74978f778987c422e6162e7dd85ea9c6baa0e4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/130182 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Create API for GrVkMemoryAllocator and impliment use of AMD ↵Gravatar Greg Daniel2018-05-25
| | | | | | | | | | | VulkanMemoryAllocator on this API. Bug: skia: Change-Id: I1e122e1b11ab308c2f83cb98c36c81511f4507d0 Reviewed-on: https://skia-review.googlesource.com/129980 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Turn off domain in GrTextureOp when src rect contains entire proxyGravatar Brian Salomon2018-05-25
| | | | | | | | | Move check for turning off domain when nearest/no-aa to GrRenderTargetContext. Change-Id: I3c071b5f73fb3134218453204f30c3020c9dad9a Reviewed-on: https://skia-review.googlesource.com/130143 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Workaround constexpr bug in MSVC 2015 in GrTextureOpGravatar Brian Salomon2018-05-24
| | | | | | | Change-Id: I441858aab5fcd63e5467625a23681c5bcd35f25b Reviewed-on: https://skia-review.googlesource.com/130122 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rename GrAtlasTextContext -> GrTextContextGravatar Herb Derby2018-05-24
| | | | | | | | Change-Id: I309b39425afc9b45095241eeb299096bc426afed Reviewed-on: https://skia-review.googlesource.com/130029 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Remove memory pool use from SkTextBlobCacheGravatar Herb Derby2018-05-24
| | | | | | | | | | Track used size explicitly in the cache enabling DDL to use the LRU. Change-Id: I3fef593e9252172dd160fd7636254550b95ca0a2 Reviewed-on: https://skia-review.googlesource.com/130022 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Add support for SkCanvas::kStrict_SrcRectConstraint to GrTextureOp.Gravatar Brian Salomon2018-05-24
| | | | | | | Change-Id: I8faa2838b3110b8080ac48bbe223240e3fb22998 Reviewed-on: https://skia-review.googlesource.com/129762 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Move vulkan layout helpers from GrVkMemory to GrVkImage.Gravatar Greg Daniel2018-05-24
| | | | | | | | Bug: skia: Change-Id: Iebcf5844a0b469dea1e96e351f91239ff512f708 Reviewed-on: https://skia-review.googlesource.com/129934 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add GPU perspective support for color emojiGravatar Jim Van Verth2018-05-24
| | | | | | | | | | Will also warp orthogonal bitmaps to handle skew and rotate transforms. Bug: skia:7985 Change-Id: Ib0d5476dd68603354be90c8d404f1e5140d63a0c Reviewed-on: https://skia-review.googlesource.com/129480 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Reland fonts: Add support for distance field text to font remoting.Gravatar Khushal2018-05-24
| | | | | | | | | | | This reverts commit 7257e22e43a56a5f4f772b687034580061cd011f. TBR=herb@google.com, bsalomon@google.com Bug: skia:7913 Change-Id: I51ca5bccdda64cd98e2ad59874e7136ee58cec10 Reviewed-on: https://skia-review.googlesource.com/129809 Reviewed-by: Khusal Sagar <khushalsagar@chromium.org> Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
* ccpr: Handle winding and even-odd in the same shaderGravatar Chris Dalton2018-05-24
| | | | | | | | | | | | | | | We are already waiting for an entire texture lookup anyway. A couple extra flops should still complete before the texture fetch. This also gives us better batching. TBR=bsalomon@google.com Bug: skia: Change-Id: I7b8e3021c8baad200af99600c9592df5ed0e46bd Reviewed-on: https://skia-review.googlesource.com/129881 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com> Auto-Submit: Chris Dalton <csmartdalton@google.com>
* Revert "ccpr: Handle winding and even-odd in the same shader"Gravatar Chris Dalton2018-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 5dd3fccb3c7d9fce2663803a1284734237d8546d. Reason for revert: fma() not supported pre-3.1 Original change's description: > ccpr: Handle winding and even-odd in the same shader > > We are already waiting for an entire texture lookup anyway. A couple > extra flops should still complete before the texture fetch. This also > gives us better batching. > > Bug: skia: > Change-Id: I83a7a8ba6c05cd1ad6b1756a987429233e69ed6c > Reviewed-on: https://skia-review.googlesource.com/129422 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,csmartdalton@google.com Change-Id: Iaa6b72686fdf89b58a0ea8418296985c2a3dc27e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/129900 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Handle winding and even-odd in the same shaderGravatar Chris Dalton2018-05-23
| | | | | | | | | | | | We are already waiting for an entire texture lookup anyway. A couple extra flops should still complete before the texture fetch. This also gives us better batching. Bug: skia: Change-Id: I83a7a8ba6c05cd1ad6b1756a987429233e69ed6c Reviewed-on: https://skia-review.googlesource.com/129422 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* ccpr: Add a mechanism to detach and merge pending pathsGravatar Chris Dalton2018-05-23
| | | | | | | | Bug: skia:7988 Change-Id: Ie3fd7c5d57abdf70db40d309b7a83333045ad972 Reviewed-on: https://skia-review.googlesource.com/129622 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* ccpr: Remove GrCCDrawPathsOp's back-pointer into CCPRGravatar Chris Dalton2018-05-23
| | | | | | | | Bug: skia:7988 Change-Id: Ia05173e90fa2cda28de6ae2a9aaee577eaf4bc65 Reviewed-on: https://skia-review.googlesource.com/129621 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Delete GrDrawOp::wasRecordedGravatar Chris Dalton2018-05-23
| | | | | | | | Bug: skia:7988 Change-Id: I8d12beec835767f22302a1e167fcef46ee5e5ffc Reviewed-on: https://skia-review.googlesource.com/129555 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "fonts: Add support for distance field text to font remoting."Gravatar Mike Klein2018-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 35e0a1a6908492c754156d1abb785da3a9ce2a6b. Reason for revert: looks like we're leaking paths? https://chromium-swarm.appspot.com/task?id=3da25e2f0cadb210&refresh=10 Original change's description: > fonts: Add support for distance field text to font remoting. > > R=​jvanverth@google.com, herb@google.com > > Bug: skia:7913 > Change-Id: Id3f5b3e75005be9a7234df774268359b406c99a8 > Reviewed-on: https://skia-review.googlesource.com/128970 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Reviewed-by: Jim Van Verth <jvanverth@google.com> > Commit-Queue: Khusal Sagar <khushalsagar@chromium.org> TBR=jvanverth@google.com,bsalomon@google.com,bungeman@google.com,herb@google.com,khushalsagar@chromium.org Change-Id: I37c54c8748db9b20e1f48016d8298808a1999fdb No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7913 Reviewed-on: https://skia-review.googlesource.com/129681 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* fonts: Add support for distance field text to font remoting.Gravatar Khushal2018-05-22
| | | | | | | | | | | R=jvanverth@google.com, herb@google.com Bug: skia:7913 Change-Id: Id3f5b3e75005be9a7234df774268359b406c99a8 Reviewed-on: https://skia-review.googlesource.com/128970 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
* ccpr: Remove local matrix data from path instancesGravatar Chris Dalton2018-05-22
| | | | | | | | | | | | | | | Uses the built-in local matrix code instead trying to bake it into the path instance data. If we find a case that can benefit from this type of optimization in the future, we can use something like a texel buffer and send in all of the coord transform data -- not just the local matrix. Bug: skia: Change-Id: I194bc9e4f83e588f8aa93a1a4d40097475d84977 Reviewed-on: https://skia-review.googlesource.com/129332 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Use layered templates for optional vertex attributes in GrTextureOp.Gravatar Brian Salomon2018-05-22
| | | | | | | | | | | Also, use templated member function rather than macro to generate vertices. Use enum class instead of bool for multitexturing template param. Change-Id: I2ef26c1e0db91b39cfde2e9661f3483988831469 Reviewed-on: https://skia-review.googlesource.com/129600 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* GrTessellator: fix crash on merging a dead edge.Gravatar Stephen White2018-05-22
| | | | | | | | | | | | | | | | | | When merging coincident vertices, sometimes merging an edge will cause the next edge in the list to die. But since merge_vertices() retrieves the next edge before merging the current one, we then try to merge its lifeless corpse, bringing it back as a zombie. The fix is to leave dead edges, dead. This was revealed by ec79c39a770205910f0abd762de7e19a96c986ca, but was likely a real bug that was being mishandled before that. Bug: 844873 Bug: skia:7982 Change-Id: I752c45f7551df4278fa4cb4587e7ead48cd16a21 Reviewed-on: https://skia-review.googlesource.com/129524 Commit-Queue: Stephen White <senorblanco@chromium.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* GrTextureOp: Rename template params "V" instead of "Vertex".Gravatar Brian Salomon2018-05-22
| | | | | | | | | | | Avoids confusion with TextureGeometryProcessor::Vertex. Change-Id: Ie47bc6431e803a5987d5a44e03faf3c60c9121b1 Reviewed-on: https://skia-review.googlesource.com/129513 Commit-Queue: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* GrTessellator: remove 64K vertex limit.Gravatar Stephen White2018-05-22
| | | | | | | | | | | | | This is some code I cargo-culted in from an another path renderer and is not necessary since we don't used indexed geometry. I tested locally up to 64M points in a path, and it seems fine (up to my patience). Bug: skia:7952 Change-Id: Id7745cd1ffe905bdd8a7a505174ba083f8ea91ee Reviewed-on: https://skia-review.googlesource.com/129246 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* drawPosText no longer obeys paint alignmentGravatar Herb Derby2018-05-21
| | | | | | | Change-Id: Iac498b54dea4aa1b203d2b9c58e15bb5f2147f82 Reviewed-on: https://skia-review.googlesource.com/129462 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* ccpr: Abstract the draws list in a separate classGravatar Chris Dalton2018-05-21
| | | | | | | | Bug: skia: Change-Id: I583c1bdc470e5830d041955d14b164fc00d5d014 Reviewed-on: https://skia-review.googlesource.com/129227 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Simplify aligment for DFT drawTextGravatar Herb Derby2018-05-21
| | | | | | | | | | | | The original code had to compensate for the alignment that was passed in throught the paint. You can simplifiy the code by just changing the paint to left alignment. Change-Id: I532ae5224ea5de078c6cd6255f03fc1db06baa83 Reviewed-on: https://skia-review.googlesource.com/129360 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Remove mask-filters and aa from SkPaint in SkCanvas for nine-patch/lattice.Gravatar Brian Salomon2018-05-21
| | | | | | | | | | Remove GPU fallback code which would have applied AA and mask filter separately to each lattice cell. Change-Id: I43d50f337d24bb34b94f3d0ea6cca686a2e11a50 Reviewed-on: https://skia-review.googlesource.com/129318 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Fix unit tests when workarounds are enabledGravatar Adrienne Walker2018-05-21
| | | | | | | Change-Id: Ia660a6d91aa3615e0fa21fba67f5029c131b1ba2 Reviewed-on: https://skia-review.googlesource.com/128983 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Reland "Remove GrBackendObject and all related functions from Skia."Gravatar Greg Daniel2018-05-21
| | | | | | | | | | | | | | | | | | | This is a reland of ccd4cfc23ebbbecbc6b292359352aad335ad7b73 Original change's description: > Remove GrBackendObject and all related functions from Skia. > > Bug: skia: > Change-Id: I59434b7477c0bc26fd982bd81eb97ab94bbba073 > Reviewed-on: https://skia-review.googlesource.com/125822 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> Bug: skia: Change-Id: Ibd1b9bd04b36840d9d872e2f0970dd6bac378bc9 Reviewed-on: https://skia-review.googlesource.com/129380 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add perspective support to GrTextureOp.Gravatar Brian Salomon2018-05-21
| | | | | | | | Bug: skia: Change-Id: Idea4ffae37dc2c2f339af60a2b74ded476091758 Reviewed-on: https://skia-review.googlesource.com/127600 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Disable perspective for emoji fallbackGravatar Jim Van Verth2018-05-21
| | | | | | | | Bug: skia:7562 Change-Id: Icc7182c8ae2ec403b2ea2659539d4f9561eddd02 Reviewed-on: https://skia-review.googlesource.com/113200 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "remove toString"Gravatar Cary Clark2018-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 5191880cbf3ee4d122b0d11b4945fbab0784fda7. Reason for revert: broke flutter Original change's description: > remove toString > > toString may have been used by obsolete debugger only > find out if that is so > > R=​brianosman@google.com,bsalomon@google.com > > Docs-Preview: https://skia.org/?cl=119894 > Bug:830651 > Change-Id: I737f19b7d3fbc869bea2f443fa3b5ed7c1393ffd > Reviewed-on: https://skia-review.googlesource.com/119894 > Commit-Queue: Cary Clark <caryclark@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,brianosman@google.com,caryclark@google.com,caryclark@skia.org Change-Id: I9f81de6c3615ee0608bcea9081b77239b4b8816c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 830651 Reviewed-on: https://skia-review.googlesource.com/129340 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* remove toStringGravatar Cary Clark2018-05-20
| | | | | | | | | | | | | | toString may have been used by obsolete debugger only find out if that is so R=brianosman@google.com,bsalomon@google.com Docs-Preview: https://skia.org/?cl=119894 Bug:830651 Change-Id: I737f19b7d3fbc869bea2f443fa3b5ed7c1393ffd Reviewed-on: https://skia-review.googlesource.com/119894 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Use inheritance to define TextureGeometryProcesor vertex structsGravatar Brian Salomon2018-05-18
| | | | | | | Change-Id: Ibddc994e6b5599ab20a6f3d81dfe9c6644fb1f69 Reviewed-on: https://skia-review.googlesource.com/129183 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add convenience overload of SkPointPriv::SetRectTriStrip that takes SkRectGravatar Brian Salomon2018-05-18
| | | | | | | Change-Id: Idf5bfafaf19c20f074f12d706b8b8984c5935e6d Reviewed-on: https://skia-review.googlesource.com/129185 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* GrTessellator: fix for zombie edge fuzzer crash.Gravatar Stephen White2018-05-18
| | | | | | | | | | | | | | | | While splitting one edge, merge_collinear_edges() may in rare cases merge the other edge of the intersection out of existence. split_edge() then brings these dead edges partially back to life, leaving the mesh in an inconsistent state. The fix is to null out the top and bottom pointers of dead edges to mark them as dead, and only split living edges. Bug: skia:7911 Change-Id: I1c0b59581acfcd0b8191f2d129b33f7d0d1a2516 Reviewed-on: https://skia-review.googlesource.com/129181 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Driver bug workaround: unbind_attachments_on_bound_render_fbo_deleteGravatar Adrienne Walker2018-05-18
| | | | | | | | Bug: chromium: 829614 Change-Id: Ic6bc276d1203d24f96fe92b41655871e25f69623 Reviewed-on: https://skia-review.googlesource.com/128395 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Adrienne Walker <enne@chromium.org>
* Modifications to GrTextureOp outsetting, edge equation code.Gravatar Brian Salomon2018-05-18
| | | | | | | | | | | | | | | | Factor out to its own function to be reused with perspective. Avoid initial shuffles to fan order using nextCW and nextCCW helpers that assume tri strip order. Make sign test stay in 4f. Use fmas. Change-Id: I60cff205f6193c4e01ea84218812a663ce74038f Reviewed-on: https://skia-review.googlesource.com/129175 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add proxy unique key management to GrOnFlushResourceProviderGravatar Chris Dalton2018-05-18
| | | | | | | | Bug: skia: Change-Id: I0c462e282ea6d78f22340546c03b357f1ba7666f Reviewed-on: https://skia-review.googlesource.com/129140 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Check for correct bounds of large rotated and skewed emoji.Gravatar Jim Van Verth2018-05-17
| | | | | | | | Bug: skia:7879 Change-Id: I039ca9d216c3a9a913f5dd5f63d7f01de3abfdc8 Reviewed-on: https://skia-review.googlesource.com/128923 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Rewrite GrQuad to use separate arrays of x and y values to be Sk4f friendly.Gravatar Brian Salomon2018-05-17
| | | | | | | Change-Id: Ie2ad197c5f17849fe6e034b60bc7ec18a00edb24 Reviewed-on: https://skia-review.googlesource.com/128842 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Driver bug workaround: pack_parameters_workaround_with_pack_bufferGravatar Adrienne Walker2018-05-16
| | | | | | | | Bug: chromium: 829614 Change-Id: I3fae2b4181e4a6e37fb31fe2f2e9a6cfacb1860f Reviewed-on: https://skia-review.googlesource.com/128206 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix check for valid proxies returned by AtlasManager.Gravatar Jim Van Verth2018-05-16
| | | | | | | | | | | | Also renames a lot of variables to make it clearer that getProxies() returns the number of instantiated proxies, not the number of all proxies. Bug: skia: Change-Id: Ifbc910cbd6635dccdb4e7f0df2e69a0f341130af Reviewed-on: https://skia-review.googlesource.com/128660 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Driver bug workaround: gl_clear_brokenGravatar Adrienne Walker2018-05-16
| | | | | | | | | | | | | Skia does not appear to use depth buffers and this appears to be identical to ClearFramebufferResourceManager::ClearFramebuffer in Chromium code. Therefore, just hook up this workaround to turn on these internal Skia workarounds. Bug: chromium: 829614 Change-Id: Icc5f2eb981e39ffef487efa16940d2e50cdbc399 Reviewed-on: https://skia-review.googlesource.com/127220 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Adrienne Walker <enne@chromium.org>
* Driver bug workaround: restore_scissor_on_fbo_changeGravatar Adrienne Walker2018-05-16
| | | | | | | | Bug: chromium: 829614 Change-Id: I333aed9a378ab9b7aafaa96bb495378d1db4a61d Reviewed-on: https://skia-review.googlesource.com/127118 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>