ProgramRenderChangeSummary.fromNative constructor
ProgramRenderChangeSummary.fromNative({
- TerminalNativeDeltaFrame? nativeDelta,
- TerminalNativeCellDeltaFrame? nativeCellDelta,
- List<
TerminalNativeSpanDelta> ? nativeSpanDelta,
Builds a summary from native render deltas.
Implementation
factory ProgramRenderChangeSummary.fromNative({
TerminalNativeDeltaFrame? nativeDelta,
TerminalNativeCellDeltaFrame? nativeCellDelta,
List<TerminalNativeSpanDelta>? nativeSpanDelta,
}) {
final changedLines =
nativeCellDelta?.lines ?? const <TerminalNativeLineDelta>[];
final spanLines = nativeSpanDelta ?? const <TerminalNativeSpanDelta>[];
return ProgramRenderChangeSummary(
dirtyLineCount: nativeDelta?.lines.length ?? 0,
changedLineCount: changedLines.length,
changedCellCount: changedLines.fold<int>(
0,
(sum, line) => sum + line.cells.length,
),
changedSpanCount: spanLines.fold<int>(
0,
(sum, line) => sum + line.spans.length,
),
);
}