summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Milde <daniel.milde@firma.seznam.cz>2021-01-03 23:14:02 +0100
committerDaniel Milde <daniel.milde@firma.seznam.cz>2021-01-03 23:14:02 +0100
commitdfe4b4a7021c6511f5755af090608d8f938a83e9 (patch)
treee733b778aac9684afb5f5aa33308f6b4c1daefcd
parent8a9d6039ff0de0c34a34b6b7a6206650d17e5c72 (diff)
fixed handling of keys on confirmation dialogv2.0.0
-rw-r--r--cli/cli.go14
1 files changed, 12 insertions, 2 deletions
diff --git a/cli/cli.go b/cli/cli.go
index e2f1269..ace8e3e 100644
--- a/cli/cli.go
+++ b/cli/cli.go
@@ -252,14 +252,16 @@ func (ui *UI) confirmDeletion() {
SetText("Are you sure you want to delete \"" + selectedFile.Name + "\"").
AddButtons([]string{"yes", "no", "don't ask me again"}).
SetDoneFunc(func(buttonIndex int, buttonLabel string) {
+ if buttonIndex == 0 || buttonIndex == 2 {
+ ui.deleteSelected()
+ }
if buttonIndex == 1 {
- ui.pages.HidePage("confirm")
+ ui.pages.RemovePage("confirm")
return
} else if buttonIndex == 2 {
ui.askBeforeDelete = false
}
ui.pages.HidePage("confirm")
- ui.deleteSelected()
})
ui.pages.AddPage("confirm", modal, true, true)
}
@@ -279,6 +281,10 @@ func (ui *UI) keyPressed(key *tcell.EventKey) *tcell.EventKey {
}
if key.Rune() == 'h' || key.Key() == tcell.KeyLeft {
+ if ui.pages.HasPage("confirm") {
+ return key
+ }
+
if ui.currentDirPath == ui.topDirPath {
return key
}
@@ -291,6 +297,10 @@ func (ui *UI) keyPressed(key *tcell.EventKey) *tcell.EventKey {
}
if key.Rune() == 'l' || key.Key() == tcell.KeyRight {
+ if ui.pages.HasPage("confirm") {
+ return key
+ }
+
row, column := ui.table.GetSelection()
if ui.currentDirPath != ui.topDirPath && row == 0 { // do not select /..
return key