@@ -76,10 +76,6 @@ Engine::Engine(Delegate& delegate,
7676#endif
7777 intercept_all_input_ (product_config.get_intercept_all_input()),
7878 weak_factory_(this ) {
79- if (zx::event::create (0 , &vsync_event_) != ZX_OK) {
80- FML_DLOG (ERROR) << " Could not create the vsync event." ;
81- return ;
82- }
8379
8480 // Get the task runners from the managed threads. The current thread will be
8581 // used as the "platform" thread.
@@ -138,26 +134,27 @@ Engine::Engine(Delegate& delegate,
138134 view_token = std::move (view_token),
139135 view_ref_pair = std::move (view_ref_pair),
140136 max_frames_in_flight = product_config.get_max_frames_in_flight (),
141- vsync_handle = vsync_event_.get (), &view_embedder_latch]() mutable {
142- session_connection_.emplace (
137+ &view_embedder_latch]() mutable {
138+ FML_LOG (INFO) << " FELIPE: made shared" ;
139+ session_connection_ = std::make_shared<DefaultSessionConnection>(
143140 thread_label_, std::move (session),
144- std::move (session_error_callback), [](auto ) {}, vsync_handle,
141+ std::move (session_error_callback), [](auto ) {},
145142 max_frames_in_flight);
146143 surface_producer_.emplace (session_connection_->get ());
147144#if defined(LEGACY_FUCHSIA_EMBEDDER)
148145 if (use_legacy_renderer_) {
149146 legacy_external_view_embedder_ =
150147 std::make_shared<flutter::SceneUpdateContext>(
151148 thread_label_, std::move (view_token),
152- std::move (view_ref_pair), session_connection_.value ( ),
149+ std::move (view_ref_pair), *( session_connection_.get () ),
153150 intercept_all_input_);
154151 } else
155152#endif
156153 {
157154 external_view_embedder_ =
158155 std::make_shared<FuchsiaExternalViewEmbedder>(
159156 thread_label_, std::move (view_token),
160- std::move (view_ref_pair), session_connection_.value (),
157+ std::move (view_ref_pair), * session_connection_.get (),
161158 surface_producer_.value (), intercept_all_input_);
162159 }
163160 view_embedder_latch.Signal ();
@@ -232,8 +229,8 @@ Engine::Engine(Delegate& delegate,
232229 // Setup the callback that will instantiate the platform view.
233230 flutter::Shell::CreateCallback<flutter::PlatformView>
234231 on_create_platform_view = fml::MakeCopyable (
235- [debug_label = thread_label_, view_ref = std::move (platform_view_ref) ,
236- runner_services,
232+ [this , debug_label = thread_label_ ,
233+ view_ref = std::move (platform_view_ref), runner_services,
237234 parent_environment_service_provider =
238235 std::move (parent_environment_service_provider),
239236 session_listener_request = std::move (session_listener_request),
@@ -248,7 +245,6 @@ Engine::Engine(Delegate& delegate,
248245 on_create_surface_callback = std::move (on_create_surface_callback),
249246 external_view_embedder = GetExternalViewEmbedder (),
250247 vsync_offset = product_config.get_vsync_offset (),
251- vsync_handle = vsync_event_.get (),
252248 keyboard_listener_request = std::move (keyboard_listener_request)](
253249 flutter::Shell& shell) mutable {
254250 return std::make_unique<flutter_runner::PlatformView>(
@@ -271,7 +267,7 @@ Engine::Engine(Delegate& delegate,
271267 std::move (on_create_surface_callback),
272268 external_view_embedder, // external view embedder
273269 std::move (vsync_offset), // vsync offset
274- vsync_handle );
270+ session_connection_ );
275271 });
276272
277273 // Setup the callback that will instantiate the rasterizer.
@@ -295,7 +291,7 @@ Engine::Engine(Delegate& delegate,
295291
296292 auto compositor_context =
297293 std::make_unique<flutter_runner::CompositorContext>(
298- session_connection_.value ( ), surface_producer_.value (),
294+ *( session_connection_.get () ), surface_producer_.value (),
299295 legacy_external_view_embedder_);
300296 return std::make_unique<flutter::Rasterizer>(
301297 shell, std::move (compositor_context));
0 commit comments