summaryrefslogtreecommitdiffstats
path: root/pkg/gui/view_helpers.go
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2020-08-19 19:31:58 +1000
committerJesse Duffield <jessedduffield@gmail.com>2020-08-23 14:29:18 +1000
commit2fac2f9f1f5f662c7a382e1b625d6128caa80093 (patch)
treecf7c71db43a503d095ce90026201db65c57fdbb7 /pkg/gui/view_helpers.go
parente4beaf4de96afee804d019e7c19eee833d3b1801 (diff)
WIP
Diffstat (limited to 'pkg/gui/view_helpers.go')
-rw-r--r--pkg/gui/view_helpers.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/pkg/gui/view_helpers.go b/pkg/gui/view_helpers.go
index db5e32848..2c8f9066b 100644
--- a/pkg/gui/view_helpers.go
+++ b/pkg/gui/view_helpers.go
@@ -371,3 +371,23 @@ func (gui *Gui) clearEditorView(v *gocui.View) {
_ = v.SetCursor(0, 0)
_ = v.SetOrigin(0, 0)
}
+
+func (gui *Gui) onViewTabClick(viewName string, tabIndex int) error {
+ context := gui.ViewTabContextMap[viewName][tabIndex].contexts[0]
+
+ return gui.switchContext(context)
+}
+
+func (gui *Gui) handleNextTab(g *gocui.Gui, v *gocui.View) error {
+ return gui.onViewTabClick(
+ v.Name(),
+ utils.ModuloWithWrap(v.TabIndex+1, len(v.Tabs)),
+ )
+}
+
+func (gui *Gui) handlePrevTab(g *gocui.Gui, v *gocui.View) error {
+ return gui.onViewTabClick(
+ v.Name(),
+ utils.ModuloWithWrap(v.TabIndex-1, len(v.Tabs)),
+ )
+}