#include <external_view_embedder_2.h>
Public Member Functions | |
| AndroidExternalViewEmbedder2 (const AndroidContext &android_context, std::shared_ptr< PlatformViewAndroidJNI > jni_facade, std::shared_ptr< AndroidSurfaceFactory > surface_factory, const TaskRunners &task_runners) | |
| void | PrerollCompositeEmbeddedView (int64_t view_id, std::unique_ptr< flutter::EmbeddedViewParams > params) override |
| DlCanvas * | CompositeEmbeddedView (int64_t view_id) override |
| void | SubmitFlutterView (int64_t flutter_view_id, GrDirectContext *context, const std::shared_ptr< impeller::AiksContext > &aiks_context, std::unique_ptr< SurfaceFrame > frame) override |
| PostPrerollResult | PostPrerollAction (const fml::RefPtr< fml::RasterThreadMerger > &raster_thread_merger) override |
| DlCanvas * | GetRootCanvas () override |
| void | BeginFrame (GrDirectContext *context, const fml::RefPtr< fml::RasterThreadMerger > &raster_thread_merger) override |
| void | PrepareFlutterView (DlISize frame_size, double device_pixel_ratio) override |
| void | CancelFrame () override |
| void | EndFrame (bool should_resubmit_frame, const fml::RefPtr< fml::RasterThreadMerger > &raster_thread_merger) override |
| bool | SupportsDynamicThreadMerging () override |
| void | Teardown () override |
Public Member Functions inherited from flutter::ExternalViewEmbedder | |
| ExternalViewEmbedder ()=default | |
| virtual | ~ExternalViewEmbedder ()=default |
| virtual void | CollectView (int64_t view_id) |
| virtual void | PrerollCompositeEmbeddedView (int64_t platform_view_id, std::unique_ptr< EmbeddedViewParams > params)=0 |
| void | SetUsedThisFrame (bool used_this_frame) |
| bool | GetUsedThisFrame () const |
| virtual void | PushVisitedPlatformView (int64_t platform_view_id) |
| virtual void | PushFilterToVisitedPlatformViews (const std::shared_ptr< DlImageFilter > &filter, const DlRect &filter_rect) |
Static Public Member Functions | |
| static DlRect | GetViewRect (int64_t view_id, const std::unordered_map< int64_t, EmbeddedViewParams > &view_params) |
Allows to embed Android views into a Flutter application.
This class calls Java methods via |PlatformViewAndroidJNI| to manage the lifecycle of the Android view corresponding to |flutter::PlatformViewLayer|.
It also orchestrates overlay surfaces. These are Android views that render above (by Z order) the Android view corresponding to |flutter::PlatformViewLayer|.
This implementation of the external view embedder is designed only to use HC++ mode. Mixing old HC modes is not supported, but either of the texture composition based platform views can be used with either mode.
Definition at line 34 of file external_view_embedder_2.h.
| flutter::AndroidExternalViewEmbedder2::AndroidExternalViewEmbedder2 | ( | const AndroidContext & | android_context, |
| std::shared_ptr< PlatformViewAndroidJNI > | jni_facade, | ||
| std::shared_ptr< AndroidSurfaceFactory > | surface_factory, | ||
| const TaskRunners & | task_runners | ||
| ) |
Definition at line 15 of file external_view_embedder_2.cc.
|
overridevirtual |
Implements flutter::ExternalViewEmbedder.
Definition at line 232 of file external_view_embedder_2.cc.
|
overridevirtual |
Implements flutter::ExternalViewEmbedder.
Definition at line 254 of file external_view_embedder_2.cc.
|
overridevirtual |
Implements flutter::ExternalViewEmbedder.
Definition at line 50 of file external_view_embedder_2.cc.
References view_id.
|
overridevirtual |
Reimplemented from flutter::ExternalViewEmbedder.
Definition at line 259 of file external_view_embedder_2.cc.
|
overridevirtual |
Implements flutter::ExternalViewEmbedder.
Definition at line 221 of file external_view_embedder_2.cc.
|
static |
Definition at line 57 of file external_view_embedder_2.cc.
References flutter::EmbeddedViewParams::finalBoundingRect(), params, and view_id.
Referenced by SubmitFlutterView().
|
overridevirtual |
Reimplemented from flutter::ExternalViewEmbedder.
Definition at line 211 of file external_view_embedder_2.cc.
References flutter::kSuccess.
|
overridevirtual |
Implements flutter::ExternalViewEmbedder.
Definition at line 237 of file external_view_embedder_2.cc.
|
override |
Definition at line 29 of file external_view_embedder_2.cc.
References impeller::TRect< Scalar >::MakeSize(), params, TRACE_EVENT0, view, and view_id.
|
overridevirtual |
Reimplemented from flutter::ExternalViewEmbedder.
Definition at line 66 of file external_view_embedder_2.cc.
References flutter::DlCanvas::ClipRect(), impeller::TRect< T >::GetHeight(), flutter::TaskRunners::GetPlatformTaskRunner(), flutter::DlCanvas::GetSaveCount(), GetViewRect(), impeller::TRect< T >::GetWidth(), impeller::TRect< T >::GetX(), impeller::TRect< T >::GetY(), i, flutter::kDifference, flutter::DlColor::kTransparent(), fml::MakeCopyable(), params, fml::TaskRunner::PostTask(), flutter::DlCanvas::RestoreToCount(), flutter::DlCanvas::Save(), flutter::SliceViews(), TRACE_EVENT0, and view_id.
|
overridevirtual |
Reimplemented from flutter::ExternalViewEmbedder.
Definition at line 264 of file external_view_embedder_2.cc.
|
overridevirtual |
Reimplemented from flutter::ExternalViewEmbedder.
Definition at line 269 of file external_view_embedder_2.cc.