From a7a7e313ceeb72dca4011df4f80bb23904b642cd Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Sat, 6 Dec 2025 20:17:45 +0100 Subject: [PATCH] refactor: add tui.set_last_palette --- src/tui/tui.zig | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/tui/tui.zig b/src/tui/tui.zig index 52d4bbb..c3d5e50 100644 --- a/src/tui/tui.zig +++ b/src/tui/tui.zig @@ -85,9 +85,19 @@ clipboard_current_group_number: usize = 0, color_scheme: enum { dark, light } = .dark, color_scheme_locked: bool = false, hint_mode: HintMode = .prefix, +last_palette: ?LastPalette = null, const HintMode = enum { none, prefix, all }; +const LastPalette = struct { + type_: PaletteType, + ctx: command.Context, +}; + +pub const PaletteType = enum { + open_recent, +}; + pub const ClipboardEntry = struct { text: []const u8 = &.{}, group: usize = 0, @@ -2234,3 +2244,15 @@ fn clipboard_send_to_system_internal(self: *Self, text: []const u8) void { self.rdr_.copy_to_system_clipboard(text); } } + +pub fn set_last_palette(type_: PaletteType, ctx: command.Context) void { + const self = current(); + if (self.last_palette) |old| { + self.allocator.free(old.ctx.args.buf); + self.last_palette = null; + } + self.last_palette = .{ + .type_ = type_, + .ctx = .{ .args = ctx.args.clone(self.allocator) catch return }, + }; +}