Unverified Commit cb9e9a37 authored by Kate Lovett's avatar Kate Lovett Committed by GitHub

Remove deprecated RenderEditable.onSelectionChanged (#98582)

parent 574173bb
...@@ -30,17 +30,6 @@ const EdgeInsets _kFloatingCaretSizeIncrease = EdgeInsets.symmetric(horizontal: ...@@ -30,17 +30,6 @@ const EdgeInsets _kFloatingCaretSizeIncrease = EdgeInsets.symmetric(horizontal:
// The corner radius of the floating cursor in pixels. // The corner radius of the floating cursor in pixels.
const Radius _kFloatingCaretRadius = Radius.circular(1.0); const Radius _kFloatingCaretRadius = Radius.circular(1.0);
/// Signature for the callback that reports when the user changes the selection
/// (including the cursor location).
///
/// Used by [RenderEditable.onSelectionChanged].
@Deprecated(
'Signature of a deprecated class method, '
'textSelectionDelegate.userUpdateTextEditingValue. '
'This feature was deprecated after v1.26.0-17.2.pre.',
)
typedef SelectionChangedHandler = void Function(TextSelection selection, RenderEditable renderObject, SelectionChangedCause cause);
/// Signature for the callback that reports when the caret location changes. /// Signature for the callback that reports when the caret location changes.
/// ///
/// Used by [RenderEditable.onCaretChanged]. /// Used by [RenderEditable.onCaretChanged].
...@@ -265,11 +254,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin, ...@@ -265,11 +254,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin,
double textScaleFactor = 1.0, double textScaleFactor = 1.0,
TextSelection? selection, TextSelection? selection,
required ViewportOffset offset, required ViewportOffset offset,
@Deprecated(
'Uses the textSelectionDelegate.userUpdateTextEditingValue instead. '
'This feature was deprecated after v1.26.0-17.2.pre.',
)
this.onSelectionChanged,
this.onCaretChanged, this.onCaretChanged,
this.ignorePointer = false, this.ignorePointer = false,
bool readOnly = false, bool readOnly = false,
...@@ -501,14 +485,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin, ...@@ -501,14 +485,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin,
], ],
); );
} }
/// Called when the selection changes.
///
/// If this is null, then selection changes will be ignored.
@Deprecated(
'Uses the textSelectionDelegate.userUpdateTextEditingValue instead. '
'This feature was deprecated after v1.26.0-17.2.pre.',
)
SelectionChangedHandler? onSelectionChanged;
double? _textLayoutLastMaxWidth; double? _textLayoutLastMaxWidth;
double? _textLayoutLastMinWidth; double? _textLayoutLastMinWidth;
...@@ -731,7 +707,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin, ...@@ -731,7 +707,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin,
} }
void _setTextEditingValue(TextEditingValue newValue, SelectionChangedCause cause) { void _setTextEditingValue(TextEditingValue newValue, SelectionChangedCause cause) {
textSelectionDelegate.textEditingValue = newValue;
textSelectionDelegate.userUpdateTextEditingValue(newValue, cause); textSelectionDelegate.userUpdateTextEditingValue(newValue, cause);
} }
...@@ -751,28 +726,12 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin, ...@@ -751,28 +726,12 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin,
extentOffset: math.min(nextSelection.extentOffset, textLength), extentOffset: math.min(nextSelection.extentOffset, textLength),
); );
} }
_handleSelectionChange(nextSelection, cause);
_setTextEditingValue( _setTextEditingValue(
textSelectionDelegate.textEditingValue.copyWith(selection: nextSelection), textSelectionDelegate.textEditingValue.copyWith(selection: nextSelection),
cause, cause,
); );
} }
void _handleSelectionChange(
TextSelection nextSelection,
SelectionChangedCause cause,
) {
// Changes made by the keyboard can sometimes be "out of band" for listening
// components, so always send those events, even if we didn't think it
// changed. Also, focusing an empty field is sent as a selection change even
// if the selection offset didn't change.
final bool focusingEmpty = nextSelection.baseOffset == 0 && nextSelection.extentOffset == 0 && !hasFocus;
if (nextSelection == selection && cause != SelectionChangedCause.keyboard && !focusingEmpty) {
return;
}
onSelectionChanged?.call(nextSelection, this, cause);
}
@override @override
void markNeedsPaint() { void markNeedsPaint() {
super.markNeedsPaint(); super.markNeedsPaint();
......
...@@ -965,17 +965,6 @@ mixin TextSelectionDelegate { ...@@ -965,17 +965,6 @@ mixin TextSelectionDelegate {
/// Gets the current text input. /// Gets the current text input.
TextEditingValue get textEditingValue; TextEditingValue get textEditingValue;
/// Indicates that the user has requested the delegate to replace its current
/// text editing state with [value].
///
/// The new [value] is treated as user input and thus may subject to input
/// formatting.
@Deprecated(
'Use the userUpdateTextEditingValue instead. '
'This feature was deprecated after v1.26.0-17.2.pre.',
)
set textEditingValue(TextEditingValue value) {}
/// Indicates that the user has requested the delegate to replace its current /// Indicates that the user has requested the delegate to replace its current
/// text editing state with [value]. /// text editing state with [value].
/// ///
......
...@@ -32,7 +32,6 @@ void main() { ...@@ -32,7 +32,6 @@ void main() {
extentOffset: 3, extentOffset: 3,
affinity: TextAffinity.upstream, affinity: TextAffinity.upstream,
), ),
onSelectionChanged: (_, __, ___) { },
); );
editable.layout(BoxConstraints.loose(const Size(1000.0, 1000.0))); editable.layout(BoxConstraints.loose(const Size(1000.0, 1000.0)));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment