ozone: scenic: Enable vulkan presentation to scenic via magma surface

Using the VK_LAYER_GOOGLE_image_pipe_swapchain layer we can create a
swapchain for an image pipe and assign it as the texture of a scenic
window.

This does not work from the viz process yet as we would need to plumb the
image pipe handle over from the browser using FIDL or mojo. Rendering
needs to be done from the UI thread via VulkanBrowserCompositorOutputSurface
or a test app such as ozone_demo.

This also will not work until vulkan synchronization is fixed, see
https://crbug.com/877684

Bug: 861853
Test: content_shell --ozone-platform=scenic --enable-vulkan --disable-gpu

Change-Id: I79ac045c6d6deb20f49023c8e8e9492631700703
Reviewed-on: https://chromium-review.googlesource.com/1188974
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Victor Miura <vmiura@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#589008}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 058241f944fb9248c51a3750208b0db53b3e2e5b
1 file changed