Skip to main content

Selection Copy

Set enableSelection to enable render-backed selection:

AnimatedStreamingMarkdown(
blocks: result.blocks,
enableSelection: true,
);

When possible, copied content preserves Markdown source semantics rather than only visual text.

Supported copy behavior includes:

  • Paragraphs and headings.
  • Links as Markdown links.
  • Lists and task lists.
  • Block quotes.
  • Code fences.
  • Tables.
  • HTML blocks.
  • Footnote references and definitions.

Stable Drag Selection

Selection endpoints are stored as absolute source offsets, then projected to the text rectangles currently on screen. This keeps a chosen range anchored while streaming appends content or an ancestor scrolls.

The renderer supports:

  • Partial text selection inside individual table cells.
  • Dragging selection across a table into blocks above or below it.
  • Vertical auto-scroll near a containing viewport edge.
  • Horizontal auto-scroll near either edge of a wide table.

Use selectionStrategy to choose plain, markdown, or rich clipboard content. Further performance tuning and feature additions will follow real application needs and user requests.

See Roadmap for the current planning notes.