From 8d536f02e07afd0855d0ffb288caf1a050f4e92d Mon Sep 17 00:00:00 2001 From: Jeevitha Kannan K S Date: Sat, 30 Nov 2024 18:55:07 +0530 Subject: [PATCH] Update config section readme. Fix skipconfirmation not working with config --- README.md | 7 ++++++- tui/src/state.rs | 33 ++++++++++++++++----------------- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index c0568171..6efc4806 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,9 @@ Note that crates installed using `cargo install` require manual updating with `c Linutil supports configuration through a TOML config file. Path to the file can be specified with `--config` (or `-c`). Available options: -- `auto_execute` - a list of commands to execute automatically (can be combined with `--skip-confirmation`) +- `auto_execute` - A list of commands to execute automatically (can be combined with `--skip-confirmation`) +- `skip_confirmation` - Boolean ( Equal to `--skip-confirmation`) +- `size_bypass` - Boolean ( Equal to `--size-bypass` ) Example config: ```toml @@ -118,6 +120,9 @@ auto_execute = [ "Alacritty", "Kitty" ] + +skip_confirmation = true +size_bypass = true ``` ```bash diff --git a/tui/src/state.rs b/tui/src/state.rs index cec9cc3c..be1bbb48 100644 --- a/tui/src/state.rs +++ b/tui/src/state.rs @@ -155,18 +155,22 @@ impl AppState { } fn spawn_confirmprompt(&mut self) { - let cmd_names: Vec<_> = self - .selected_commands - .iter() - .map(|node| node.name.as_str()) - .collect(); + if self.skip_confirmation { + self.handle_confirm_command(); + } else { + let cmd_names: Vec<_> = self + .selected_commands + .iter() + .map(|node| node.name.as_str()) + .collect(); - let prompt = ConfirmPrompt::new(&cmd_names); - self.focus = Focus::ConfirmationPrompt(Float::new( - Box::new(prompt), - CONFIRM_PROMPT_FLOAT_SIZE, - CONFIRM_PROMPT_FLOAT_SIZE, - )); + let prompt = ConfirmPrompt::new(&cmd_names); + self.focus = Focus::ConfirmationPrompt(Float::new( + Box::new(prompt), + CONFIRM_PROMPT_FLOAT_SIZE, + CONFIRM_PROMPT_FLOAT_SIZE, + )); + } } fn get_list_item_shortcut(&self) -> Box<[Shortcut]> { @@ -795,12 +799,7 @@ impl AppState { self.selected_commands.push(node); } } - - if self.skip_confirmation { - self.handle_confirm_command(); - } else { - self.spawn_confirmprompt(); - } + self.spawn_confirmprompt(); } SelectedItem::None => {} }