aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/image/SkSurface_Base.h
Commit message (Collapse)AuthorAge
* 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>
* Revert "Remove GrBackendObject and all related functions from Skia."Gravatar Brian Osman2018-05-10
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ccd4cfc23ebbbecbc6b292359352aad335ad7b73. Reason for revert: Fuchsia not building again. (Flutter roll may have been reverted?) 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> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Ie2c518b84b0c9513c0c622082de2831088b1ad8d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/127480 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove GrBackendObject and all related functions from Skia.Gravatar Greg Daniel2018-05-10
| | | | | | | | 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>
* Revert "Delete getRenderTargetHandle call on SkSurface."Gravatar Greg Daniel2018-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c828109ebd1519134b1c3fa168519ac07a31fe05. Reason for revert: Need to fix flutter Original change's description: > Delete getRenderTargetHandle call on SkSurface. > > All clients and internal code should be switched (once changes land soon) > to the new getBackendRenderTarget call instead. > > Bug: skia: > Change-Id: I6f490b6d26a72f37f97216be04e541483206510d > Reviewed-on: https://skia-review.googlesource.com/121103 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I571298f839757fcdedcd8117519e740ac7ef1344 Reviewed-on: https://skia-review.googlesource.com/121480 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Delete getRenderTargetHandle call on SkSurface.Gravatar Greg Daniel2018-04-12
| | | | | | | | | | | All clients and internal code should be switched (once changes land soon) to the new getBackendRenderTarget call instead. Bug: skia: Change-Id: I6f490b6d26a72f37f97216be04e541483206510d Reviewed-on: https://skia-review.googlesource.com/121103 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@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>
* 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 writePixels to SkSurface --> so we can remove it from canvasGravatar Mike Reed2018-02-08
| | | | | | | | Bug: skia: Change-Id: Ib35d7bdc113c3fd9f6dfacb42ec61aaa448cb165 Reviewed-on: https://skia-review.googlesource.com/105623 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add SkSurface_Gpu::MakeWrappedRenderTarget methodGravatar Robert Phillips2018-01-31
| | | | | | | | | This is pulled out of https://skia-review.googlesource.com/c/skia/+/101480 (Implement GPU/OpList DDLs) Change-Id: I12b1ac346c7c1fa10f2120bc92bee63c93fc2249 Reviewed-on: https://skia-review.googlesource.com/102101 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add unit test for SkDeferredDisplayLists (take 2)Gravatar Robert Phillips2017-12-04
| | | | | | | Change-Id: I76a4c77d5b9418cb7fe677bd55ba32a2e336924d Reviewed-on: https://skia-review.googlesource.com/79820 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Add unit test for SkDeferredDisplayLists"Gravatar Robert Phillips2017-12-04
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8458a2807b4a7220c9849f8032dc611438818641. Reason for revert: ?? Original change's description: > Add unit test for SkDeferredDisplayLists > > Change-Id: I015094145cb0af6cfe368c570a5d5280c11c8f28 > Reviewed-on: https://skia-review.googlesource.com/78660 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Iec3abb18d3ed41fcfbec72bc2de14603f659f8ce No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/79720 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add unit test for SkDeferredDisplayListsGravatar Robert Phillips2017-12-04
| | | | | | | Change-Id: I015094145cb0af6cfe368c570a5d5280c11c8f28 Reviewed-on: https://skia-review.googlesource.com/78660 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* DeferredDisplayList API proposalGravatar Robert Phillips2017-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Chrome would like to perform cpu-side preprocessing for gpu draws in parallel. They do not want to go through a picture (since they have their own display list format). The general idea is that we add a new SkDeferredDisplayListRecorder class to perform all of Ganesh's cpu-side preprocessing ahead of time and in parallel. The SkDDLRecorder operates like SkPictureRecorder. The user can get an SkCanvas from the SkDDLRecorder and feed it draw operations. Once finished, the user calls 'detach' to get an SkDeferredDisplayList. All the work up to and including the 'detach' call can be done in parallel and will not touch the GPU. To actually get pixels the client must call SkSurface::draw(SkDDL) on an SkSurface that is "compatible" with the surface characterization initially given to the SkDDLMaker. The surface characterization contains the minimum amount of information Ganesh needs to know about the ultimate destination in order to perform its cpu-side work (i.e., caps, width, height, config). Change-Id: I75faa483ab5a6b779c8de56ea56b9d90b990f43a Reviewed-on: https://skia-review.googlesource.com/30140 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Revert "Revert "Add support for semaphores to be inserted on ↵Gravatar Greg Daniel2017-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrContext flush"""" This reverts commit cc8eb60c486eaf397685c60b28998682025fee1a. Reason for revert: Chrome change landed that should fix chrome roll Original change's description: > Revert "Revert "Revert "Add support for semaphores to be inserted on GrContext flush""" > > This reverts commit 876aed8758b7109574999ffac43b1ea47f359bd7. > > Reason for revert: the bots seem to be unhappily red with this CL > > Original change's description: > > Revert "Revert "Add support for semaphores to be inserted on GrContext flush"" > > > > This reverts commit 8724b4609996eb6369b454611e31b065f3d8d2cf. > > > > Reason for revert: Creating a test CL to see what happens on the bots > > > > Original change's description: > > > Revert "Add support for semaphores to be inserted on GrContext flush" > > > > > > This reverts commit cd1416efbc7af6f115dbaa09dce48e075d1d96ca. > > > > > > Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths > > > > > > Original change's description: > > > > Add support for semaphores to be inserted on GrContext flush > > > > > > > > This also moves the logic of inserting semaphores down into GrDrawingManager > > > > and finishFlush on GrGpu. With it being on finishFlush, there should be no > > > > issues when the DrawingManager starts respecting the proxy passed in assuming > > > > it always calls finishFlush at the end (which it should). > > > > > > > > Bug: skia: > > > > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7 > > > > Reviewed-on: https://skia-review.googlesource.com/25641 > > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com > > > > > > Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia: > > > Reviewed-on: https://skia-review.googlesource.com/25980 > > > Reviewed-by: Mike Reed <reed@google.com> > > > Commit-Queue: Mike Reed <reed@google.com> > > > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > Bug: skia: > > Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c > > Reviewed-on: https://skia-review.googlesource.com/26160 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com > > Change-Id: I22fd6febafe70489a5fdb695c6f4263368eb423d > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/29422 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,liyuqian@google.com,reed@google.com Change-Id: Ie3eae818b02599a70f714ef6b6635ce7d171bde6 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/30000 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Revert "Revert "Revert "Add support for semaphores to be inserted on ↵Gravatar Yuqian Li2017-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrContext flush""" This reverts commit 876aed8758b7109574999ffac43b1ea47f359bd7. Reason for revert: the bots seem to be unhappily red with this CL Original change's description: > Revert "Revert "Add support for semaphores to be inserted on GrContext flush"" > > This reverts commit 8724b4609996eb6369b454611e31b065f3d8d2cf. > > Reason for revert: Creating a test CL to see what happens on the bots > > Original change's description: > > Revert "Add support for semaphores to be inserted on GrContext flush" > > > > This reverts commit cd1416efbc7af6f115dbaa09dce48e075d1d96ca. > > > > Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths > > > > Original change's description: > > > Add support for semaphores to be inserted on GrContext flush > > > > > > This also moves the logic of inserting semaphores down into GrDrawingManager > > > and finishFlush on GrGpu. With it being on finishFlush, there should be no > > > issues when the DrawingManager starts respecting the proxy passed in assuming > > > it always calls finishFlush at the end (which it should). > > > > > > Bug: skia: > > > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7 > > > Reviewed-on: https://skia-review.googlesource.com/25641 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com > > > > Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249 > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: skia: > > Reviewed-on: https://skia-review.googlesource.com/25980 > > Reviewed-by: Mike Reed <reed@google.com> > > Commit-Queue: Mike Reed <reed@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia: > Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c > Reviewed-on: https://skia-review.googlesource.com/26160 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com Change-Id: I22fd6febafe70489a5fdb695c6f4263368eb423d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/29422 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Revert "Revert "Add support for semaphores to be inserted on GrContext flush""Gravatar Greg Daniel2017-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8724b4609996eb6369b454611e31b065f3d8d2cf. Reason for revert: Creating a test CL to see what happens on the bots Original change's description: > Revert "Add support for semaphores to be inserted on GrContext flush" > > This reverts commit cd1416efbc7af6f115dbaa09dce48e075d1d96ca. > > Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths > > Original change's description: > > Add support for semaphores to be inserted on GrContext flush > > > > This also moves the logic of inserting semaphores down into GrDrawingManager > > and finishFlush on GrGpu. With it being on finishFlush, there should be no > > issues when the DrawingManager starts respecting the proxy passed in assuming > > it always calls finishFlush at the end (which it should). > > > > Bug: skia: > > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7 > > Reviewed-on: https://skia-review.googlesource.com/25641 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com > > Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/25980 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c Reviewed-on: https://skia-review.googlesource.com/26160 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Revert "Add support for semaphores to be inserted on GrContext flush"Gravatar Mike Reed2017-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit cd1416efbc7af6f115dbaa09dce48e075d1d96ca. Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths Original change's description: > Add support for semaphores to be inserted on GrContext flush > > This also moves the logic of inserting semaphores down into GrDrawingManager > and finishFlush on GrGpu. With it being on finishFlush, there should be no > issues when the DrawingManager starts respecting the proxy passed in assuming > it always calls finishFlush at the end (which it should). > > Bug: skia: > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7 > Reviewed-on: https://skia-review.googlesource.com/25641 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/25980 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add support for semaphores to be inserted on GrContext flushGravatar Greg Daniel2017-07-22
| | | | | | | | | | | | | This also moves the logic of inserting semaphores down into GrDrawingManager and finishFlush on GrGpu. With it being on finishFlush, there should be no issues when the DrawingManager starts respecting the proxy passed in assuming it always calls finishFlush at the end (which it should). Bug: skia: Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7 Reviewed-on: https://skia-review.googlesource.com/25641 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add return to surface semaphore calls to indicate when we don't support themGravatar Greg Daniel2017-06-19
| | | | | | | | Bug: skia: Change-Id: I00118637bf6555278ca61707275ed60372de581d Reviewed-on: https://skia-review.googlesource.com/20061 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Revert "Revert "Add API for flushing surfaces with gpu semaphores""Gravatar Greg Daniel2017-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7292231905c34ed290ba479338f26b56ae2a7792. This change relands the original plus the follow on change: https://skia-review.googlesource.com/20059. Additionally it adds a blacklist for the mac intel bots which don't see to respect the added fences on the GPU. Original change's description: > Revert "Add API for flushing surfaces with gpu semaphores" > > This reverts commit 66366c697853e906d961ae691e2bc5209cdcfa62. > > Reason for revert: Failing test on mac bots > > Original change's description: > > Add API for flushing surfaces with gpu semaphores > > > > BUG=skia: > > > > Change-Id: Ia4bfef784cd5f2516ceccafce958be18a86f91d1 > > Reviewed-on: https://skia-review.googlesource.com/11488 > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Reviewed-by: Forrest Reiling <freiling@google.com> > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com,brianosman@google.com,freiling@google.com > > Change-Id: I75633a2732d2d48b1926f9ad818a9f1a9196d211 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/20063 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com,brianosman@google.com,freiling@google.com Change-Id: I4dc6c0e1deb0398eeb165a34f0a26af7a58259f1 Reviewed-on: https://skia-review.googlesource.com/20141 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Revert "Add API for flushing surfaces with gpu semaphores"Gravatar Greg Daniel2017-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 66366c697853e906d961ae691e2bc5209cdcfa62. Reason for revert: Failing test on mac bots Original change's description: > Add API for flushing surfaces with gpu semaphores > > BUG=skia: > > Change-Id: Ia4bfef784cd5f2516ceccafce958be18a86f91d1 > Reviewed-on: https://skia-review.googlesource.com/11488 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > Reviewed-by: Forrest Reiling <freiling@google.com> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com,brianosman@google.com,freiling@google.com Change-Id: I75633a2732d2d48b1926f9ad818a9f1a9196d211 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/20063 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Add API for flushing surfaces with gpu semaphoresGravatar Greg Daniel2017-06-15
| | | | | | | | | | BUG=skia: Change-Id: Ia4bfef784cd5f2516ceccafce958be18a86f91d1 Reviewed-on: https://skia-review.googlesource.com/11488 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Forrest Reiling <freiling@google.com>
* Revert "Revert "Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag""Gravatar Robert Phillips2017-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fde9bff19c2a2d84041983e20e443cca2f95ebb6. Reason for revert: RenderNodeDrawableTests.cpp fix has landed in Android Original change's description: > Revert "Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag" > > This reverts commit c3efe6785666cdd13848e63f36fdadca26c48649. > > Reason for revert: RenderNodeDrawableTests.cpp > > Original change's description: > > Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag > > > > Android has been updated to use the new signature so this should no longer be needed > > > > Change-Id: Id745191e815381d032aba6a49bf4baf9c53b2385 > > Reviewed-on: https://skia-review.googlesource.com/9985 > > Reviewed-by: Derek Sollenberger <djsollen@google.com> > > Commit-Queue: Robert Phillips <robertphillips@google.com> > > > > TBR=djsollen@google.com,robertphillips@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: I0211342b237373fe40d205bb18bbef5efce56bf3 > Reviewed-on: https://skia-review.googlesource.com/9946 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=djsollen@google.com,robertphillips@google.com,reviews@skia.org # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ia517aafc7c9c589d18c0e94699cad3f5acc0e941 Reviewed-on: https://skia-review.googlesource.com/10103 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag"Gravatar Robert Phillips2017-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c3efe6785666cdd13848e63f36fdadca26c48649. Reason for revert: RenderNodeDrawableTests.cpp Original change's description: > Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag > > Android has been updated to use the new signature so this should no longer be needed > > Change-Id: Id745191e815381d032aba6a49bf4baf9c53b2385 > Reviewed-on: https://skia-review.googlesource.com/9985 > Reviewed-by: Derek Sollenberger <djsollen@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=djsollen@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I0211342b237373fe40d205bb18bbef5efce56bf3 Reviewed-on: https://skia-review.googlesource.com/9946 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flagGravatar Robert Phillips2017-03-22
| | | | | | | | | Android has been updated to use the new signature so this should no longer be needed Change-Id: Id745191e815381d032aba6a49bf4baf9c53b2385 Reviewed-on: https://skia-review.googlesource.com/9985 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove budgeted parameter from SkSurface::makeImageSnapshot (take 2)Gravatar Robert Phillips2017-03-20
| | | | | | | | | | | | | This unused feature complicates MDB. Chrome compiles locally for me with this CL. frameworks/base/libs/hwui compiles locally for me with this CL. Change-Id: Id3ad64dac72eace52855896df0d7ce3679f15884 Reviewed-on: https://skia-review.googlesource.com/9882 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Revert "Remove budgeted parameter from ↵Gravatar Yuqian Li2017-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkSurface::makeImageSnapshot""" This reverts commit 31249bb2df023868e4585f14519bf17c835f8700. Reason for revert: Android build is still broken as shown below. out/target/product/bullhead/obj/NATIVE_TESTS/hwui_unit_tests_intermediates/tests/unit/SkiaPipelineTests.o frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp" frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:211:51: error: non-virtual member function marked 'override' hides virtual member function sk_sp<SkImage> onNewImageSnapshot(SkBudgeted) override { ^ external/skia/src/image/SkSurface_Base.h:46:28: note: hidden overloaded virtual function 'SkSurface_Base::onNewImageSnapshot' declared here: different number of parameters (0 vs 1) virtual sk_sp<SkImage> onNewImageSnapshot() = 0; ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:281:84: error: no viable conversion from 'sk_sp<DeferLayer<DeferTestCanvas>>' to 'sk_sp<SkSurface>' pipeline->renderFrame(layerUpdateQueue, dirty, nodes, true, contentDrawBounds, surface); ^~~~~~~ external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {} ^ external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {} ^ external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {} ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>] template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type; ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>] external/skia/include/core/SkRefCnt.h:327:5: note: candidate function operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; } ^ frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here sk_sp<SkSurface> surface); ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:312:58: error: no viable conversion from 'sk_sp<DeferLayer<ClippedTestCanvas>>' to 'sk_sp<SkSurface>' SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface); ^~~~~~~ external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {} ^ external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {} ^ external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {} ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>] template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type; ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>] external/skia/include/core/SkRefCnt.h:327:5: note: candidate function operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; } ^ frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here sk_sp<SkSurface> surface); ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:343:58: error: no viable conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas>>' to 'sk_sp<SkSurface>' SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface); ^~~~~~~ external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {} ^ external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {} ^ external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {} ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>] template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type; ^ external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>] external/skia/include/core/SkRefCnt.h:327:5: note: candidate function operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; } ^ frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here sk_sp<SkSurface> surface); ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<DeferTestCanvas>' T* canvas() { return static_cast<T*>(getCanvas()); } ^~~~~~~~~ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:282:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<DeferTestCanvas>::canvas' requested here EXPECT_EQ(4, surface->canvas()->mDrawCounter); ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClippedTestCanvas>' T* canvas() { return static_cast<T*>(getCanvas()); } ^~~~~~~~~ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:313:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClippedTestCanvas>::canvas' requested here EXPECT_EQ(1, surface->canvas()->mDrawCounter); ^ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>' T* canvas() { return static_cast<T*>(getCanvas()); } ^~~~~~~~~ frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:344:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>::canvas' requested here EXPECT_EQ(1, surface->canvas()->mDrawCounter); Original change's description: > Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"" > > This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173. > > Reason for revert: Android-side fix has landed > > Original change's description: > > Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot" > > > > This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5. > > > > Reason for revert: > > > > Android build failed as shown below. > > > > frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1 > > mImage = surface->makeImageSnapshot(SkBudgeted::kNo); > > > > Original change's description: > > > Remove budgeted parameter from SkSurface::makeImageSnapshot > > > > > > This unused feature complicates MDB. > > > > > > Chrome compiles locally for me with this CL. > > > > > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 > > > Reviewed-on: https://skia-review.googlesource.com/9734 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Robert Phillips <robertphillips@google.com> > > > > > > > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e > > Reviewed-on: https://skia-review.googlesource.com/9788 > > Reviewed-by: Yuqian Li <liyuqian@google.com> > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com > # Not skipping CQ checks because original CL landed > 1 day ago. > > Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92 > Reviewed-on: https://skia-review.googlesource.com/9843 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I674b0a9d4130e00164d2e0344a92c373cf70f4fd Reviewed-on: https://skia-review.googlesource.com/9873 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""Gravatar Robert Phillips2017-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173. Reason for revert: Android-side fix has landed Original change's description: > Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot" > > This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5. > > Reason for revert: > > Android build failed as shown below. > > frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1 > mImage = surface->makeImageSnapshot(SkBudgeted::kNo); > > Original change's description: > > Remove budgeted parameter from SkSurface::makeImageSnapshot > > > > This unused feature complicates MDB. > > > > Chrome compiles locally for me with this CL. > > > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 > > Reviewed-on: https://skia-review.googlesource.com/9734 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Robert Phillips <robertphillips@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e > Reviewed-on: https://skia-review.googlesource.com/9788 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92 Reviewed-on: https://skia-review.googlesource.com/9843 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"Gravatar Yuqian Li2017-03-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5. Reason for revert: Android build failed as shown below. frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1 mImage = surface->makeImageSnapshot(SkBudgeted::kNo); Original change's description: > Remove budgeted parameter from SkSurface::makeImageSnapshot > > This unused feature complicates MDB. > > Chrome compiles locally for me with this CL. > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 > Reviewed-on: https://skia-review.googlesource.com/9734 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e Reviewed-on: https://skia-review.googlesource.com/9788 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Remove budgeted parameter from SkSurface::makeImageSnapshotGravatar Robert Phillips2017-03-16
| | | | | | | | | | | This unused feature complicates MDB. Chrome compiles locally for me with this CL. Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 Reviewed-on: https://skia-review.googlesource.com/9734 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Update SkSurface's cached image ownership handling to sk_spGravatar Robert Phillips2017-02-01
| | | | | | | Change-Id: I9dca3d355bfe39211cb5054a5834d9c1750d8152 Reviewed-on: https://skia-review.googlesource.com/7780 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* remove unused parameter in onNewimageSnapshotGravatar Mike Reed2016-12-30
| | | | | | | | | BUG=skia: Change-Id: I59b4cbace841489698fb22828c35b82a738d06b3 Reviewed-on: https://skia-review.googlesource.com/6494 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused ForceUnique option from makeImageSnapshotGravatar Mike Reed2016-12-29
| | | | | | | | | BUG=skia: Change-Id: I2555ceb86b597f7bb34c8fc48b3e07eb7115ea82 Reviewed-on: https://skia-review.googlesource.com/6481 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Delete unnecessary SkSurface_Base APIGravatar Matt Sarett2016-11-29
| | | | | | | | | BUG=skia: Change-Id: I1263d390ffc1660a561b03c9dd866390754e59af Reviewed-on: https://skia-review.googlesource.com/5231 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Add SkOverdrawCanvas to detect overdrawGravatar Matt Sarett2016-11-22
| | | | | | | | | | | | | | | This is the first part of a multi-part change to detect and display gpu overdraw on Android. BUG:32370375 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4907 Change-Id: Ibba9d7343f2fd57397fa1168a5a5b1ef6ef91287 Reviewed-on: https://skia-review.googlesource.com/4907 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert[2] "Change SkCanvas to *not* inherit from SkRefCnt"Gravatar Mike Reed2016-11-13
| | | | | | | | | | | | | | | | | Changes over original: - conditionalize ownership in SkPictureRecorder - conditionalize ownership in SkCanvasStateUtils This reverts commit b613c266df48cf45296ecc23d1bd7098c84bb7ba. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4742 Change-Id: Ib25514d6f546c69b6650b5c957403b04f7380dc2 Reviewed-on: https://skia-review.googlesource.com/4742 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Change SkCanvas to *not* inherit from SkRefCnt"Gravatar Heather Miller2016-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 824075071885b6b741c141cbe2134d8345d34589. Reason for revert: Breaking WebView (chromium:663959) Original change's description: > Change SkCanvas to *not* inherit from SkRefCnt > > Definitely tricky for classes like SkNWayCanvas, where the caller (today) > need not pay attention to ownership of the canvases it gave the NWay > (after this CL, the caller *must* managed ownership) > > BUG=skia: > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4441 > > DOCS_PREVIEW= https://skia.org/?cl=4441 > > Change-Id: Ib1ac07a3cdf0686d78e7aaa4735d45cc90bea081 > Reviewed-on: https://skia-review.googlesource.com/4441 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> > Reviewed-by: Robert Phillips <robertphillips@google.com> > TBR=djsollen@google.com,mtklein@google.com,halcanary@google.com,robertphillips@google.com,fmalita@chromium.org,fmalita@google.com,reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I5e3b3e876b7d2c09833cf841801321033b6b968b Reviewed-on: https://skia-review.googlesource.com/4687 Commit-Queue: Heather Miller <hcm@google.com> Reviewed-by: Heather Miller <hcm@google.com>
* Change SkCanvas to *not* inherit from SkRefCntGravatar Mike Reed2016-11-09
| | | | | | | | | | | | | | | | | | Definitely tricky for classes like SkNWayCanvas, where the caller (today) need not pay attention to ownership of the canvases it gave the NWay (after this CL, the caller *must* managed ownership) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4441 DOCS_PREVIEW= https://skia.org/?cl=4441 Change-Id: Ib1ac07a3cdf0686d78e7aaa4735d45cc90bea081 Reviewed-on: https://skia-review.googlesource.com/4441 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* rename FoceCopyMode to SkCopyPixelModeGravatar reed2016-08-05
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2220603002 Review-Url: https://codereview.chromium.org/2220603002
* switch surface to sk_spGravatar reed2016-03-23
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1817383002 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1817383002
* update callsites for Make image factoriesGravatar reed2016-03-17
| | | | | | | | | | | not forced yet, as we still have the build-guard. waiting on chrome CL BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1810813003 TBR= Review URL: https://codereview.chromium.org/1810813003
* Move Budgeted enum out of SkSurface, use in GrTextureProviderGravatar bsalomon2016-02-25
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005 DOCS_PREVIEW= https://skia.org/?cl=1728093005 Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1728093005
* Revert of Move Budgeted enum out of SkSurface, use in GrTextureProvider ↵Gravatar bsalomon2016-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | (patchset #6 id:100001 of https://codereview.chromium.org/1728093005/ ) Reason for revert: Need workaround for chrome to build Original issue's description: > Move Budgeted enum out of SkSurface, use in GrTextureProvider > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005 > DOCS_PREVIEW= https://skia.org/?cl=1728093005 > > Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c TBR=reed@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/1734043002
* Move Budgeted enum out of SkSurface, use in GrTextureProviderGravatar bsalomon2016-02-25
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005 DOCS_PREVIEW= https://skia.org/?cl=1728093005 Review URL: https://codereview.chromium.org/1728093005
* Add wrapBackendTextureAsRenderTarget APIGravatar ericrk2016-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skia's GrTextureProvider currently exposes two APIs for wrapping backend objects: * wrapBackendTexture - wraps a texture into a GrTexture. Depending on flags, this GrTexture can be converted to a GrRenderTarget. Skia manages the render target objects it may create to provide a render target for the texture. This allows Skia to create stencil buffers if needed and manager MSAA resolves. * wrapBackendRenderTarget - wraps a FBO into a GrRenderTarget. This object cannot be converted to a GrTexture. Skia does not manage the render target objects for such a GrRenderTarget, and as such cannot attach stencil buffers or perform MSAA resolves on the created GrRenderTarget. Given these two options, wrapBackendTexture provides more versatility and allows Skia more room for optimization. Chrome currently uses wrapBackendTexture for this reason. While these two functions cover most cases, they do not provide a way for Skia to wrap a texture into a render target (and gain the MSAA and stencil buffer management), without also creating a GrTexture. This is problematic in cases where a texture can be bound to a render target, but cannot be textured from, as is the case in Chrome's limited support for GL_TEXTURE_RECTANGLE. To address this, a new function is created: * wrapBackendTextureAsRenderTarget - wraps a texture into a GrRenderTarget. As with wrapBackendTexture, the created render target objects are fully managed by Skia. Unlike wrapBackendTexture no GrTexture is created, and the created object will never be textured from. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1709163003 Review URL: https://codereview.chromium.org/1709163003
* Allow client to force an SkImage snapshot to be unique (and uniquely own its ↵Gravatar bsalomon2016-02-22
| | | | | | | | backing store). GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686163002 Review URL: https://codereview.chromium.org/1686163002
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* SkImage_Raster's pixels are always immutable.Gravatar reed2015-07-29
| | | | | | | | | | | | | | | | | | To make this work, we tag their pixelrefs as temporarily immutable, allowing ourselves to restore the pixels to mutability only when the image drops away. This should allow us to wobble back and forth between writing to the Surface and reading from the Image without a COW, with the Surface seeing mutable pixels and the Image seeing immutable pixels. The big idea is, Image doesn't need forever-immutable pixels, it just needs pixels that are immutable as long as it's alive. BUG=skia: patch from issue 804523002 at patchset 40001 (http://crrev.com/804523002#ps40001) Review URL: https://codereview.chromium.org/1254383006
* have canvas send discard instead of retain if the draw would overwrite ↵Gravatar reed2015-07-16
| | | | | | | | | | | | everything Motivation: - perf win for clients that overwrite the surface after a snapshot. - may allow us to eliminate SkDeferredCanvas, as this was its primary advantage. BUG=skia: Review URL: https://codereview.chromium.org/1236023004
* add ability to get FBO ID to SurfaceGravatar joshualitt2015-07-08
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1220733007