| Flutter iOS Embedder |

Classes | Namespaces | Functions | Variables
FlutterPlatformViews.mm File Reference
`#include <Metal/Metal.h>`
`#import <UIKit/UIGestureRecognizerSubclass.h>`
`#include <list>`
`#include <map>`
`#include <memory>`
`#include <string>`
`#include "flutter/common/graphics/persistent_cache.h"`
`#include "flutter/fml/platform/darwin/scoped_nsobject.h"`
`#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterChannels.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterOverlayView.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterPlatformViews_Internal.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterView.h"`
`#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterViewController_Internal.h"`
`#import "flutter/shell/platform/darwin/ios/ios_surface.h"`

Go to the source code of this file.

## Classes
class | DelayingGestureRecognizer
class | ForwardingGestureRecognizer

## Namespaces
| flutter

## Functions
static bool | ClipRectContainsPlatformViewBoundingRect (const SkRect &clip_rect, const SkRect &platformview_boundingrect, const SkMatrix &transform_matrix)
static bool | ClipRRectContainsPlatformViewBoundingRect (const SkRRect &clip_rrect, const SkRect &platformview_boundingrect, const SkMatrix &transform_matrix)

## Variables
BOOL | flutter::canApplyBlurBackdrop = YES
FlutterPlatformViewGestureRecognizersBlockingPolicy | _blockingPolicy
UIView * | _embeddedView
NSObject * | _flutterAccessibilityContainer
NSInteger | _currentTouchPointersCount
fml::scoped_nsobject< UIViewController > | _flutterViewController

## Function Documentation

## ◆ ClipRectContainsPlatformViewBoundingRect()

static bool ClipRectContainsPlatformViewBoundingRect | ( | const SkRect & | clip_rect,
|  | const SkRect & | platformview_boundingrect,
|  | const SkMatrix & | transform_matrix
| ) |  |
| static

Definition at line 44 of file FlutterPlatformViews.mm.

46 {
47 SkRect transformed_rect = transform_matrix.mapRect(clip_rect);
48 return transformed_rect.contains(platformview_boundingrect);
49 }

## ◆ ClipRRectContainsPlatformViewBoundingRect()

static bool ClipRRectContainsPlatformViewBoundingRect | ( | const SkRRect & | clip_rrect,
|  | const SkRect & | platformview_boundingrect,
|  | const SkMatrix & | transform_matrix
| ) |  |
| static

Definition at line 59 of file FlutterPlatformViews.mm.

61 {
62 SkVector upper_left = clip_rrect.radii(SkRRect::Corner::kUpperLeft_Corner);
63 SkVector upper_right = clip_rrect.radii(SkRRect::Corner::kUpperRight_Corner);
64 SkVector lower_right = clip_rrect.radii(SkRRect::Corner::kLowerRight_Corner);
65 SkVector lower_left = clip_rrect.radii(SkRRect::Corner::kLowerLeft_Corner);
66 SkScalar transformed_upper_left_x = transform_matrix.mapRadius(upper_left.x());
67 SkScalar transformed_upper_left_y = transform_matrix.mapRadius(upper_left.y());
68 SkScalar transformed_upper_right_x = transform_matrix.mapRadius(upper_right.x());
69 SkScalar transformed_upper_right_y = transform_matrix.mapRadius(upper_right.y());
70 SkScalar transformed_lower_right_x = transform_matrix.mapRadius(lower_right.x());
71 SkScalar transformed_lower_right_y = transform_matrix.mapRadius(lower_right.y());
72 SkScalar transformed_lower_left_x = transform_matrix.mapRadius(lower_left.x());
73 SkScalar transformed_lower_left_y = transform_matrix.mapRadius(lower_left.y());
74 SkRect transformed_clip_rect = transform_matrix.mapRect(clip_rrect.rect());
75 SkRRect transformed_rrect;
76 SkVector corners[] = {{transformed_upper_left_x, transformed_upper_left_y},
77 {transformed_upper_right_x, transformed_upper_right_y},
78 {transformed_lower_right_x, transformed_lower_right_y},
79 {transformed_lower_left_x, transformed_lower_left_y}};
80 transformed_rrect.setRectRadii(transformed_clip_rect, corners);
81 return transformed_rrect.contains(platformview_boundingrect);
82 }

## Variable Documentation

## ◆ _blockingPolicy

FlutterPlatformViewGestureRecognizersBlockingPolicy _blockingPolicy

Initial value:
{
fml::scoped_nsobject<DelayingGestureRecognizer> _delayingRecognizer

Definition at line 988 of file FlutterPlatformViews.mm.

Referenced by FlutterTouchInterceptingView::blockGesture, and FlutterTouchInterceptingView::initWithEmbeddedView:platformViewsController:gestureRecognizersBlockingPolicy:.

## ◆ _currentTouchPointersCount

NSInteger _currentTouchPointersCount

Initial value:
{
fml::WeakPtr<flutter::FlutterPlatformViewsController> _platformViewsController

Definition at line 1135 of file FlutterPlatformViews.mm.

Referenced by ForwardingGestureRecognizer::initWithTarget:platformViewsController:.

## ◆ _embeddedView

UIView* _embeddedView

Definition at line 991 of file FlutterPlatformViews.mm.

Referenced by FlutterTouchInterceptingView::initWithEmbeddedView:platformViewsController:gestureRecognizersBlockingPolicy:.

## ◆ _flutterAccessibilityContainer

NSObject* _flutterAccessibilityContainer

Definition at line 995 of file FlutterPlatformViews.mm.

Referenced by FlutterTouchInterceptingView::setFlutterAccessibilityContainer:.

## ◆ _flutterViewController

fml::scoped_nsobject<UIViewController> _flutterViewController

Definition at line 1150 of file FlutterPlatformViews.mm.

_platformViewsController
std::shared_ptr< flutter::FlutterPlatformViewsController > _platformViewsController
Definition: FlutterEngine.mm:125