TerminalGraphicsFrame.scan constructor
TerminalGraphicsFrame.scan(
- String value
Scans value for retained graphics visible in the frame.
Implementation
factory TerminalGraphicsFrame.scan(String value) {
var hasRetainedGraphics = false;
final retainedImageIds = <int>{};
for (final control in parseTerminalGraphicsControls(value)) {
if (control.protocol != TerminalGraphicsProtocol.kitty ||
!control.displaysImage) {
continue;
}
hasRetainedGraphics = true;
final id = control.imageId;
if (id != null) retainedImageIds.add(id);
}
if (!hasRetainedGraphics && retainedImageIds.isEmpty) {
return TerminalGraphicsFrame.empty;
}
return TerminalGraphicsFrame(
hasRetainedGraphics: hasRetainedGraphics,
retainedImageIds: retainedImageIds,
);
}