apply method

  1. @override
Future<void> apply(
  1. List<TextEditingDelta> deltas
)

Applies insertion, deletion and replacement to the text currently being edited.

For more information, please check TextEditingDelta.

Implementation

@override
Future<void> apply(List<TextEditingDelta> deltas) async {
  final formattedDeltas = deltas.map((e) => e.format()).toList();
  for (final delta in formattedDeltas) {
    _updateComposing(delta);

    switch (delta) {
      case TextEditingDeltaInsertion _:
        await onInsert(delta);
      case TextEditingDeltaDeletion _:
        await onDelete(delta);
      case TextEditingDeltaReplacement _:
        await onReplace(delta);
      case TextEditingDeltaNonTextUpdate _:
        await onNonTextUpdate(delta);
    }
  }
}