216 {
217 if (delegate_ == nullptr) {
218 return nullptr;
219 }
221 if (!context_switch->GetResult()) {
223 << "Could not make the context current to acquire the frame.";
224 return nullptr;
225 }
226
227 SurfaceFrame::FramebufferInfo framebuffer_info;
228
229
230
231 if (!render_to_surface_) {
232 framebuffer_info.supports_readback = true;
233 return std::make_unique<SurfaceFrame>(
234 nullptr, framebuffer_info,
235 [](
const SurfaceFrame& surface_frame,
DlCanvas* canvas) {
236 return true;
237 },
239 }
240
242
244 AcquireRenderSurface(
size, root_surface_transformation);
245
247 return nullptr;
248 }
249
250 surface->getCanvas()->setMatrix(root_surface_transformation);
252 [weak = weak_factory_.GetWeakPtr()](const SurfaceFrame& surface_frame,
254 return weak ? weak->PresentSurface(surface_frame, canvas) : false;
255 };
256
258 if (!framebuffer_info.existing_damage.has_value()) {
260 }
261 return std::make_unique<SurfaceFrame>(
surface, framebuffer_info,
262 submit_callback,
size,
263 std::move(context_switch));
264}
virtual SurfaceFrame::FramebufferInfo GLContextFramebufferInfo() const
SkMatrix GetRootTransformation() const override
std::function< bool(SurfaceFrame &surface_frame, DlCanvas *canvas)> SubmitCallback
it will be possible to load the file into Perfetto s trace viewer 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
flutter::DlCanvas DlCanvas
std::optional< SkIRect > existing_damage