5#ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERTEXTINPUTPLUGIN_H_
6#define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERTEXTINPUTPLUGIN_H_
10#import "flutter/shell/platform/common/text_editing_delta.h"
11#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterChannels.h"
12#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterIndirectScribbleDelegate.h"
13#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterKeySecondaryResponder.h"
14#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterTextInputDelegate.h"
15#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterViewResponder.h"
17typedef NS_ENUM(NSInteger, FlutterScribbleFocusStatus) {
19 FlutterScribbleFocusStatusUnfocused,
20 FlutterScribbleFocusStatusFocusing,
21 FlutterScribbleFocusStatusFocused,
25typedef 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;
155@property(nonatomic) UITextSmartDashesType smartDashesType
API_AVAILABLE(
ios(11.0));
165@property(nonatomic, strong) UIEditMenuInteraction* editMenuInteraction
API_AVAILABLE(
ios(16.0));
182@property(nonatomic, readonly)
id flutterFirstResponder;
void(^ FlutterResult)(id _Nullable result)
#define FLUTTER_DARWIN_EXPORT
static void copy(void *dst, const uint8_t *src, int width, int bpp, int deltaSrc, int offset, const SkPMColor ctable[])
UITextContentType textContentType()
UIView< UITextInput > * textInputView()
NSMutableDictionary< UIScribbleElementIdentifier, NSValue * > * scribbleElements
void resetViewResponder()
id< FlutterIndirectScribbleDelegate > indirectScribbleDelegate
UITextStorageDirection affinity
FlutterViewController * viewController
BOOL enablesReturnKeyAutomatically
UIAccessibilityElement * backingTextInputAccessibilityObject
NSDictionary * markedTextStyle
NSArray< FlutterTextSelectionRect * > * selectionRects
NSMutableArray * pendingDeltas
CGRect localRectFromFrameworkTransform
void resetScribbleInteractionStatusIfEnding
typedef NS_ENUM(NSInteger, FlutterScribbleFocusStatus)
UIKeyboardType keyboardType
UITextRange * markedTextRange
id< UITextInputDelegate > inputDelegate
instancetype init NS_UNAVAILABLE
UITextAutocorrectionType autocorrectionType
instancetype initWithFrame
FlutterScribbleFocusStatus scribbleFocusStatus
UITextSpellCheckingType spellCheckingType
API_AVAILABLE(ios(13.0)) @interface FlutterTextPlaceholder UITextRange * selectedTextRange
instancetype initWithOwner
id< FlutterViewResponder > viewResponder
UITextSmartQuotesType smartQuotesType API_AVAILABLE(ios(11.0))
instancetype initWithCoder
UITextAutocapitalizationType autocapitalizationType
UIReturnKeyType returnKeyType
CGRect caretRectForPosition
UIKeyboardAppearance keyboardAppearance
sk_sp< SkBlender > blender SkRect rect
SK_API sk_sp< SkSurface > ios(9.0)