Upgrade to flutter 2.10

pull/646/head
X Code 3 years ago
parent 90ecc8aec2
commit 949fdd76f2
  1. 57
      lib/src/widgets/raw_editor.dart

@ -233,7 +233,6 @@ class RawEditorState extends EditorState
AutomaticKeepAliveClientMixin<RawEditor>, AutomaticKeepAliveClientMixin<RawEditor>,
WidgetsBindingObserver, WidgetsBindingObserver,
TickerProviderStateMixin<RawEditor>, TickerProviderStateMixin<RawEditor>,
TextEditingActionTarget,
RawEditorStateTextInputClientMixin, RawEditorStateTextInputClientMixin,
RawEditorStateSelectionDelegateMixin { RawEditorStateSelectionDelegateMixin {
final GlobalKey _editorKey = GlobalKey(); final GlobalKey _editorKey = GlobalKey();
@ -256,7 +255,6 @@ class RawEditorState extends EditorState
// Focus // Focus
bool _didAutoFocus = false; bool _didAutoFocus = false;
FocusAttachment? _focusAttachment;
bool get _hasFocus => widget.focusNode.hasFocus; bool get _hasFocus => widget.focusNode.hasFocus;
// Theme // Theme
@ -280,7 +278,6 @@ class RawEditorState extends EditorState
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
assert(debugCheckHasMediaQuery(context)); assert(debugCheckHasMediaQuery(context));
_focusAttachment!.reparent();
super.build(context); super.build(context);
var _doc = widget.controller.document; var _doc = widget.controller.document;
@ -568,7 +565,7 @@ class RawEditorState extends EditorState
}); });
} }
_focusAttachment = widget.focusNode.attach(context); // Focus
widget.focusNode.addListener(_handleFocusChanged); widget.focusNode.addListener(_handleFocusChanged);
} }
@ -612,8 +609,6 @@ class RawEditorState extends EditorState
if (widget.focusNode != oldWidget.focusNode) { if (widget.focusNode != oldWidget.focusNode) {
oldWidget.focusNode.removeListener(_handleFocusChanged); oldWidget.focusNode.removeListener(_handleFocusChanged);
_focusAttachment?.detach();
_focusAttachment = widget.focusNode.attach(context);
widget.focusNode.addListener(_handleFocusChanged); widget.focusNode.addListener(_handleFocusChanged);
updateKeepAlive(); updateKeepAlive();
} }
@ -651,7 +646,6 @@ class RawEditorState extends EditorState
_selectionOverlay = null; _selectionOverlay = null;
widget.controller.removeListener(_didChangeTextEditingValue); widget.controller.removeListener(_didChangeTextEditingValue);
widget.focusNode.removeListener(_handleFocusChanged); widget.focusNode.removeListener(_handleFocusChanged);
_focusAttachment!.detach();
_cursorCont.dispose(); _cursorCont.dispose();
_clipboardStatus _clipboardStatus
..removeListener(_onChangedClipboardStatus) ..removeListener(_onChangedClipboardStatus)
@ -828,8 +822,15 @@ class RawEditorState extends EditorState
/// This property is typically used to notify the renderer of input gestures. /// This property is typically used to notify the renderer of input gestures.
@override @override
RenderEditor get renderEditor => RenderEditor get renderEditor =>
_editorKey.currentContext?.findRenderObject() as RenderEditor; _editorKey.currentContext!.findRenderObject() as RenderEditor;
/// Express interest in interacting with the keyboard.
///
/// If this control is already attached to the keyboard, this function will
/// request that the keyboard become visible. Otherwise, this function will
/// ask the focus system that it become focused. If successful in acquiring
/// focus, the control will then attach to the keyboard and request that the
/// keyboard become visible.
@override @override
void requestKeyboard() { void requestKeyboard() {
if (_hasFocus) { if (_hasFocus) {
@ -840,24 +841,6 @@ class RawEditorState extends EditorState
} }
} }
@override
void setTextEditingValue(
TextEditingValue value, SelectionChangedCause cause) {
if (value == textEditingValue) {
return;
}
textEditingValue = value;
userUpdateTextEditingValue(value, cause);
// keyboard and text input force a selection completion
_handleSelectionCompleted();
}
@override
void debugAssertLayoutUpToDate() {
renderEditor.debugAssertLayoutUpToDate();
}
/// Shows the selection toolbar at the location of the current cursor. /// Shows the selection toolbar at the location of the current cursor.
/// ///
/// Returns `false` if a toolbar couldn't be shown, such as when the toolbar /// Returns `false` if a toolbar couldn't be shown, such as when the toolbar
@ -885,8 +868,7 @@ class RawEditorState extends EditorState
widget.controller.copiedImageUrl = null; widget.controller.copiedImageUrl = null;
_pastePlainText = widget.controller.getPlainText(); _pastePlainText = widget.controller.getPlainText();
_pasteStyle = widget.controller.getAllIndividualSelectionStyles(); _pasteStyle = widget.controller.getAllIndividualSelectionStyles();
// Copied straight from EditableTextState
super.copySelection(cause);
if (cause == SelectionChangedCause.toolbar) { if (cause == SelectionChangedCause.toolbar) {
bringIntoView(textEditingValue.selection.extent); bringIntoView(textEditingValue.selection.extent);
hideToolbar(false); hideToolbar(false);
@ -911,8 +893,6 @@ class RawEditorState extends EditorState
_pastePlainText = widget.controller.getPlainText(); _pastePlainText = widget.controller.getPlainText();
_pasteStyle = widget.controller.getAllIndividualSelectionStyles(); _pasteStyle = widget.controller.getAllIndividualSelectionStyles();
// Copied straight from EditableTextState
super.cutSelection(cause);
if (cause == SelectionChangedCause.toolbar) { if (cause == SelectionChangedCause.toolbar) {
bringIntoView(textEditingValue.selection.extent); bringIntoView(textEditingValue.selection.extent);
hideToolbar(); hideToolbar();
@ -938,9 +918,6 @@ class RawEditorState extends EditorState
return; return;
} }
// Copied straight from EditableTextState
super.pasteText(cause); // ignore: unawaited_futures
if (cause == SelectionChangedCause.toolbar) { if (cause == SelectionChangedCause.toolbar) {
bringIntoView(textEditingValue.selection.extent); bringIntoView(textEditingValue.selection.extent);
hideToolbar(); hideToolbar();
@ -949,8 +926,6 @@ class RawEditorState extends EditorState
@override @override
void selectAll(SelectionChangedCause cause) { void selectAll(SelectionChangedCause cause) {
// Copied straight from EditableTextState
super.selectAll(cause);
if (cause == SelectionChangedCause.toolbar) { if (cause == SelectionChangedCause.toolbar) {
bringIntoView(textEditingValue.selection.extent); bringIntoView(textEditingValue.selection.extent);
} }
@ -959,18 +934,6 @@ class RawEditorState extends EditorState
@override @override
bool get wantKeepAlive => widget.focusNode.hasFocus; bool get wantKeepAlive => widget.focusNode.hasFocus;
@override
bool get obscureText => false;
@override
bool get selectionEnabled => widget.enableInteractiveSelection;
@override
bool get readOnly => widget.readOnly;
@override
TextLayoutMetrics get textLayoutMetrics => renderEditor;
@override @override
AnimationController get floatingCursorResetController => AnimationController get floatingCursorResetController =>
_floatingCursorResetController; _floatingCursorResetController;

Loading…
Cancel
Save