INNER CODE UNIT · Dart
span
reqable/re-editor · lib/src/_code_field.dart:870
final InlineSpan? span = paragraph?.getSpanForPosition(position - paragraph.offset + paintOffset);
if (span is MouseTrackerAnnotationTextSpan) {
result.add(HitTestEntry(_MouseTrackerAnnotationTextSpan(
id: paragraph!.index,
rects: paragraph.getRangeRects(paragraph.getRangeForSpan(span)).map((rect) {
return Rect.fromPoints(localToGlobal(rect.topLeft + paragraph.offset - paintOffset), localToGlobal(rect.bottomRight + paragraph.offset - paintOffset));
}).toList(),
span: span,
)));
} else if (span is HitTestTarget) {
result.add(HitTestEntry(span as HitTestTarget));
}
if (_chunkIndicators.where((chunk) => chunk.canExpand && chunk.region.contains(position)).isNotEmpty) {
_cursor = SystemMouseCursors.click;
} else if (span is TextSpan && span.mouseCursor != MouseCursor.defer) {
_cursor = span.mouseCursor;
} else {
_cursor = SystemMouseCursors.text;