Ideally modules above SurfaceFlinger should query ConfigStore through
ISurfaceComposer APIs. Previously getWideColorSupport directly evaluate wide
color support for built-in display, we don't want that, we should align it with
SurfaceFlinger.
BUG: 123312783
Test: Build, flash and boot. Verify in logcat.
Change-Id: I6299fe1a5483075a98adbb903d3bb68255afb699
Implements the ASensorEventQueue_requestAdditionalInfoEvents which
allows for a client to request additional information sensor events.
Bug: 77276247
Test: Verified additional information events are only delivered to NDK
clients that have explicitly requested them through the
ASensorEventQueue_requestAdditionalInfoEvents function
Change-Id: I304ba73908e5dd3eec61360d26e5321d442c6077
Bug: 122366555
Test: Verified ASensor_getHandle is available to NDK clients in
libandroid and the function returns the correct handle.
Change-Id: Ib08fbcc6862d3d3d4906a457d7708cb600dd161c
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
Replace calls to dup() with fcntl(F_DUPFD_CLOEXEC). The only difference
between the two is that O_CLOEXEC is set on the newly duped file
descriptor. This helps address file descriptor leaks crossing an exec()
boundary.
Test: compiles and boots
Change-Id: I95218331382b7a3432d31a46c173009dc4df1a6b
Add the NDK API for apps to use SurfaceControl for low level compositing
using SurfaceFlinger.
Test: atest CtsViewTestCases:android.view.cts.ASurfaceControlTest
Bug: 80477568, 111656650
Change-Id: If2c85a4427f422e41feeadbee0b64de7eb5c925e
Adds the ASensor_getHandle API to the Sensors NDK which returns a
sensors internal sensor handle.
Bug: 122366555
Test: Builds, verified function returns correct handle
Change-Id: I1358528d2e7ee2918d5f5c2195d51adaa2cc3661
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
In order to exclude libandroid.so + its dependent libraries from the apex.
Test: build and check if libandroid.so is excluded in the media apex
Bug: 112766913
Change-Id: I5f1c5692a5395cf673d7868e0a429767d639720f
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
Adds support for asynchronous "raw" DNS API for clients.
API allows apps to use multinetworking capability correctly
and also allows other query types than A/AAAA.
Test: built, flashed, booted
cts test: NativeDnsAsyncTest
Change-Id: I4701b76bd8f0094ef1bdd7c5371b54387914a91b
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
Hide unintentionally exported symbols, validate that symbols mentioned
in the map file actually exported by the library.
Bug: http://b/69603741
Test: make
Change-Id: I80ec35b715b28dea45ebfbd216130c2c946c6668
Hides unintentionally exported symbols from the library.
Test: make checkbuild
Bug: http://b/69603741
Change-Id: Id679077267cc5ea6168c0b4701f827458087cb70