Webview no longer needs this.
Bug: 124123583
Test: comppiles and vulkan webview in layer keeps working
Change-Id: Ib54e33649eb027a03184c5d7588cfd9568c90a6c
This updates to use Skia's new api which takes the vulkan apiVersion
instead of the instance version. This is technically more correct since
the application apiVersion is really the only client modifiable version
value in vulkan.
This change also updates the webview structs to use the apiVersion as
well.
Test: manual build and testing.
Change-Id: I6ce7c20949eb7242f7bbe69955b54c0785696891
Bug: 115613038
Test: Turning on vulkan with appropriate webview apk does not crash and
sort of works.
Change-Id: If1504da7a35e4bd74a994ab2c2a351e6bc415a18
The color space parameters are currently separate members. This was
making passing color space parameters to functions a bit messy.
This CL puts the color space parameters into their own struct which can
be cleanly passed to functions.
Test: Builds locally
Change-Id: I3709b88dbdedb9616d4905ee973c3099f95b3ca7
Several of the first-iteration file/class/member variable names did not
match the style of their surrounding neighbors. This CL fixes that.
Test: Compiles
Change-Id: I9374e6cab79c57413e728d253067306d15011f2c
plat_support to pass through the GL functor even if hwui is using vulkan
pipeline, since interop calls the GL functor.
Also remove sGLDrawThread and call functor on render thread, since
onDestroy and onContextDestroy are currently hard coded to run on render
thread as well, and functor expects all calls to be called on a single
thread.
Bug: 115613038
Test: draw_fn functor works with vulkan enabled
Change-Id: Ie3fa643695e95a6cc383f7ffe3eb3ad741792707
Add plumbing to native/webview for the new functor.
Add a void* data parameter to avoid having to use a thread safe
map for in both the plumbing and in webview.
Test: Compiles and webview runs
Bug: 120997728
Change-Id: I0f9f3acb05688a5afcf95974bc0b3b117f33a8e3
An interop Vulkan functor already exists. It will call the OpenGL
functor and use AHardwareBuffer to translate the OpenGL textures into
something which can be used in Vulkan.
This CL adds the frameworks for a non-interop Vulkan functor. This
functor is not yet complete (and as a result cannot yet be tested). This
is just setting the stage for future work.
Test: This is dead code and cannot yet be tested.
BUG=115613038
Change-Id: I2b87c86cb511abb961c31c17c2fbbc085b07ca4a
In a separate code review we agreed that at ABI boundaries it feels nice
to explicitly call out enum values rather than rely on the rules of
C/C++ which others may not be comfortable with.
This CL adds explicit values to enums inside draw_gl.h.
Test: I built and tested on a Pixel 2.
Change-Id: I64c03e2684c1ab096a9c0665e4ed3d8b7bb22ac7
"override" provides a compile-time gaurantee that the function is indeed
overriding a virtual function. This prevents the potential mistake of
creating a new virtual function rather than overriding the original.
I happened to notice we could use "override" here instead of "virtual".
Might as well tidy up a bit.
Test: Built locally
BUG=115613038
Change-Id: I7f43f4a466d8ceaa1b863d6a2af054e69618d0c8
Move this code to be in the same repository as the other parts of
WebView's current implementation.
Bug: 62445369
Test: m
Change-Id: I567eac7f3484fa78a948fb84545e578fe18c236d