| Flutter iOS Embedder |

Instance Methods | Properties | List of all members
FlutterPlatformViewsController() Category Reference

## Instance Methods
(void) | - createMissingOverlays:withIosContext:
(void) | - performSubmit:currentCompositionParams:viewsToRecomposite:compositionOrder:unusedLayers:surfaceFrames:
| Update the buffers and mutate the platform views in CATransaction on the platform thread. More...
(void) | - onCreate:result:
(void) | - onDispose:result:
(void) | - onAcceptGesture:result:
(void) | - onRejectGesture:result:
(void) | - clipViewSetMaskView:
(void) | - applyMutators:embeddedView:boundingRect:
(void) | - bringLayersIntoView:withCompositionOrder:
(std::shared_ptr< flutter::OverlayLayer >) | - nextLayerInPool
(void) | - createLayerWithIosContext:pixelFormat:
| Runs on the platform thread. More...
(void) | - removeUnusedLayers:withCompositionOrder:
(std::vector< UIView * >) | - computeViewsToDispose
(void) | - resetFrameState
| Resets the state of the frame. More...

## Properties
flutter::OverlayLayerPool * | layerPool
std::unordered_map< int64_t, std::unique_ptr< flutter::EmbedderViewSlice > > & | slices
FlutterClippingMaskViewPool * | maskViewPool
std::unordered_map< std::string, NSObject< FlutterPlatformViewFactory > * > & | factories
std::unordered_map< std::string, FlutterPlatformViewGestureRecognizersBlockingPolicy > & | gestureRecognizersBlockingPolicies
DlISize | frameSize
| The size of the current onscreen surface in physical pixels. More...
const fml::RefPtr< fml::TaskRunner > & | platformTaskRunner
| The task runner for posting tasks to the platform thread. More...
std::unordered_map< int64_t, PlatformViewData > & | platformViews
| This data must only be accessed on the platform thread. More...
std::unordered_map< int64_t, flutter::EmbeddedViewParams > & | currentCompositionParams
std::unordered_set< int64_t > & | viewsToDispose
std::vector< int64_t > & | compositionOrder
std::vector< int64_t > & | visitedPlatformViews
std::unordered_set< int64_t > & | viewsToRecomposite
std::vector< int64_t > & | previousCompositionOrder
| The composition order from the previous thread. More...
BOOL | hadPlatformViews
BOOL | canApplyBlurBackdrop

## Detailed Description

Definition at line 84 of file FlutterPlatformViewsController.mm.

## Method Documentation

## ◆ applyMutators:embeddedView:boundingRect:

- (void) applyMutators: |  | (const flutter::MutatorsStack &) | mutatorsStack
embeddedView: |  | (UIView *) | embeddedView
boundingRect: |  | (const DlRect &) | boundingRect

## ◆ bringLayersIntoView:withCompositionOrder:

- (void) bringLayersIntoView: |  | (const LayersMap &) | layerMap
withCompositionOrder: |  | (const std::vector< int64_t > &) | compositionOrder

## ◆ clipViewSetMaskView:

- (void) clipViewSetMaskView: |  | (UIView *) | clipView |

## ◆ computeViewsToDispose

- (vector<UIView*> FlutterPlatformViewsController()): |  |  |

Computes and returns all views to be disposed on the platform thread, removes them from self.platformViews, self.viewsToRecomposite, and self.currentCompositionParams. Any views that still require compositing are not returned, but instead added to `viewsToDelayDispose` for disposal on the next call.

## ◆ createLayerWithIosContext:pixelFormat:

- (void) createLayerWithIosContext: |  | (const std::shared_ptr< flutter::IOSContext > &) | iosContext
pixelFormat: |  | (MTLPixelFormat) | pixelFormat

Runs on the platform thread.

## ◆ createMissingOverlays:withIosContext:

- (void) createMissingOverlays: |  | (size_t) | requiredOverlayLayers
withIosContext: |  | (const std::shared_ptr< flutter::IOSContext > &) | iosContext

Populate any missing overlay layers.

This requires posting a task to the platform thread and blocking on its completion.

## ◆ nextLayerInPool

- (shared_ptr<)flutter: |  |  |

## ◆ onAcceptGesture:result:

- (void) onAcceptGesture: |  | (FlutterMethodCall *) | call
result: |  | (FlutterResult) | result

## ◆ onCreate:result:

- (void) onCreate: |  | (FlutterMethodCall *) | call
result: |  | (FlutterResult) | result

## ◆ onDispose:result:

- (void) onDispose: |  | (FlutterMethodCall *) | call
result: |  | (FlutterResult) | result

## ◆ onRejectGesture:result:

- (void) onRejectGesture: |  | (FlutterMethodCall *) | call
result: |  | (FlutterResult) | result

## ◆ performSubmit:currentCompositionParams:viewsToRecomposite:compositionOrder:unusedLayers:surfaceFrames:

- (void) performSubmit: |  | (const LayersMap &) | platformViewLayers
currentCompositionParams: |  | (std::unordered_map< int64_t, flutter::EmbeddedViewParams > &) | currentCompositionParams
viewsToRecomposite: |  | (const std::unordered_set< int64_t > &) | viewsToRecomposite
compositionOrder: |  | (const std::vector< int64_t > &) | compositionOrder
unusedLayers: |  | (const std::vector< std::shared_ptr< flutter::OverlayLayer >> &) | unusedLayers
surfaceFrames: |  | (const std::vector< std::unique_ptr< flutter::SurfaceFrame >> &) | surfaceFrames

Update the buffers and mutate the platform views in CATransaction on the platform thread.

## ◆ removeUnusedLayers:withCompositionOrder:

- (void) removeUnusedLayers: |  | (const std::vector< std::shared_ptr< flutter::OverlayLayer >> &) | unusedLayers
withCompositionOrder: |  | (const std::vector< int64_t > &) | compositionOrder

Removes overlay views and platform views that aren't needed in the current frame. Must run on the platform thread.

## ◆ resetFrameState

- (void) resetFrameState |  |  |

Resets the state of the frame.

## Property Documentation

## ◆ canApplyBlurBackdrop

- (BOOL) canApplyBlurBackdrop
| read write nonatomic assign

Whether blurred backdrop filters can be applied.

Defaults to YES, but becomes NO if blurred backdrop filters cannot be applied.

Definition at line 159 of file FlutterPlatformViewsController.mm.

## ◆ compositionOrder

- (vector<int64_t>& FlutterPlatformViewsController()):
| read nonatomic assign

view IDs in composition order.

This state is only modified on the raster thread.

Definition at line 130 of file FlutterPlatformViewsController.mm.

## ◆ currentCompositionParams

- (unordered_map<int64_t,) flutter:
| read nonatomic assign

The composition parameters for each platform view.

This state is only modified on the raster thread.

Definition at line 119 of file FlutterPlatformViewsController.mm.

## ◆ factories

- (unordered_map<)std:
| read nonatomic assign

Definition at line 99 of file FlutterPlatformViewsController.mm.

## ◆ frameSize

- (DlISize) frameSize
| read write nonatomic assign

The size of the current onscreen surface in physical pixels.

Definition at line 107 of file FlutterPlatformViewsController.mm.

## ◆ gestureRecognizersBlockingPolicies

- (unordered_map<)std:
| read nonatomic assign

Definition at line 104 of file FlutterPlatformViewsController.mm.

## ◆ hadPlatformViews

- (BOOL) hadPlatformViews
| read write nonatomic assign

Whether the previous frame had any platform views in active composition order.

This state is tracked so that the first frame after removing the last platform view runs through the platform view rendering code path, giving us a chance to remove the platform view from the UIView hierarchy.

Only accessed from the raster thread.

Definition at line 154 of file FlutterPlatformViewsController.mm.

## ◆ layerPool

- (OverlayLayerPool* FlutterPlatformViewsController()):
| read nonatomic assign

Definition at line 87 of file FlutterPlatformViewsController.mm.

## ◆ maskViewPool

- (FlutterClippingMaskViewPool*) maskViewPool
| read nonatomic assign

Definition at line 96 of file FlutterPlatformViewsController.mm.

## ◆ platformTaskRunner

- (const RefPtr<)fml:
| read nonatomic assign

The task runner for posting tasks to the platform thread.

Definition at line 110 of file FlutterPlatformViewsController.mm.

## ◆ platformViews

- (unordered_map<int64_t, PlatformViewData>& FlutterPlatformViewsController()):
| read nonatomic assign

This data must only be accessed on the platform thread.

Definition at line 113 of file FlutterPlatformViewsController.mm.

## ◆ previousCompositionOrder

- (vector<int64_t>& FlutterPlatformViewsController()):
| read nonatomic assign

The composition order from the previous thread.

Only accessed from the platform thread.

Definition at line 145 of file FlutterPlatformViewsController.mm.

## ◆ slices

- (unordered_map<int64_t,) std:
| read nonatomic assign

Definition at line 94 of file FlutterPlatformViewsController.mm.

## ◆ viewsToDispose

- (unordered_set<int64_t>& FlutterPlatformViewsController()):
| read nonatomic assign

Method channel `OnDispose` calls adds the views to be disposed to this set to be disposed on the next frame.

This state is modified on both the platform and raster thread.

Definition at line 125 of file FlutterPlatformViewsController.mm.

## ◆ viewsToRecomposite

- (unordered_set<int64_t>& FlutterPlatformViewsController()):
| read nonatomic assign

Only composite platform views in this set.

This state is only modified on the raster thread.

Definition at line 140 of file FlutterPlatformViewsController.mm.

## ◆ visitedPlatformViews

- (vector<int64_t>& FlutterPlatformViewsController()):
| read nonatomic assign

platform view IDs visited during layer tree composition.

This state is only modified on the raster thread.

Definition at line 135 of file FlutterPlatformViewsController.mm.

The documentation for this category was generated from the following file:

- shell/platform/darwin/ios/framework/Source/FlutterPlatformViewsController.mm