| Flutter iOS Embedder |

Classes | Typedefs | Functions | Variables
FlutterPlatformViewsController.mm File Reference
`#import "shell/platform/darwin/ios/framework/Source/FlutterPlatformViewsController.h"`
`#include "display_list/geometry/dl_geometry_types.h"`
`#include "impeller/geometry/rounding_radii.h"`
`#include "flutter/display_list/effects/image_filters/dl_blur_image_filter.h"`
`#include "flutter/display_list/utils/dl_matrix_clip_tracker.h"`
`#include "flutter/flow/surface_frame.h"`
`#include "flutter/flow/view_slicer.h"`
`#include "flutter/fml/make_copyable.h"`
`#include "flutter/fml/synchronization/count_down_latch.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterOverlayView.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterView.h"`
`#include "flutter/shell/platform/darwin/ios/framework/Source/overlay_layer_pool.h"`
`#import "flutter/shell/platform/darwin/ios/ios_surface.h"`

Go to the source code of this file.

## Classes
struct | LayerData
struct | PlatformViewData

## Typedefs
using | LayersMap = std::unordered_map< int64_t, LayerData >

## Functions
static CATransform3D | GetCATransform3DFromDlMatrix (const DlMatrix &matrix)
static void | ResetAnchor (CALayer *layer)
static CGRect | GetCGRectFromDlRect (const DlRect &clipDlRect)

## Variables
static constexpr NSUInteger | kFlutterClippingMaskViewPoolCapacity = 5
std::unordered_map< int64_t, std::unique_ptr< flutter::EmbedderViewSlice > > | _slices
std::unordered_map< std::string, NSObject< FlutterPlatformViewFactory > * > | _factories
std::unordered_map< std::string, FlutterPlatformViewGestureRecognizersBlockingPolicy > | _gestureRecognizersBlockingPolicies
fml::RefPtr< fml::TaskRunner > | _platformTaskRunner
std::unordered_map< int64_t, PlatformViewData > | _platformViews
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

## Typedef Documentation

## ◆ LayersMap

using LayersMap = std::unordered_map<int64_t, LayerData>

Definition at line 33 of file FlutterPlatformViewsController.mm.

## Function Documentation

## ◆ GetCATransform3DFromDlMatrix()

static CATransform3D GetCATransform3DFromDlMatrix | ( | const DlMatrix & | matrix | ) |
| static

Definition at line 46 of file FlutterPlatformViewsController.mm.

46 {
47 CATransform3D transform = CATransform3DIdentity;
48 transform.m11 = matrix.m[0];
49 transform.m12 = matrix.m[1];
50 transform.m13 = matrix.m[2];
51 transform.m14 = matrix.m[3];
52
53 transform.m21 = matrix.m[4];
54 transform.m22 = matrix.m[5];
55 transform.m23 = matrix.m[6];
56 transform.m24 = matrix.m[7];
57
58 transform.m31 = matrix.m[8];
59 transform.m32 = matrix.m[9];
60 transform.m33 = matrix.m[10];
61 transform.m34 = matrix.m[11];
62
63 transform.m41 = matrix.m[12];
64 transform.m42 = matrix.m[13];
65 transform.m43 = matrix.m[14];
66 transform.m44 = matrix.m[15];
67 return transform;
68 }

## ◆ GetCGRectFromDlRect()

static CGRect GetCGRectFromDlRect | ( | const DlRect & | clipDlRect | ) |
| static

Definition at line 79 of file FlutterPlatformViewsController.mm.

79 {
80 return CGRectMake(clipDlRect.GetLeft(), //
81 clipDlRect.GetTop(), //
82 clipDlRect.GetWidth(), //
83 clipDlRect.GetHeight());
84 }

## ◆ ResetAnchor()

static void ResetAnchor | ( | CALayer * | layer | ) |
| static

Definition at line 73 of file FlutterPlatformViewsController.mm.

73 {
74 // Flow uses (0, 0) to apply transform matrix so we need to match that in Quartz.
75 layer.anchorPoint = CGPointZero;
76 layer.position = CGPointZero;
77 }

## Variable Documentation

## ◆ _compositionOrder

std::vector<int64_t> _compositionOrder

Definition at line 246 of file FlutterPlatformViewsController.mm.

## ◆ _currentCompositionParams

std::unordered_map<int64_t, flutter::EmbeddedViewParams> _currentCompositionParams

Definition at line 244 of file FlutterPlatformViewsController.mm.

## ◆ _factories

std::unordered_map<std::string, NSObject<FlutterPlatformViewFactory>*> _factories

Definition at line 239 of file FlutterPlatformViewsController.mm.

## ◆ _gestureRecognizersBlockingPolicies

std::unordered_map<std::string, FlutterPlatformViewGestureRecognizersBlockingPolicy> _gestureRecognizersBlockingPolicies

Definition at line 241 of file FlutterPlatformViewsController.mm.

## ◆ _platformTaskRunner

fml::RefPtr<fml::TaskRunner> _platformTaskRunner

Definition at line 242 of file FlutterPlatformViewsController.mm.

## ◆ _platformViews

std::unordered_map<int64_t, PlatformViewData> _platformViews

Definition at line 243 of file FlutterPlatformViewsController.mm.

## ◆ _previousCompositionOrder

std::vector<int64_t> _previousCompositionOrder

Definition at line 249 of file FlutterPlatformViewsController.mm.

## ◆ _slices

std::unordered_map<int64_t, std::unique_ptr<flutter::EmbedderViewSlice> > _slices

Initial value:
{
std::unique_ptr<flutter::OverlayLayerPool> _layerPool

Definition at line 238 of file FlutterPlatformViewsController.mm.

## ◆ _viewsToDispose

std::unordered_set<int64_t> _viewsToDispose

Definition at line 245 of file FlutterPlatformViewsController.mm.

## ◆ _viewsToRecomposite

std::unordered_set<int64_t> _viewsToRecomposite

Definition at line 248 of file FlutterPlatformViewsController.mm.

## ◆ _visitedPlatformViews

std::vector<int64_t> _visitedPlatformViews

Definition at line 247 of file FlutterPlatformViewsController.mm.

## ◆ kFlutterClippingMaskViewPoolCapacity

constexpr NSUInteger kFlutterClippingMaskViewPoolCapacity = 5
| static constexpr

Definition at line 25 of file FlutterPlatformViewsController.mm.