aw: Vulkan instrumentation test
Implement vulkan instrumentation shell. This requires dependency on gpu/vulkan for vulkan bindings and initialization, and skia for setting up pipeline and secondary command buffer to be passed to webview. The skia dependency is largely the same as hwui's implementation vulkan draw functor implementation. This requires one fix to VulkanSwapChain to not try to get the current TaskRunner on initialization. Webview's render thread does not have a TaskRunner. Also needed to plumb an explicit resize event to native ContextManager to resize the vulkan surface. Make sure to install draw_fn function table before calling AwBrowserProcess.start everywhere, so it can call query_render_mode on initialization. Add plumbing to allow test to choose to use vulkan, and add a test rendering test using vulkan. The test is limited to P+ and a hard coded list of supported devices. Verified the android-pie-arm64-rel bot can successfully run the test. Bug: 1141687 Change-Id: Id49b770728d993c7764d7dc044a3d990df5bef3a Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2620539 Commit-Queue: Bo <boliu@chromium.org> Reviewed-by:Peng Huang <penghuang@chromium.org> Reviewed-by:
Vasiliy Telezhnikov <vasilyt@chromium.org> Cr-Commit-Position: refs/heads/master@{#843260}
Showing
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment