viz: RGBA_TEXTURE copy requests in SkiaRenderer
Currently, SkiaRenderer does not support RGBA_TEXTURE CopyOutputRequests which are used in Chrome OS for screen rotation animations [1] (among other things). As part of a larger effort to enable SkiaRenderer on Chrome OS, this CL implements RGBA_TEXTURE support in SkiaOutputSurfaceImplOnGpu::CopyOutput: 1. Refactor SharedImageFactory ownership out of DirectContextProviderDelegateImpl (used only for the use_gl_renderer_copier bypass) and directly into SkiaOutputSurfaceImplOnGpu. 2. Create a SharedImage and its Skia representation in CopyOutput and blit the request rect from the source into the output SkSurface. 3. Send the SharedImage's mailbox back through the CopyOutputResult with a release callback that destroys the SharedImage. 4. Enable SKIA_GL tests in cc_unittests. [1] https://source.chromium.org/chromium/chromium/src/+/master:ash/rotator/screen_rotation_animator.cc;l=214;drc=b15cb5fd43aff2d181355401d99e47e2e44aa61f?originalUrl=https:%2F%2Fcs.chromium.org%2F Bug: 1046788, 971257, 1098435 Change-Id: I62d41390828ed0c79a1dc29c508efc748924ce06 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2302733Reviewed-by:Khushal <khushalsagar@chromium.org> Reviewed-by:
Jonathan Backer <backer@chromium.org> Commit-Queue: Brian Ho <hob@chromium.org> Cr-Commit-Position: refs/heads/master@{#792971}
Showing
This diff is collapsed.
Please register or sign in to comment