Flutter iOS Embedder
FlutterViewController_Internal.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERVIEWCONTROLLER_INTERNAL_H_
6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERVIEWCONTROLLER_INTERNAL_H_
7 
9 
10 #include "flutter/fml/time/time_point.h"
11 #import "flutter/shell/platform/darwin/ios/InternalFlutterSwift/InternalFlutterSwift.h"
18 
19 namespace flutter {
20 class PlatformViewsController;
21 }
22 
24 // NOLINTNEXTLINE(readability-identifier-naming)
25 extern NSNotificationName const FlutterViewControllerWillDealloc;
26 
28 // NOLINTNEXTLINE(readability-identifier-naming)
29 extern NSNotificationName const FlutterViewControllerHideHomeIndicator;
30 
32 // NOLINTNEXTLINE(readability-identifier-naming)
33 extern NSNotificationName const FlutterViewControllerShowHomeIndicator;
34 
35 typedef NS_ENUM(NSInteger, FlutterKeyboardMode) {
36  // NOLINTBEGIN(readability-identifier-naming)
37  FlutterKeyboardModeHidden = 0,
38  FlutterKeyboardModeDocked = 1,
39  FlutterKeyboardModeFloating = 2,
40  // NOLINTEND(readability-identifier-naming)
41 };
42 
43 typedef void (^FlutterKeyboardAnimationCallback)(fml::TimePoint);
44 
46 
47 @property(class, nonatomic, readonly) BOOL accessibilityIsOnOffSwitchLabelsEnabled;
48 @property(nonatomic, readonly) BOOL isPresentingViewController;
49 @property(nonatomic, readonly) BOOL isVoiceOverRunning;
50 @property(nonatomic, strong) FlutterKeyboardManager* keyboardManager;
51 
52 /**
53  * @brief Whether the status bar is preferred hidden.
54  *
55  * This overrides the |UIViewController:prefersStatusBarHidden|.
56  * This is ignored when `UIViewControllerBasedStatusBarAppearance` in info.plist
57  * of the app project is `false`.
58  */
59 @property(nonatomic, assign, readwrite) BOOL prefersStatusBarHidden;
60 
61 @property(nonatomic, readonly) FlutterPlatformViewsController* platformViewsController;
62 
63 - (FlutterRestorationPlugin*)restorationPlugin;
65 
66 // Accepts keypress events, and then calls |nextAction| if the event was not
67 // handled.
68 - (void)handlePressEvent:(FlutterUIPressProxy*)press
69  nextAction:(void (^)())nextAction API_AVAILABLE(ios(13.4));
70 - (void)sendDeepLinkToFramework:(NSURL*)url completionHandler:(void (^)(BOOL success))completion;
71 - (void)addInternalPlugins;
72 - (void)deregisterNotifications;
73 - (int32_t)accessibilityFlags;
74 
75 - (BOOL)supportsShowingSystemContextMenu;
76 - (BOOL)stateIsActive;
77 - (BOOL)stateIsBackground;
78 @end
79 
80 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERVIEWCONTROLLER_INTERNAL_H_
#define FLUTTER_DARWIN_EXPORT
Definition: FlutterMacros.h:14
FlutterTextInputPlugin * textInputPlugin
FLUTTER_DARWIN_EXPORT NSNotificationName const FlutterViewControllerHideHomeIndicator
typedef NS_ENUM(NSInteger, FlutterKeyboardMode)
FLUTTER_DARWIN_EXPORT NSNotificationName const FlutterViewControllerShowHomeIndicator
FLUTTER_DARWIN_EXPORT NSNotificationName const FlutterViewControllerWillDealloc
void(^ FlutterKeyboardAnimationCallback)(fml::TimePoint)