Flutter Engine
The Flutter Engine
|
#import <FlutterTextInputPlugin.h>
Instance Methods | |
(instancetype) | - NS_UNAVAILABLE |
(instancetype) | - initWithDelegate: |
(void) | - handleMethodCall:result: |
(UIView< UITextInput > *) | - textInputView |
(void) | - setUpIndirectScribbleInteraction: |
(void) | - resetViewResponder |
(BOOL) | - showEditMenu: |
(ios(16.0) | - API_AVAILABLE |
(instancetype) | - initWithViewController: |
(BOOL) | - isFirstResponder |
(BOOL) | - handleKeyEvent: |
(void) | - handleKeyboardWillShow: [implementation] |
(void) | - dealloc [implementation] |
(void) | - removeEnableFlutterTextInputViewAccessibilityTimer [implementation] |
(void) | - handlePointerUp: [implementation] |
(void) | - dismissKeyboardScreenshot [implementation] |
(void) | - showKeyboardAndRemoveScreenshot [implementation] |
(void) | - handlePointerMove: [implementation] |
(void) | - setKeyboardContainerHeight: [implementation] |
(void) | - hideKeyboardWithoutAnimationAndAvoidCursorDismissUpdate [implementation] |
(void) | - takeKeyboardScreenshotAndDisplay [implementation] |
(void) | - hideEditMenu [implementation] |
(void) | - setEditableSizeAndTransform: [implementation] |
(void) | - updateMarkedRect: [implementation] |
(void) | - setSelectionRects: [implementation] |
(void) | - startLiveTextInput [implementation] |
(void) | - showTextInput [implementation] |
(void) | - enableActiveViewAccessibility [implementation] |
(void) | - hideTextInput [implementation] |
(void) | - triggerAutofillSave: [implementation] |
(void) | - setPlatformViewTextInputClient [implementation] |
(void) | - setTextInputClient:withConfiguration: [implementation] |
(FlutterTextInputView *) | - createInputViewWith: [implementation] |
(FlutterTextInputView *) | - updateAndShowAutofillViews:focusedField:isPasswordRelated: [implementation] |
(FlutterTextInputView *) | - getOrCreateAutofillableView:isPasswordAutofill: [implementation] |
(UIView *) | - hostView [implementation] |
(NSArray< UIView * > *) | - textInputViews [implementation] |
(void) | - cleanUpViewHierarchy:clearText:delayRemoval: [implementation] |
(void) | - changeInputViewsAutofillVisibility: [implementation] |
(void) | - resetAllClientIds [implementation] |
(void) | - addToInputParentViewIfNeeded: [implementation] |
(void) | - setTextInputEditingState: [implementation] |
(void) | - clearTextInputClient [implementation] |
(void) | - updateConfig: [implementation] |
(BOOL) | - indirectScribbleInteraction:isElementFocused: [implementation] |
(void) | - indirectScribbleInteraction:focusElementIfNeeded:referencePoint:completion: [implementation] |
(BOOL) | - indirectScribbleInteraction:shouldDelayFocusForElement: [implementation] |
(void) | - indirectScribbleInteraction:willBeginWritingInElement: [implementation] |
(void) | - indirectScribbleInteraction:didFinishWritingInElement: [implementation] |
(CGRect) | - indirectScribbleInteraction:frameForElement: [implementation] |
(void) | - indirectScribbleInteraction:requestElementsInRect:completion: [implementation] |
(BOOL) | - handlePress: [implementation] |
(void) | - resignAndRemoveFromSuperview [implementation] |
(void) | - setEditableTransform: [implementation] |
(void) | - updateCaretRect: [implementation] |
(void) | - setEditingState: [implementation] |
(NSDictionary *) | - editingState [implementation] |
(void) | - updateEditState [implementation] |
(void) | - updateEditStateWithDelta: [implementation] |
(void) | - updateTextAndSelection [implementation] |
(NSString *) | - textAffinityString [implementation] |
(void) | - keyDown: [implementation] |
(void) | - keyUp: [implementation] |
(BOOL) | - performKeyEquivalent: [implementation] |
(void) | - flagsChanged: [implementation] |
(void) | - mouseDown: [implementation] |
(void) | - mouseUp: [implementation] |
(void) | - mouseDragged: [implementation] |
(void) | - rightMouseDown: [implementation] |
(void) | - rightMouseUp: [implementation] |
(void) | - rightMouseDragged: [implementation] |
(void) | - otherMouseDown: [implementation] |
(void) | - otherMouseUp: [implementation] |
(void) | - otherMouseDragged: [implementation] |
(void) | - mouseMoved: [implementation] |
(void) | - scrollWheel: [implementation] |
(NSTextInputContext *) | - inputContext [implementation] |
(void) | - insertTab: [implementation] |
(void) | - insertText:replacementRange: [implementation] |
(void) | - doCommandBySelector: [implementation] |
(void) | - insertNewline: [implementation] |
(void) | - setMarkedText:selectedRange:replacementRange: [implementation] |
(void) | - unmarkText [implementation] |
(NSRange) | - markedRange [implementation] |
(BOOL) | - hasMarkedText [implementation] |
(NSAttributedString *) | - attributedSubstringForProposedRange:actualRange: [implementation] |
(NSArray< NSString * > *) | - validAttributesForMarkedText [implementation] |
(CGRect) | - screenRectFromFrameworkTransform: [implementation] |
(NSRect) | - firstRectForCharacterRange:actualRange: [implementation] |
(NSUInteger) | - characterIndexForPoint: [implementation] |
Class Methods | |
(instancetype) | + NS_UNAVAILABLE |
Protected Attributes | |
__pad0__: NSObject <FlutterKeySecondaryResponder | |
Properties | |
UIIndirectScribbleInteractionDelegate UIViewController * | viewController |
id< FlutterIndirectScribbleDelegate > | indirectScribbleDelegate |
NSMutableDictionary< UIScribbleElementIdentifier, NSValue * > * | scribbleElements |
FlutterTextField * | client |
id< FlutterTextInputDelegate > | textInputDelegate [implementation] |
NSMutableDictionary< NSString *, FlutterTextInputView * > * | autofillContext [implementation] |
FlutterTextInputView * | activeView [implementation] |
FlutterTextInputViewAccessibilityHider * | inputHider [implementation] |
UIView * | inputHider [implementation] |
id< FlutterViewResponder > | viewResponder [implementation] |
UIView * | keyboardViewContainer [implementation] |
UIView * | keyboardView [implementation] |
UIView * | cachedFirstResponder [implementation] |
CGRect | keyboardRect [implementation] |
CGFloat | previousPointerYPosition [implementation] |
CGFloat | pointerYVelocity [implementation] |
NSTextInputContext * | textInputContext [implementation] |
FlutterMethodChannel * | channel [implementation] |
FlutterViewController * | flutterViewController [implementation] |
BOOL | shown [implementation] |
uint64_t | previouslyPressedFlags [implementation] |
FlutterTextAffinity | textAffinity [implementation] |
NSNumber * | clientID [implementation] |
NSString * | inputType [implementation] |
NSString * | inputAction [implementation] |
BOOL | eventProducedOutput [implementation] |
BOOL | enableDeltaModel [implementation] |
NSMutableArray * | pendingSelectors [implementation] |
NSString * | customRunLoopMode [implementation] |
A plugin to handle text input.
Responsible for bridging the native macOS text input system with the Flutter framework text editing classes, via system channels.
This is not an FlutterPlugin since it needs access to FlutterViewController internals, so needs to be managed differently.
When accessibility is on, accessibility bridge creates a NSTextField, i.e. FlutterTextField, for every text field in the Flutter. This plugin acts as a field editor for those NSTextField[s].
Definition at line 33 of file FlutterTextInputPlugin.h.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (ios(16.0) API_AVAILABLE |
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Provided by category FlutterTextInputPlugin(TestMethods).
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Provided by category FlutterTextInputPlugin(TestMethods).
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (BOOL) handleKeyEvent: | (NSEvent*) | event |
Handles key down events received from the view controller, responding YES if the event was handled.
Note, the Apple docs suggest that clients should override essentially all the mouse and keyboard event-handling methods of NSResponder. However, experimentation indicates that only key events are processed by the native layer; Flutter processes mouse events. Additionally, processing both keyUp and keyDown results in duplicate processing of the same keys.
Definition at line 339 of file FlutterTextInputPlugin.mm.
- (void) handleMethodCall: | (FlutterMethodCall *) | call | |
result: | (FlutterResult) | result | |
Handles a Flutter system message on the text input channel.
Provided by category FlutterTextInputPlugin(TestMethods).
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Handles key down events received from the view controller, responding YES if the event was handled.
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (instancetype) initWithDelegate: | (id<FlutterTextInputDelegate>) | NS_DESIGNATED_INITIALIZER |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (instancetype) initWithViewController: | (FlutterViewController*) | viewController |
Initializes a text input plugin that coordinates key event handling with |viewController|.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
- (BOOL) isFirstResponder |
Whether this plugin is the first responder of this NSWindow.
When accessibility is on, this plugin is set as the first responder to act as the field editor for FlutterTextFields.
Returns false if accessibility is off.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
- (instancetype) NS_UNAVAILABLE |
+ (instancetype) NS_UNAVAILABLE |
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (void) resetViewResponder |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Updates the text input model with state received from the framework via the TextInput.setEditingState message.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (void) setUpIndirectScribbleInteraction: | (id<FlutterViewResponder>) | viewResponder |
These are used by the UIIndirectScribbleInteractionDelegate methods to handle focusing on the correct element.
Definition at line 2342 of file FlutterTextInputPlugin.mm.
- (BOOL) showEditMenu: | (ios(16.0)) | API_AVAILABLE |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Return the string representation of the current textAffinity as it should be sent over the FlutterMethodChannel.
Definition at line 339 of file FlutterTextInputPlugin.mm.
- (UIView< UITextInput > *) textInputView |
The UITextInput
implementation used to control text entry.
This is used by AccessibilityBridge
to forward interactions with iOS' accessibility system.
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Informs the Flutter framework of changes to the text input model's state by sending the entire new state.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Informs the Flutter framework of changes to the text input model's state by sending only the difference.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
implementation |
Updates the stringValue and selectedRange that stored in the NSTextView interface that this plugin inherits from.
If there is a FlutterTextField uses this plugin as its field editor, this method will update the stringValue and selectedRange through the API of the FlutterTextField.
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
implementation |
Definition at line 339 of file FlutterTextInputPlugin.mm.
|
protected |
Definition at line 179 of file FlutterTextInputPlugin.h.
|
readwritenonatomicassignimplementation |
Definition at line 2333 of file FlutterTextInputPlugin.mm.
|
readnonatomicassignimplementation |
Definition at line 2332 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2339 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
The channel used to communicate with Flutter.
Definition at line 215 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicweak |
The NSTextField that currently has this plugin as its field editor.
Must be nil if accessibility is off.
Definition at line 34 of file FlutterTextInputPlugin.h.
|
readwritenonatomicassignimplementation |
ID of the text input client.
Definition at line 242 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Allow overriding run loop mode for test.
Provided by category FlutterTextInputPlugin(TestMethods).
Definition at line 319 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Whether to enable the sending of text input updates from the engine to the framework as TextEditingDeltas rather than as one TextEditingValue. For more information on the delta model, see: https://master-api.flutter.dev/flutter/services/TextInputConfiguration/enableDeltaModel.html
Definition at line 269 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Set to true if the last event fed to the input context produced a text editing command or text output. It is reset to false at the beginning of every key event, and is only used while processing this event.
Definition at line 261 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicweakimplementation |
The FlutterViewController to manage input for.
Definition at line 220 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicweak |
Definition at line 37 of file FlutterTextInputPlugin.h.
|
readwritenonatomicassignimplementation |
An action requested by the user on the input client. See available options: https://api.flutter.dev/flutter/services/TextInputAction-class.html
Definition at line 254 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicretainimplementation |
Definition at line 2334 of file FlutterTextInputPlugin.mm.
|
readnonatomicassignimplementation |
Definition at line 64 of file FlutterTextInputPluginTest.mm.
|
readwritenonatomicassignimplementation |
Keyboard type of the client. See available options: https://api.flutter.dev/flutter/services/TextInputType-class.html
Definition at line 248 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2340 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2338 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2337 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Used to gather multiple selectors performed in one run loop turn. These will be all sent in one platform channel call so that the framework can process them in single microtask.
Definition at line 276 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2342 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
The current state of the keyboard and pressed keys.
Definition at line 232 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
Definition at line 2341 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicstrong |
Definition at line 39 of file FlutterTextInputPlugin.h.
|
readwritenonatomicassignimplementation |
Whether the text input is shown in the view.
Defaults to TRUE on startup.
Definition at line 227 of file FlutterTextInputPlugin.mm.
|
readwriteatomicimplementation |
The affinity for the current cursor position.
Definition at line 237 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicassignimplementation |
A text input context, representing a connection to the Cocoa text input system.
Provided by category FlutterTextInputPlugin(TestMethods).
Definition at line 210 of file FlutterTextInputPlugin.mm.
|
readnonatomicweakimplementation |
Definition at line 779 of file FlutterTextInputPlugin.mm.
|
readwritenonatomicweak |
Definition at line 36 of file FlutterTextInputPlugin.h.
|
readnonatomicweakimplementation |
Definition at line 2335 of file FlutterTextInputPlugin.mm.