| Flutter iOS Embedder |

Classes | Typedefs | Functions | Variables
FlutterPlatformViewsController.mm File Reference
`#import "shell/platform/darwin/ios/framework/Source/FlutterPlatformViewsController.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 31 of file FlutterPlatformViewsController.mm.

## Function Documentation

## ◆ GetCATransform3DFromDlMatrix()

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

Definition at line 44 of file FlutterPlatformViewsController.mm.

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

## ◆ GetCGRectFromDlRect()

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

Definition at line 77 of file FlutterPlatformViewsController.mm.

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

## ◆ ResetAnchor()

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

Definition at line 71 of file FlutterPlatformViewsController.mm.

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

## Variable Documentation

## ◆ _compositionOrder

std::vector<int64_t> _compositionOrder

Definition at line 244 of file FlutterPlatformViewsController.mm.

## ◆ _currentCompositionParams

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

Definition at line 242 of file FlutterPlatformViewsController.mm.

## ◆ _factories

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

Definition at line 237 of file FlutterPlatformViewsController.mm.

## ◆ _gestureRecognizersBlockingPolicies

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

Definition at line 239 of file FlutterPlatformViewsController.mm.

## ◆ _platformTaskRunner

fml::RefPtr<fml::TaskRunner> _platformTaskRunner

Definition at line 240 of file FlutterPlatformViewsController.mm.

## ◆ _platformViews

std::unordered_map<int64_t, PlatformViewData> _platformViews

Definition at line 241 of file FlutterPlatformViewsController.mm.

## ◆ _previousCompositionOrder

std::vector<int64_t> _previousCompositionOrder

Definition at line 247 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 236 of file FlutterPlatformViewsController.mm.

## ◆ _viewsToDispose

std::unordered_set<int64_t> _viewsToDispose

Definition at line 243 of file FlutterPlatformViewsController.mm.

## ◆ _viewsToRecomposite

std::unordered_set<int64_t> _viewsToRecomposite

Definition at line 246 of file FlutterPlatformViewsController.mm.

## ◆ _visitedPlatformViews

std::vector<int64_t> _visitedPlatformViews

Definition at line 245 of file FlutterPlatformViewsController.mm.

## ◆ kFlutterClippingMaskViewPoolCapacity

constexpr NSUInteger kFlutterClippingMaskViewPoolCapacity = 5
| static constexpr

Definition at line 23 of file FlutterPlatformViewsController.mm.