5#ifndef FLUTTER_IMPELLER_TOOLKIT_ANDROID_SURFACE_CONTROL_H_
6#define FLUTTER_IMPELLER_TOOLKIT_ANDROID_SURFACE_CONTROL_H_
41 static std::unique_ptr<SurfaceControl>
Create(
43 const char* debug_name =
nullptr);
A wrapper for ASurfaceControl. https://developer.android.com/ndk/reference/group/native-activity#asur...
virtual bool IsValid() const =0
virtual ~SurfaceControl()=default
Removes the surface control from the presentation hierarchy managed by the system compositor and rele...
static std::unique_ptr< SurfaceControl > Create(ANativeWindow *window, const char *debug_name=nullptr)
Creates a new surface control and adds it as a child of the given window.
static bool IsAvailableOnPlatform()
virtual ASurfaceControl * GetHandle() const =0
virtual bool RemoveFromParent() const =0
Remove the surface control from the hierarchy of nodes presented by the system compositor.
struct ANativeWindow ANativeWindow