Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db5778ee authored by Huihong Luo's avatar Huihong Luo
Browse files

Add ASurfaceControl_acquire api

hwui needs this api to hold a reference to a surface control object passed from java layer.

Bug: 173671170
Test: manual
Change-Id: I1ca9cbe5caad4bdb8594b421e5444d7bdb7b71a8
parent f07a9853
Loading
Loading
Loading
Loading
+15 −3
Original line number Diff line number Diff line
@@ -67,9 +67,21 @@ ASurfaceControl* ASurfaceControl_create(ASurfaceControl* parent, const char* deb
                                        __INTRODUCED_IN(29);

/**
 * Releases the \a surface_control object. After releasing the ASurfaceControl the caller no longer
 * has ownership of the AsurfaceControl. The surface and it's children may remain on display as long
 * as their parent remains on display.
 * Acquires a reference on the given ASurfaceControl object.  This prevents the object
 * from being deleted until the reference is removed.
 *
 * To release the reference, use the ASurfaceControl_release function.
 *
 * Available since API level 31.
 */
void ASurfaceControl_acquire(ASurfaceControl* surface_control) __INTRODUCED_IN(31);

/**
 * Removes a reference that was previously acquired with one of the following functions:
 *   ASurfaceControl_createFromWindow
 *   ASurfaceControl_create
 *   ANativeWindow_acquire
 * The surface and its children may remain on display as long as their parent remains on display.
 *
 * Available since API level 29.
 */