setDiff method
Sets the raw unified diff content and parses it.
Returns a new model with parsed and rendered diff content loaded into the viewport.
Implementation
GitDiffModel setDiff(String rawDiff) {
final parsedFiles = _parseDiff(rawDiff);
final layout = copyWith(horizontalOffset: 0)._buildLayout(parsedFiles);
final rendered = layout.lines;
final newViewport = _viewport.copyWith(
width: width,
height: height,
lines: rendered,
);
return copyWith(
files: parsedFiles,
horizontalOffset: 0,
renderedLines: rendered,
viewport: newViewport,
layout: layout,
);
}