aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
Commit message (Collapse)AuthorAge
...
* Prevent unnecessary/unbounded growth of SkTDynamicHash capacityGravatar Florin Malita2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | SkTDynamicHash doesn't immediately recycle slots for removed entries, but instead just marks them as deleted. The only way to reclaim deleted slots currently is when an exponential grow/resize is triggered. A consequence of this is that the capacity/allocated storage can grow indefinitely when the hash is long-lived and churning -- even if the number of active entries is small/stable. To prevent this, I propose we only grow the capacity when the number of active slots constitutes a significant portion. Otherwise (when most slots are deleted), we trigger a "purge" (resize to the same capacity) to clear the tombstones. Bug: chromium:832482 Change-Id: Iefdcd7439f7d62ac021e176b71007d207c8bc876 Reviewed-on: https://skia-review.googlesource.com/122082 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* ccpr: Implement conicsGravatar Chris Dalton2018-04-18
| | | | | | | | | | TBR=egdaniel@google.com Bug: skia: Change-Id: Idf7811dc285961db52db41c9ff145afda40c274d Reviewed-on: https://skia-review.googlesource.com/122127 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Always call endFlush on opLists that might survive a flushGravatar Chris Dalton2018-04-18
| | | | | | | | | | | | We were missing a few that got unreffed due to failed proxy instantiation. Bug: skia:7655 Bug: skia:7111 Change-Id: I95847a16890f2993a1433d4d9fdaa8a4a6c2f0b6 Reviewed-on: https://skia-review.googlesource.com/122121 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Convert A8 D32 mask blitters to Sk4pxGravatar Florin Malita2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | Improves the newly added bench by ~25% (hsw): -- before -- micros bench 2298.34 shadermaskfilter_picture_80 8888 2339.60 shadermaskfilter_picture_ff 8888 2287.11 shadermaskfilter_bitmap_80 8888 2223.14 shadermaskfilter_bitmap_ff 8888 -- after -- 1693.36 shadermaskfilter_picture_80 8888 1637.45 shadermaskfilter_picture_ff 8888 1691.65 shadermaskfilter_bitmap_80 8888 1637.70 shadermaskfilter_bitmap_ff 8888 But: skia:7810 Change-Id: I7274b10f517551ee2c0646842f72e0372d55e509 Reviewed-on: https://skia-review.googlesource.com/121642 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com>
* fix path is rect flaw exposed by goldGravatar Cary Clark2018-04-18
| | | | | | | | | | | | | | | | | | | One of the path is rect bug fixes changed the behavior of zero-length strokes which showed up as a change in Gold. The bug is if a rect is defined by a series of colinear movetos, the bounds did not work out if the rect started and stopped in the middle of a side. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I226545efeda03dedd928eebc120d2508b428fef0 Reviewed-on: https://skia-review.googlesource.com/122002 Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* IWYU for some more test files starting with 'C'.Gravatar Ben Wagner2018-04-17
| | | | | | | Change-Id: I010527b342cbfa0b425ef0d00966219413d9e77d Reviewed-on: https://skia-review.googlesource.com/121886 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* No long require copy as draw for vulkan wrapped resources.Gravatar Greg Daniel2018-04-17
| | | | | | | | | | | | | | With the recent changes to GrBackendTexture and the atomic ref counted GrVkImageLayout, this should not longer be an issue for cross context images. There still is the requirement that they need to manually synchronize the submission of work involving the image on two threads, but that is a requirement regardless of layout issues. Bug: skia: Change-Id: Ia86e51fda8606838dabd1bc36cf14c7679b46d49 Reviewed-on: https://skia-review.googlesource.com/121349 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* path is rect diag test is requiredGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | Removed a test that appeared to go uncalled; Ivan to the rescue, with a test case proving that it is required. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I7df9688072bd36b7597673148e3fe5dbbf82f5a7 Reviewed-on: https://skia-review.googlesource.com/121883 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* path is rect bug number twelveGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | Exposes that final close along a diagonal need not include a close verb if the subsequent verb is move; so we have to check for a diagonal then. The later check for diagonal included a comment that it may not be needed which does appear to be the case. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I17a9414e8b3e69b82c2eda28195696eae4e3d513 Reviewed-on: https://skia-review.googlesource.com/121801 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* yet another path is rect exploitGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | This one accumulates the othershoot when all four sides have the same direction, and the final side when closed should cause the overshoot to be ignored. Docs-Preview: https://skia.org/?cl=121787 Bug: 824145,skia:7792 Change-Id: I71ea0fcdd0f03a4fcac224b57220c65c321112f6 Reviewed-on: https://skia-review.googlesource.com/121787 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* a more involved path is rect bugGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | This is bug number ten in the series, and is the most interesting. It exploits that the code tracks corners 0, 2, and 3 but not corner 1. Changing the code to track all corners is the biggest so far, and while it (hopefully) simplifies things, the presence of new code may signify more bugs to come. R=robertphillips@google.com Bug: 824145,skia::7792 Change-Id: Ia18e4d80fbed06ae6d9c89dcb4c462c5610213cc Reviewed-on: https://skia-review.googlesource.com/121487 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* Revert "ccpr: Implement conics"Gravatar Chris Dalton2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 98b241573e6083c4c7f0ce9e30cc214c4da1a8ba. Reason for revert: TSAN not happy Original change's description: > ccpr: Implement conics > > Bug: skia: > Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 > Reviewed-on: https://skia-review.googlesource.com/120040 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com Change-Id: Ic29bf660f042c20b7e4492b03400412e378dbb8a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/121717 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Implement conicsGravatar Chris Dalton2018-04-16
| | | | | | | | Bug: skia: Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 Reviewed-on: https://skia-review.googlesource.com/120040 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Remove SkPaint::kGenA8FromLCD_Flag.Gravatar Ben Wagner2018-04-16
| | | | | | | | | | | | | The original intent of this flag is now handled by SkPixelGeomety on SkSurfaceProps on SkSurface. BUG=skia:7515 Change-Id: I54bb1be072b5b5b2164a59196bfeacac254823c7 Reviewed-on: https://skia-review.googlesource.com/121346 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Don't allow ganesh to allocate mip maps for wrapped textures.Gravatar Greg Daniel2018-04-16
| | | | | | | | | | | | | | We will not allocate new mips on a wrapped texture but we will use mips if the wrapped texture already has one. If we need mips for a draw this will trigger a copy to occur. Also some cleanup up of our InternalSurfaceFlags in general. Bug: skia:7806 Change-Id: I7aa666478cc91bba6e0644b323825fcc9b49793a Reviewed-on: https://skia-review.googlesource.com/121348 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Make TestCase class in GrShapeTest heap allocate its GrShapesGravatar Brian Salomon2018-04-16
| | | | | | | | | Uses less stack space in test functions. Change-Id: I50a66cc27d95c2b4e2292184b928f7bbd71789f0 Reviewed-on: https://skia-review.googlesource.com/121482 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* rewrite iterator to make msvc happyGravatar Mike Reed2018-04-13
| | | | | | | | | | | | Revert "Revert "add test for degenerate canvas dimension"" This reverts commit 1749af20a11d0f364dbb7cad8dc89101f956c923. Bug: skia: Change-Id: I382cbef397dfba600a6779b159764239399b177f Reviewed-on: https://skia-review.googlesource.com/121344 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "add test for degenerate canvas dimension"Gravatar Mike Reed2018-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 715b919e37aa662131ca70b0056bc8192d4bcee9. Reason for revert: compile break on win Original change's description: > add test for degenerate canvas dimension > > Bug: skia: > Change-Id: Ib0532e706fbcdb126619301591ddc64910babdef > Reviewed-on: https://skia-review.googlesource.com/121341 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=liyuqian@google.com,reed@google.com Change-Id: I09dcba20d923d04ca1dc3fd0e62e8f42e4d4cdfd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/121380 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* add test for degenerate canvas dimensionGravatar Mike Reed2018-04-13
| | | | | | | | Bug: skia: Change-Id: Ib0532e706fbcdb126619301591ddc64910babdef Reviewed-on: https://skia-review.googlesource.com/121341 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Mike Reed <reed@google.com>
* path is rect bug number nineGravatar Cary Clark2018-04-13
| | | | | | | | | | | | | | | This variation exploits a sequence which uses a zero length line to note that lines have been recorded, but no rectangle edge has been encountered. R=robertphillips@google.com Docs-Preview: https://skia.org/?cl=121282 Bug: 824145,skia:7792 Change-Id: I652e9482b2867c3d7da30d5f5df2aecbfd0d716d Reviewed-on: https://skia-review.googlesource.com/121282 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* can't abort looper loop, as saveCount won't be balancedGravatar Mike Reed2018-04-12
| | | | | | | | | | | | | | This is triggered by a recent change to clear the looper from the paint we return. That change made the call to nothingToDraw() return true, which in turn meant we didn't get the balancing call to restore in the looper's next() call. Follow-up to https://skia-review.googlesource.com/c/skia/+/121062 Bug: skia: Change-Id: I3ba7d487e4193103fb1d223d34c9c6eb486eca09 Reviewed-on: https://skia-review.googlesource.com/121220 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Don't create lazy proxys if their width/height is greater than max tex sizeGravatar Greg Daniel2018-04-12
| | | | | | | | | Bug: skia: Change-Id: I53508c4e3bbd4c315be4b29a66716e0c5e7f25bf Reviewed-on: https://skia-review.googlesource.com/121161 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* son of path is rect bugGravatar Cary Clark2018-04-12
| | | | | | | | | | | | | | | | | | | This variation tricks SkPath::isRect by exploiting that the implementation resets the point pointer to process the close verb, and using the reset pointer to walk over a series of points that don't move. In addition to fixing this, rename variables to make the line creation more obvious, since left, right, and friends, are not the left and right. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: If8ebbc3eedd270652670d6e111a5bc02e61f0eec Reviewed-on: https://skia-review.googlesource.com/121122 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* workaround for buggy macOS GLSL shader compilerGravatar Ethan Nicholas2018-04-12
| | | | | | | | Bug: skia: Change-Id: Ib77e11d80f93f76e65eac6119dbf2bd03523aaf9 Reviewed-on: https://skia-review.googlesource.com/117626 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* another rect is path fixGravatar Cary Clark2018-04-12
| | | | | | | | | | | | | | | | | | | | | | | | This addresses comment #17 of skbug.com/7792. The bug overshoots the end and exploits that the first point tracked by close isn't the first point in the rectangle. Fixing this slightly regresses the example in comment #14; before it was treated as a filled rect but now it is not; this conservative approach doesn't cause any other regressions. bug7792 in pathfill.cpp verifies that all paths in the bug draw correctly by comparing CPU and GPU. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I55bea023d2ad7456c8c3ebd9d1df95fe34e0a0d4 Reviewed-on: https://skia-review.googlesource.com/120996 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add SK_SUPPORT_LEGACY_BACKEND_OBJECTSGravatar Robert Phillips2018-04-12
| | | | | | | | | This relies on the Chrome CL: https://chromium-review.googlesource.com/c/chromium/src/+/999796 (Add SK_SUPPORT_LEGACY_BACKEND_OBJECTS to SkUserConfig.h) landing first. Change-Id: Ie0a2b7b84cc02e46957765a0a7d6444a5320769d Reviewed-on: https://skia-review.googlesource.com/119140 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Implement Sk2f Load2Gravatar Chris Dalton2018-04-12
| | | | | | | | Bug: skia: Change-Id: I7d37a76bcb9df9c5a1c22eb1b0277387816df7bb Reviewed-on: https://skia-review.googlesource.com/120602 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Implement Sk4f min/maxGravatar Chris Dalton2018-04-12
| | | | | | | | Bug: skia: Change-Id: Icf235dea81e9f125c1c8590ec87cb3591393036c Reviewed-on: https://skia-review.googlesource.com/120281 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Reland "Fix handling of MaskFilter matrices"Gravatar Florin Malita2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c64ee20e135a336ed775ccb6dec8a87efd19ec02. Reason for revert: initial failures should be fixed in https://skia.googlesource.com/skia.git/+/8eaf64ae12696d4189d3cea9f023658494cf82b8 Original change's description: > Revert "Fix handling of MaskFilter matrices" > > This reverts commit 2097fd03ffea48bd904c48c93348b2350600870e. > > Reason for revert: This is breaking a lot of Windows bots (esp. on the shadermaskfilter_localmatrix) > > Original change's description: > > Fix handling of MaskFilter matrices > > > > 1) extend GrFPArgs to track pre/post local matrices, add helpers for > > creating pre/post wrapper args > > > > 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM > > sandwich logic. > > > > 3) update call sites to use the above > > > > 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to > > disambiguate vs. SkShader::makeWithLocalMatrix. > > > > BUG=skia:7744 > > > > Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 > > Reviewed-on: https://skia-review.googlesource.com/119330 > > Commit-Queue: Florin Malita <fmalita@chromium.org> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com > > Change-Id: I918dbb95bf00b3122e6699b84566ec82dbb5fc5c > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7744 > Reviewed-on: https://skia-review.googlesource.com/120340 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com Change-Id: If194862a928d1abe22ed8fa968436c725d19a8fc No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7744 Reviewed-on: https://skia-review.googlesource.com/120480 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* remove unused/dumb methods from SkRectGravatar Mike Reed2018-04-11
| | | | | | | | Bug: skia: Change-Id: I407dc94256a347c7a9343b75a5af43c4294891d3 Reviewed-on: https://skia-review.googlesource.com/119360 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* more path is rect bugsGravatar Cary Clark2018-04-11
| | | | | | | | | | | | | More edge cases found; clean up the logic a bit to make more clear where the rectangle points start and stop. R=robertphillips@google.com,brianosman@google.com Bug: 824145,skia:7792 Change-Id: Ie24dfd1519f30875f44ffac68e20d777490b00b9 Reviewed-on: https://skia-review.googlesource.com/120422 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Fix SkTCopyOnFirstWrite copy semanticsGravatar Florin Malita2018-04-11
| | | | | | | | | | | | | | | The implicit SkTCopyOnFirstWrite copy-ctor and assignment operator are incorrect: fObj must point to the local copy, not to the source copy (when a copy has been made). Add corrected explicit copy (and move) ctor + assignment operator. Also add a get() helper to facilitate rawptr access. Change-Id: Ie3983e12c04eae4f32c40e3e267618cf02008c20 Reviewed-on: https://skia-review.googlesource.com/120442 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Revert "Fix handling of MaskFilter matrices"Gravatar Robert Phillips2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2097fd03ffea48bd904c48c93348b2350600870e. Reason for revert: This is breaking a lot of Windows bots (esp. on the shadermaskfilter_localmatrix) Original change's description: > Fix handling of MaskFilter matrices > > 1) extend GrFPArgs to track pre/post local matrices, add helpers for > creating pre/post wrapper args > > 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM > sandwich logic. > > 3) update call sites to use the above > > 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to > disambiguate vs. SkShader::makeWithLocalMatrix. > > BUG=skia:7744 > > Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 > Reviewed-on: https://skia-review.googlesource.com/119330 > Commit-Queue: Florin Malita <fmalita@chromium.org> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reed@google.com Change-Id: I918dbb95bf00b3122e6699b84566ec82dbb5fc5c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7744 Reviewed-on: https://skia-review.googlesource.com/120340 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Fix handling of MaskFilter matricesGravatar Florin Malita2018-04-11
| | | | | | | | | | | | | | | | | | | | 1) extend GrFPArgs to track pre/post local matrices, add helpers for creating pre/post wrapper args 2) add a SkShaderBase helper (totalLocalMatrix) to centralize the LM sandwich logic. 3) update call sites to use the above 4) rename SkMatrixFilter::makeWithLocalMatrix -> makeWithMatrix, to disambiguate vs. SkShader::makeWithLocalMatrix. BUG=skia:7744 Change-Id: Ib2b7b007e6924979b00649dde7c94ef4b34771f1 Reviewed-on: https://skia-review.googlesource.com/119330 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add initial support for simple concave shadows.Gravatar Jim Van Verth2018-04-10
| | | | | | | | | | | Adds support for spot shadow outlines. Since filling the penumbra still needs to be done, this code is disabled for now. Bug: skia: Change-Id: I3369eb13832b47ad16dd29ce7c7d6a1a10b39aeb Reviewed-on: https://skia-review.googlesource.com/22363 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove extra Vulkan submitCommandBuffer from deleteTestingOnlyBackendTextureGravatar Robert Phillips2018-04-10
| | | | | | | Change-Id: I6e2fd012d1c2af72a34be2d1971e210d7373fe21 Reviewed-on: https://skia-review.googlesource.com/120080 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Update getBackendInfo calls on GrBackendTexture to support VkImageLayout better.Gravatar Greg Daniel2018-04-10
| | | | | | | | | | | | | | | The big api level change here is that the getBackendInfo calls now return by value instead of a pointer. These changes are being made in support of Vulkan so that the client can update the VkImageLayout on the GrBackendTexture and have that update get reflected in our internal tracking of the image. This is done by storing a ref counted GrVkImageLayout object on the GrBackendTexture and the GrVkImage. Bug: skia: Change-Id: I8c6158fd3a66eb61fef97ebf09ea5364bca3f1ae Reviewed-on: https://skia-review.googlesource.com/119101 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* one more path is rect bugGravatar Cary Clark2018-04-10
| | | | | | | | | | | | | | | | Add a check to see that the close path generated line is horizontal or vertical when determining that path is a rect. Also change several tests to defer their initialization to reduce debugging interference. R=brianosman@google.com,robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I4a081ee4ffd3558b499a7a1aede2d6232059715e Reviewed-on: https://skia-review.googlesource.com/120081 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* fix path to rect when missing close verbGravatar Cary Clark2018-04-10
| | | | | | | | | | | R=brianosman@google.com,robertphillips@google.com TBR=reed@google.com Bug: 824145,skia:7792 Change-Id: I24f121cfa7d437c95b94bd917d3c4888a10c519e Reviewed-on: https://skia-review.googlesource.com/119569 Commit-Queue: Cary Clark <caryclark@skia.org> Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Implement Sk2f::Store2Gravatar Chris Dalton2018-04-09
| | | | | | | | Bug: skia: Change-Id: Ifea5957458e5547ee428809d9599286e70f3f8f9 Reviewed-on: https://skia-review.googlesource.com/119860 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* SkPDF: smarter Jpeg when libjpeg-turbo is presentGravatar Hal Canary2018-04-07
| | | | | | | | | | | | The fallback code does not parse the color type for EXIF-only jpegs. Since these exist in the wild, we need to find out if they are really standard YUV or greyscale Jpegs and embed them in PDFs if they are. BUG=chromium:801430 Change-Id: I93eaf8b8fc22b7169b2fce9520e022b72ad0bf81 Reviewed-on: https://skia-review.googlesource.com/118992 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Make generated effects from sksl fp files not need SK_SUPPORT_GPUGravatar Greg Daniel2018-04-06
| | | | | | | | Bug: skia: Change-Id: I42a5c7fe7dc35a23290c8daa754c9fcce07f76fb Reviewed-on: https://skia-review.googlesource.com/119010 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove SK_SUPPORT_LEGACY_BLURMASKFILTERGravatar Brian Osman2018-04-06
| | | | | | | Change-Id: I1d99d9bb83d8a612d1c1fd298c1f7ed706a2277b Reviewed-on: https://skia-review.googlesource.com/118990 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* remove SK_IGNORE_TO_STRINGGravatar Cary Clark2018-04-05
| | | | | | | | | | | | | | | | | | | SK_IGNORE_TO_STRING is not defined anywhere. The same effect can be had by using a modern linker. Removing it simplifies bookmaker and makes our includes easier to understand. R=robertphillips@google.com TBR=reed@google.com Bug: skia:6898 Change-Id: Ib716f5ef1b42a7fbda0df43ece212d1b7c40289f Reviewed-on: https://skia-review.googlesource.com/118963 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org>
* Add GrBackendTexture/RenderTarget accessors to SkSurfaceGravatar Robert Phillips2018-04-05
| | | | | | | | | Change-Id: I63477fd4b8d48dc50af72736f0f8df566cd96d4a Reviewed-on: https://skia-review.googlesource.com/85220 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add GrBackendTexture accessor to SkImage (take 2)Gravatar Robert Phillips2018-04-04
| | | | | | | | | | | This makes accessing the GPU resource behind an SkImage a lot more typesafe. Additionally, the GrBackendObject is being deprecated so this is the path forward. I split the controversial stuff off into https://skia-review.googlesource.com/c/skia/+/118575 (Add SkImage::setLayout call). Change-Id: I297e72770e8fb360fac7c7cd74f050ae759ae133 Reviewed-on: https://skia-review.googlesource.com/118571 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add SkSurfaceCharacterization operator== && !=Gravatar Robert Phillips2018-04-04
| | | | | | | | | TBR=bsalomon@google.com Change-Id: Ic58849dcb3be1f00431f897af328f6f3c3f00d75 Reviewed-on: https://skia-review.googlesource.com/118340 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Hide GrPixelConfig in SkSurfaceCharacterizationGravatar Robert Phillips2018-04-04
| | | | | | | | TBR=bsalomon@google.com Change-Id: Ifc38d0ca2b18128d27c187f789461fea62d1edae Reviewed-on: https://skia-review.googlesource.com/117440 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Add API for SkTextBlob serialization into caller's memory.Gravatar Khushal2018-04-04
| | | | | | | | | | R=reed@google.com Change-Id: Iaeb67504aabf0dc036e81fa23c1a3c949b72b2b9 Reviewed-on: https://skia-review.googlesource.com/114262 Commit-Queue: Khusal Sagar <khushalsagar@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Mike Reed <reed@google.com>
* GrTessellator: fix for points that become infinite on stroking.Gravatar Stephen White2018-04-03
| | | | | | | | | | | stroke -> Inf -> NaN -> assert. BUG=skia:7775 Change-Id: I086883bce90d1d473cff87f67e954718ea3181f6 Reviewed-on: https://skia-review.googlesource.com/118145 Commit-Queue: Stephen White <senorblanco@chromium.org> Reviewed-by: Robert Phillips <robertphillips@google.com>