summaryrefslogtreecommitdiff
path: root/src/dump.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/dump.zig')
-rw-r--r--src/dump.zig8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/dump.zig b/src/dump.zig
index 1420ea8f..84321457 100644
--- a/src/dump.zig
+++ b/src/dump.zig
@@ -247,6 +247,10 @@ pub const Image = struct {
petscii: bool = false,
palette: ImagePalette = .commodore,
ascii: bool = true,
+ /// A PDF's PdfFit and PdfTint, by their tag words (`width`, `filtered`);
+ /// empty, the defaults, as in dumps from before.
+ pdf_fit: []const u8 = "",
+ pdf_tint: []const u8 = "",
};
pub const Pane = struct {
@@ -961,6 +965,10 @@ fn initDump(gpa: std.mem.Allocator, opts: Options, zon_bytes: []const u8, previo
if (pardes.panes.Pdf.openPane(p, i, im.path, src.scroll + 1, .last) catch null) |restored| {
if (raw.len > 0) gpa.free(raw);
raw = &.{};
+ // Its fit and tint as they were (PdfFit, PdfTint).
+ const pv = &restored.pdf.?;
+ if (std.meta.stringToEnum(@TypeOf(pv.fit), im.pdf_fit)) |fit| if (fit != pv.fit) pardes.panes.Pdf.toggleFit(restored);
+ if (std.meta.stringToEnum(@TypeOf(pv.tint), im.pdf_tint)) |tint| while (pv.tint != tint) pardes.panes.Pdf.toggleTint(restored);
restored.cols = @max(1, src.cols);
restored.rows = @max(1, src.rows);
break :restore_image restored;