buildTextSpan method

  1. @override
TextSpan buildTextSpan({
  1. BuildContext? context,
  2. TextStyle? style,
  3. required bool withComposing,
})
override

Builds TextSpan from current editing value.

By default makes text in composing range appear as underlined. Descendants can override this method to customize appearance of text.

Implementation

@override
TextSpan buildTextSpan({BuildContext? context, TextStyle? style, required bool withComposing}) {
  final List<TextSpan> textSpanChildren = [];

  text.splitMapJoin(
    _combinedPattern,
    onMatch: (Match match) => _addStyledTextOnMatch(textSpanChildren, match),
    onNonMatch: (String nonMatchText) => _addTextOnNonMatch(textSpanChildren, nonMatchText, style),
  );

  return TextSpan(style: style, children: textSpanChildren);
}