summaryrefslogtreecommitdiff
path: root/pkg/gui/gui-util.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/gui/gui-util.go')
-rw-r--r--pkg/gui/gui-util.go18
1 files changed, 9 insertions, 9 deletions
diff --git a/pkg/gui/gui-util.go b/pkg/gui/gui-util.go
index a0780bd..f9bba41 100644
--- a/pkg/gui/gui-util.go
+++ b/pkg/gui/gui-util.go
@@ -80,15 +80,15 @@ func (gui *Gui) previousViewOfGroup(g *gocui.Gui, v *gocui.View, group []viewFea
// siwtch the app mode
// TODO: switching can be made with conventional iteration
func (gui *Gui) switchMode(g *gocui.Gui, v *gocui.View) error {
- switch mode := gui.State.Mode.ModeID; mode {
- case FetchMode:
- gui.State.Mode = pullMode
- case PullMode:
- gui.State.Mode = mergeMode
- case MergeMode:
- gui.State.Mode = fetchMode
- default:
- gui.State.Mode = fetchMode
+ for i, mode := range modes {
+ if mode == gui.State.Mode {
+ if i == len(modes)-1 {
+ gui.State.Mode = modes[0]
+ break
+ }
+ gui.State.Mode = modes[i+1]
+ break
+ }
}
gui.updateKeyBindingsView(g, mainViewFeature.Name)
return nil