mirror of
https://github.com/ChrisTitusTech/linutil.git
synced 2024-11-21 21:09:42 +00:00
do not exit linutil in confirmation prompt when q is pressed (#758)
* do not exit linutil in confirmation prompt when q is pressed * remove cap support * add ``ctrl + c`` exiting Co-authored-by: Adam Perkowski <adas1per@protonmail.com> --------- Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com> Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
This commit is contained in:
parent
72dfb29969
commit
fc2d731754
|
@ -88,7 +88,7 @@ impl FloatContent for ConfirmPrompt {
|
||||||
use KeyCode::*;
|
use KeyCode::*;
|
||||||
self.status = match key.code {
|
self.status = match key.code {
|
||||||
Char('y') | Char('Y') => ConfirmStatus::Confirm,
|
Char('y') | Char('Y') => ConfirmStatus::Confirm,
|
||||||
Char('n') | Char('N') | Esc => ConfirmStatus::Abort,
|
Char('n') | Char('N') | Esc | Char('q') => ConfirmStatus::Abort,
|
||||||
Char('j') => {
|
Char('j') => {
|
||||||
self.scroll_down();
|
self.scroll_down();
|
||||||
ConfirmStatus::None
|
ConfirmStatus::None
|
||||||
|
@ -116,10 +116,10 @@ impl FloatContent for ConfirmPrompt {
|
||||||
"Confirmation prompt",
|
"Confirmation prompt",
|
||||||
Box::new([
|
Box::new([
|
||||||
Shortcut::new("Continue", ["Y", "y"]),
|
Shortcut::new("Continue", ["Y", "y"]),
|
||||||
Shortcut::new("Abort", ["N", "n"]),
|
Shortcut::new("Abort", ["N", "n", "q", "Esc"]),
|
||||||
Shortcut::new("Scroll up", ["j"]),
|
Shortcut::new("Scroll up", ["k"]),
|
||||||
Shortcut::new("Scroll down", ["k"]),
|
Shortcut::new("Scroll down", ["j"]),
|
||||||
Shortcut::new("Close linutil", ["CTRL-c", "q"]),
|
Shortcut::new("Close linutil", ["CTRL-c"]),
|
||||||
]),
|
]),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -420,11 +420,15 @@ impl AppState {
|
||||||
// This should be defined first to allow closing
|
// This should be defined first to allow closing
|
||||||
// the application even when not drawable ( If terminal is small )
|
// the application even when not drawable ( If terminal is small )
|
||||||
// Exit on 'q' or 'Ctrl-c' input
|
// Exit on 'q' or 'Ctrl-c' input
|
||||||
if matches!(
|
if matches!(self.focus, Focus::TabList | Focus::List)
|
||||||
self.focus,
|
&& (key.code == KeyCode::Char('q')
|
||||||
Focus::TabList | Focus::List | Focus::ConfirmationPrompt(_)
|
|| key.modifiers.contains(KeyModifiers::CONTROL) && key.code == KeyCode::Char('c'))
|
||||||
) && (key.code == KeyCode::Char('q')
|
{
|
||||||
|| key.modifiers.contains(KeyModifiers::CONTROL) && key.code == KeyCode::Char('c'))
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if matches!(self.focus, Focus::ConfirmationPrompt(_))
|
||||||
|
&& (key.modifiers.contains(KeyModifiers::CONTROL) && key.code == KeyCode::Char('c'))
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user