From e13295100bbb3a70e08eafce65e5b648ac967d11 Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Tue, 5 Aug 2025 12:38:12 +0200 Subject: [PATCH] fix: set outer mode from delayed init if there is already an overlay mode active This fixes starting flow with a command to initally open an overlay and then cancelling or exiting the overlay without loading a new mode. --- src/tui/tui.zig | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/tui/tui.zig b/src/tui/tui.zig index 9b82887..5aa13f6 100644 --- a/src/tui/tui.zig +++ b/src/tui/tui.zig @@ -196,7 +196,14 @@ fn init_input_namespace(self: *Self) InitError!void { fn init_delayed(self: *Self) command.Result { self.delayed_init_done = true; - if (self.input_mode_) |_| {} else { + if (self.input_mode_) |_| { + if (self.delayed_init_input_mode) |delayed_init_input_mode| { + if (self.input_mode_outer_ == null) { + self.input_mode_outer_ = delayed_init_input_mode; + self.delayed_init_input_mode = null; + } + } + } else { if (self.delayed_init_input_mode) |delayed_init_input_mode| { try enter_input_mode(self, delayed_init_input_mode); self.delayed_init_input_mode = null;