5 #ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERTEXTINPUTPLUGIN_H_
6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERTEXTINPUTPLUGIN_H_
8 #import <UIKit/UIKit.h>
17 typedef NS_ENUM(NSInteger, FlutterScribbleFocusStatus) {
19 FlutterScribbleFocusStatusUnfocused,
20 FlutterScribbleFocusStatusFocusing,
21 FlutterScribbleFocusStatusFocused,
25 typedef NS_ENUM(NSInteger, FlutterScribbleInteractionStatus) {
27 FlutterScribbleInteractionStatusNone,
28 FlutterScribbleInteractionStatusStarted,
29 FlutterScribbleInteractionStatusEnding,
34 : NSObject <FlutterKeySecondaryResponder, UIIndirectScribbleInteractionDelegate>
38 @property(nonatomic, strong)
45 NS_DESIGNATED_INITIALIZER;
63 - (BOOL)showEditMenu:(NSDictionary*)args API_AVAILABLE(ios(16.0));
71 @property(nonatomic, readonly) NSUInteger
index;
72 @property(nonatomic, readonly) UITextStorageDirection
affinity;
74 + (instancetype)positionWithIndex:(NSUInteger)index;
75 + (instancetype)positionWithIndex:(NSUInteger)index affinity:(UITextStorageDirection)affinity;
76 - (instancetype)initWithIndex:(NSUInteger)index affinity:(UITextStorageDirection)affinity;
83 @property(nonatomic, readonly) NSRange range;
85 + (instancetype)rangeWithNSRange:(NSRange)range;
95 @property(nonatomic, assign) CGRect rect;
96 @property(nonatomic) NSUInteger position;
97 @property(nonatomic, assign) NSWritingDirection writingDirection;
98 @property(nonatomic) BOOL containsStart;
99 @property(nonatomic) BOOL containsEnd;
100 @property(nonatomic) BOOL isVertical;
102 + (instancetype)selectionRectWithRectAndInfo:(CGRect)rect
103 position:(NSUInteger)position
104 writingDirection:(NSWritingDirection)writingDirection
105 containsStart:(BOOL)containsStart
106 containsEnd:(BOOL)containsEnd
107 isVertical:(BOOL)isVertical;
109 + (instancetype)selectionRectWithRect:(CGRect)rect position:(NSUInteger)position;
111 + (instancetype)selectionRectWithRect:(CGRect)rect
112 position:(NSUInteger)position
113 writingDirection:(NSWritingDirection)writingDirection;
115 - (instancetype)initWithRectAndInfo:(CGRect)rect
116 position:(NSUInteger)position
117 writingDirection:(NSWritingDirection)writingDirection
118 containsStart:(BOOL)containsStart
119 containsEnd:(BOOL)containsEnd
120 isVertical:(BOOL)isVertical;
130 #if FLUTTER_RUNTIME_MODE == FLUTTER_RUNTIME_MODE_DEBUG
134 : UIView <UITextInput, UIScribbleInteractionDelegate, UIEditMenuInteractionDelegate>
137 @property(nonatomic, readonly) NSMutableString* text;
154 @property(nonatomic) UITextSmartQuotesType smartQuotesType
API_AVAILABLE(ios(11.0));
155 @property(nonatomic) UITextSmartDashesType smartDashesType
API_AVAILABLE(ios(11.0));
156 @property(nonatomic, copy) UITextContentType textContentType
API_AVAILABLE(ios(10.0));
165 @property(nonatomic, strong) UIEditMenuInteraction* editMenuInteraction
API_AVAILABLE(ios(16.0));
182 @property(nonatomic, readonly)
id flutterFirstResponder;
185 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERTEXTINPUTPLUGIN_H_