Flutter iOS Embedder
FlutterViewController() Category Reference

#import <FlutterViewController_Internal.h>

Inheritance diagram for FlutterViewController():
<FlutterBinaryMessenger> <FlutterKeyboardInsetManagerDelegate> <FlutterViewResponder>

Instance Methods

(UIHoverGestureRecognizer *hoverGestureRecognizer) - API_AVAILABLE
 
(UIPanGestureRecognizer *discreteScrollingPanGestureRecognizer) - API_AVAILABLE
 
(UIPanGestureRecognizer *continuousScrollingPanGestureRecognizer) - API_AVAILABLE
 
(UIPinchGestureRecognizer *pinchGestureRecognizer) - API_AVAILABLE
 
(UIRotationGestureRecognizer *rotationGestureRecognizer) - API_AVAILABLE
 
(void) - addInternalPlugins
 Creates and registers plugins used by this view controller. More...
 
(void) - deregisterNotifications
 
(void) - onFirstFrameRendered
 Called when the first frame has been rendered. Invokes any registered first-frame callback. More...
 
(FlutterRestorationPlugin *) - restorationPlugin
 
(FlutterTextInputPlugin *) - textInputPlugin
 
(void) - handlePressEvent:nextAction:
 
(void) - addInternalPlugins
 
(void) - deregisterNotifications
 
(BOOL) - supportsShowingSystemContextMenu
 
(BOOL) - stateIsActive
 
(BOOL) - stateIsBackground
 
(BOOL) - shouldHandleSceneNotification:
 
- Instance Methods inherited from <FlutterBinaryMessenger>
(NSObject< FlutterTaskQueue > *) - makeBackgroundTaskQueue
 TODO(gaaclarke): Remove optional when macos supports Background Platform Channels. More...
 
(FlutterBinaryMessengerConnection- setMessageHandlerOnChannel:binaryMessageHandler:taskQueue:
 
(void) - sendOnChannel:message:
 
(void) - sendOnChannel:message:binaryReply:
 
(FlutterBinaryMessengerConnection- setMessageHandlerOnChannel:binaryMessageHandler:
 
(void) - cleanUpConnection:
 
- Instance Methods inherited from <FlutterKeyboardInsetManagerDelegate>
(void) - updateViewportMetricsWithInset:
 Updates the viewport metrics with the new bottom inset. More...
 
(CGFloat) - physicalViewInsetBottom
 Returns the current physical bottom view inset. More...
 
(UIView *) - view
 Returns the view associated with the delegate. More...
 
(FlutterEngine *) - engine
 Returns the engine associated with the delegate. More...
 
(UIScreen *) - flutterScreenIfViewLoaded
 Returns the UIScreen associated with the Flutter view, if the view is loaded. More...
 
(BOOL) - isPadInSlideOverOrStageManagerMode
 Returns whether the device is an iPad and in Slide Over or Stage Manager mode. More...
 
(CGRect) - convertViewRectToScreen:
 Converts a rectangle from the view's coordinate system to the screen's coordinate system. More...
 
(BOOL) - isViewLoaded
 Returns whether the delegate's view is currently loaded. More...
 
- Instance Methods inherited from <FlutterViewResponder>
(void) - touchesBegan:withEvent:
 
(void) - touchesMoved:withEvent:
 
(void) - touchesEnded:withEvent:
 
(void) - touchesCancelled:withEvent:
 
(void) - touchesEstimatedPropertiesUpdated:
 
(void) - forceTouchesCancelled:
 
(BOOL) - platformViewShouldAcceptTouchAtTouchBeganLocation:
 

Properties

int64_t viewIdentifier
 
FlutterViewflutterView
 
void(^ flutterViewRenderedCallback )(void)
 
FlutterSplashScreenManager * splashScreenManager
 
UIInterfaceOrientationMask orientationPreferences
 
UIStatusBarStyle statusBarStyle
 
BOOL initialized
 
BOOL engineNeedsLaunch
 
BOOL awokenFromNib
 
BOOL displayingFlutterUI
 
BOOL isHomeIndicatorHidden
 
BOOL isPresentingViewControllerAnimating
 
BOOL flutterPrefersStatusBarHidden
 
NSMutableSet< NSNumber * > * ongoingTouches
 
UIScrollView * scrollView
 
BOOL shouldIgnoreViewportMetricsUpdatesDuringRotation
 
NSTimeInterval scrollInertiaEventStartline
 Timestamp after which a scroll inertia cancel event should be inferred. More...
 
NSTimeInterval scrollInertiaEventAppKitDeadline
 
FlutterVSyncClient * touchRateCorrectionVSyncClient
 
CGSize sizeBeforeAutoResized
 
BOOL isPresentingViewController
 
BOOL isVoiceOverRunning
 
FlutterKeyboardManagerkeyboardManager
 
FlutterKeyboardInsetManagerkeyboardInsetManager
 
NSString * applicationLocale
 
BOOL prefersStatusBarHidden
 Whether the status bar is preferred hidden. More...
 
FlutterPlatformViewsControllerplatformViewsController
 
FlutterAccessibilityFeatures * accessibilityFeatures
 
- Properties inherited from <FlutterViewResponder>
UIView * view
 

Detailed Description

Definition at line 68 of file FlutterViewController.mm.

Method Documentation

◆ addInternalPlugins [1/2]

- (void) addInternalPlugins

Creates and registers plugins used by this view controller.

◆ addInternalPlugins [2/2]

- (void) addInternalPlugins

◆ API_AVAILABLE [1/5]

- (UIHoverGestureRecognizer* hoverGestureRecognizer) API_AVAILABLE (ios(13.4)) 

◆ API_AVAILABLE [2/5]

- (UIPanGestureRecognizer* discreteScrollingPanGestureRecognizer) API_AVAILABLE (ios(13.4)) 

◆ API_AVAILABLE [3/5]

- (UIPanGestureRecognizer* continuousScrollingPanGestureRecognizer) API_AVAILABLE (ios(13.4)) 

◆ API_AVAILABLE [4/5]

- (UIPinchGestureRecognizer* pinchGestureRecognizer) API_AVAILABLE (ios(13.4)) 

◆ API_AVAILABLE [5/5]

- (UIRotationGestureRecognizer* rotationGestureRecognizer) API_AVAILABLE (ios(13.4)) 

◆ deregisterNotifications [1/2]

- (void) deregisterNotifications

◆ deregisterNotifications [2/2]

- (void) deregisterNotifications

◆ handlePressEvent:nextAction:

- (void) handlePressEvent: (FlutterUIPressProxy *)  press
nextAction: (ios(13.4))  API_AVAILABLE 

◆ onFirstFrameRendered

- (void) onFirstFrameRendered

Called when the first frame has been rendered. Invokes any registered first-frame callback.

◆ restorationPlugin

- (FlutterRestorationPlugin*) restorationPlugin

◆ shouldHandleSceneNotification:

- (BOOL) shouldHandleSceneNotification: (ios(13.0))  API_AVAILABLE

Determines whether a UIScene notification should be handled by this view controller.

In multi-scene environments (such as iPadOS split view, macOS Catalyst multi-window, or App Extensions), multiple UIWindowScene instances can exist in the same process space. Because the scene observers register to listen for all targets, they may receive lifecycle notifications from unrelated auxiliary or secondary scenes.

Parameters
notificationThe UIScene notification containing the transitioning UIScene in its object.
Returns
YES if the notification matches this view controller's scene context. NO if it originates from an unrelated scene and should be ignored.

◆ stateIsActive

- (BOOL) stateIsActive

◆ stateIsBackground

- (BOOL) stateIsBackground

◆ supportsShowingSystemContextMenu

- (BOOL) supportsShowingSystemContextMenu

◆ textInputPlugin

- (FlutterTextInputPlugin*) textInputPlugin

Property Documentation

◆ accessibilityFeatures

- (FlutterAccessibilityFeatures*) accessibilityFeatures
readwritenonatomicstrong

Definition at line 64 of file FlutterViewController_Internal.h.

◆ applicationLocale

- (NSString*) applicationLocale
readwritenonatomicassign

Definition at line 51 of file FlutterViewController_Internal.h.

◆ awokenFromNib

- (BOOL) awokenFromNib
readwritenonatomicassign

Definition at line 87 of file FlutterViewController.mm.

◆ displayingFlutterUI

- (BOOL) displayingFlutterUI
readwritenonatomicassign

Definition at line 89 of file FlutterViewController.mm.

◆ engineNeedsLaunch

- (BOOL) engineNeedsLaunch
readwritenonatomicassign

Definition at line 86 of file FlutterViewController.mm.

◆ flutterPrefersStatusBarHidden

- (BOOL) flutterPrefersStatusBarHidden
readwritenonatomicassign

Definition at line 94 of file FlutterViewController.mm.

◆ flutterView

- (FlutterView*) flutterView
readwritenonatomicstrong

Definition at line 78 of file FlutterViewController.mm.

◆ flutterViewRenderedCallback

- (void(^ flutterViewRenderedCallback) (void))
readwritenonatomicstrong

◆ initialized

- (BOOL) initialized
readwritenonatomicassign

Definition at line 85 of file FlutterViewController.mm.

◆ isHomeIndicatorHidden

- (BOOL) isHomeIndicatorHidden
readwritenonatomicassign

Definition at line 90 of file FlutterViewController.mm.

◆ isPresentingViewController

- (BOOL) isPresentingViewController
readnonatomicassign

Definition at line 47 of file FlutterViewController_Internal.h.

◆ isPresentingViewControllerAnimating

- (BOOL) isPresentingViewControllerAnimating
readwritenonatomicassign

Definition at line 91 of file FlutterViewController.mm.

◆ isVoiceOverRunning

- (BOOL) isVoiceOverRunning
readnonatomicassign

Definition at line 48 of file FlutterViewController_Internal.h.

◆ keyboardInsetManager

- (FlutterKeyboardInsetManager*) keyboardInsetManager
readwritenonatomicstrong

Definition at line 50 of file FlutterViewController_Internal.h.

◆ keyboardManager

- (FlutterKeyboardManager*) keyboardManager
readwritenonatomicstrong

Definition at line 49 of file FlutterViewController_Internal.h.

◆ ongoingTouches

- (NSMutableSet<NSNumber*>*) ongoingTouches
readwritenonatomicstrong

Definition at line 96 of file FlutterViewController.mm.

◆ orientationPreferences

- (UIInterfaceOrientationMask) orientationPreferences
readwritenonatomicassign

Definition at line 83 of file FlutterViewController.mm.

◆ platformViewsController

- (FlutterPlatformViewsController*) platformViewsController
readnonatomicassign

Definition at line 62 of file FlutterViewController_Internal.h.

◆ prefersStatusBarHidden

- (BOOL) prefersStatusBarHidden
readwritenonatomicassign

Whether the status bar is preferred hidden.

   This overrides the |UIViewController:prefersStatusBarHidden|.
   This is ignored when `UIViewControllerBasedStatusBarAppearance` in info.plist
   of the app project is `false`.

Definition at line 60 of file FlutterViewController_Internal.h.

◆ scrollInertiaEventAppKitDeadline

- (NSTimeInterval) scrollInertiaEventAppKitDeadline
readwritenonatomicassign

When an iOS app is running in emulation on an Apple Silicon Mac, trackpad input goes through a translation layer, and events are not received with precise deltas. Due to this, we can't rely on checking for a stationary trackpad event. Fortunately, AppKit will send an event of type UIEventTypeScroll following a scroll when inertia should stop. This field is needed to estimate if such an event represents the natural end of scrolling inertia or a user-initiated cancellation.

Definition at line 120 of file FlutterViewController.mm.

◆ scrollInertiaEventStartline

- (NSTimeInterval) scrollInertiaEventStartline
readwritenonatomicassign

Timestamp after which a scroll inertia cancel event should be inferred.

Keyboard animation properties

Definition at line 112 of file FlutterViewController.mm.

◆ scrollView

- (UIScrollView*) scrollView
readwritenonatomicstrong

Definition at line 101 of file FlutterViewController.mm.

◆ shouldIgnoreViewportMetricsUpdatesDuringRotation

- (BOOL) shouldIgnoreViewportMetricsUpdatesDuringRotation
readwritenonatomicassign

Whether we should ignore viewport metrics updates during rotation transition.

Definition at line 106 of file FlutterViewController.mm.

◆ sizeBeforeAutoResized

- (CGSize) sizeBeforeAutoResized
readwritenonatomicassign

The size of the FlutterView's frame, as determined by auto-layout, before Flutter's custom auto-resizing constraints are applied.

Definition at line 132 of file FlutterViewController.mm.

◆ splashScreenManager

- (FlutterSplashScreenManager*) splashScreenManager
readwritenonatomicstrong

Definition at line 81 of file FlutterViewController.mm.

◆ statusBarStyle

- (UIStatusBarStyle) statusBarStyle
readwritenonatomicassign

Definition at line 84 of file FlutterViewController.mm.

◆ touchRateCorrectionVSyncClient

- (FlutterVSyncClient*) touchRateCorrectionVSyncClient
readwritenonatomicstrong

FlutterVSyncClient for touch events delivery frame rate correction.

On promotion devices(eg: iPhone13 Pro), the delivery frame rate of touch events is 60HZ but the frame rate of rendering is 120HZ, which is different and will leads jitter and laggy. With this FlutterVSyncClient, it can correct the delivery frame rate of touch events to let it keep the same with frame rate of rendering.

Definition at line 128 of file FlutterViewController.mm.

◆ viewIdentifier

- (int64_t) viewIdentifier
readnonatomicassign

Definition at line 74 of file FlutterViewController.mm.


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