diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2020-03-29 10:31:34 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2020-03-29 11:37:29 +1100 |
commit | a8db672ffbeba92a32ad34f475760c78aa73303e (patch) | |
tree | e941074a316d4e7df057552a05f9d873ed6fb47a /pkg/gui/filtering.go | |
parent | 76b66ae26f428c58b3b0993d8da4bf31d5933dc7 (diff) |
refactor gui.go
Diffstat (limited to 'pkg/gui/filtering.go')
-rw-r--r-- | pkg/gui/filtering.go | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/pkg/gui/filtering.go b/pkg/gui/filtering.go new file mode 100644 index 000000000..66232e3fb --- /dev/null +++ b/pkg/gui/filtering.go @@ -0,0 +1,21 @@ +package gui + +import "github.com/jesseduffield/gocui" + +func (gui *Gui) inFilterMode() bool { + return gui.State.FilterPath != "" +} + +func (gui *Gui) validateNotInFilterMode() (bool, error) { + if gui.inFilterMode() { + return false, gui.createConfirmationPanel(gui.g, gui.g.CurrentView(), true, gui.Tr.SLocalize("MustExitFilterModeTitle"), gui.Tr.SLocalize("MustExitFilterModePrompt"), func(*gocui.Gui, *gocui.View) error { + return gui.exitFilterMode() + }, nil) + } + return true, nil +} + +func (gui *Gui) exitFilterMode() error { + gui.State.FilterPath = "" + return gui.Errors.ErrRestart +} |