5#ifndef FLUTTER_SHELL_PLATFORM_ANDROID_PLATFORM_VIEW_ANDROID_H_
6#define FLUTTER_SHELL_PLATFORM_ANDROID_PLATFORM_VIEW_ANDROID_H_
12#include <android/hardware_buffer_jni.h>
31 bool lazy_shader_mode);
38 const std::shared_ptr<AndroidContext>& android_context_;
39 const bool enable_impeller_;
40 const bool lazy_shader_mode_;
49 const std::shared_ptr<PlatformViewAndroidJNI>& jni_facade,
60 const std::shared_ptr<PlatformViewAndroidJNI>& jni_facade,
61 const std::shared_ptr<flutter::AndroidContext>& android_context);
78 jint message_position,
102 intptr_t loading_unit_id,
103 std::unique_ptr<const fml::Mapping> snapshot_data,
104 std::unique_ptr<const fml::Mapping> snapshot_instructions)
override;
107 const std::string error_message,
108 bool transient)
override;
112 std::unique_ptr<AssetResolver> updated_asset_resolver,
116 return android_context_;
121 return platform_message_handler_;
131 const std::shared_ptr<PlatformViewAndroidJNI> jni_facade_;
132 std::shared_ptr<AndroidContext> android_context_;
133 std::shared_ptr<AndroidSurfaceFactoryImpl> surface_factory_;
137 std::unique_ptr<AndroidSurface> android_surface_;
138 std::shared_ptr<PlatformMessageHandlerAndroid> platform_message_handler_;
139 bool android_meets_hcpp_criteria_ =
false;
142 void UpdateSemantics(
148 void SetApplicationLocale(std::string locale)
override;
151 void HandlePlatformMessage(
152 std::unique_ptr<flutter::PlatformMessage>
message)
override;
155 void OnPreEngineRestart()
const override;
158 std::unique_ptr<VsyncWaiter> CreateVSyncWaiter()
override;
161 std::unique_ptr<Surface> CreateRenderingSurface()
override;
164 std::shared_ptr<ExternalViewEmbedder> CreateExternalViewEmbedder()
override;
167 std::unique_ptr<SnapshotSurfaceProducer> CreateSnapshotSurfaceProducer()
171 sk_sp<GrDirectContext> CreateResourceContext()
const override;
174 void ReleaseResourceContext()
const override;
177 std::shared_ptr<impeller::Context> GetImpellerContext()
const override;
180 std::unique_ptr<std::vector<std::string>> ComputePlatformResolvedLocales(
181 const std::vector<std::string>& supported_locale_data)
override;
184 void RequestDartDeferredLibrary(intptr_t loading_unit_id)
override;
186 void InstallFirstFrameCallback();
188 void FireFirstFrameCallback();
190 double GetScaledFontSize(
double unscaled_font_size,
191 int configuration_id)
const override;
std::unique_ptr< AndroidSurface > CreateSurface() override
~AndroidSurfaceFactoryImpl() override
AssetResolverType
Identifies the type of AssetResolver an instance is.
ImageLifecycle
Whether the last image should be reset when the context is destroyed.
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args
G_BEGIN_DECLS GBytes * message
G_BEGIN_DECLS FlutterViewId view_id
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
std::unordered_map< int32_t, SemanticsNode > SemanticsNodeUpdates
std::unordered_map< int32_t, CustomAccessibilityAction > CustomAccessibilityActionUpdates
it will be possible to load the file into Perfetto s trace viewer use test Running tests that layout and measure text will not yield consistent results across various platforms Enabling this option will make font resolution default to the Ahem test font on all disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive keep the shell running after the Dart script has completed enable serial On low power devices with low core running concurrent GC tasks on threads can cause them to contend with the UI thread which could potentially lead to jank This option turns off all concurrent GC activities domain network JSON encoded network policy per domain This overrides the DisallowInsecureConnections switch Embedder can specify whether to allow or disallow insecure connections at a domain level old gen heap size
DEF_SWITCHES_START aot vmservice shared library name