summaryrefslogtreecommitdiffstats
path: root/pkg/gui/menu_panel.go
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2018-09-10 20:17:39 +1000
committerJesse Duffield <jessedduffield@gmail.com>2018-09-10 20:17:39 +1000
commit52b132fe01156d8c7654180d03e40726e18692cd (patch)
treec244c43b94a2ed2968629d3095f08f2f11e466ca /pkg/gui/menu_panel.go
parent7f4371ad71247d64249299b390725f073e7fbfad (diff)
better handling of cursor and origin positionings
Diffstat (limited to 'pkg/gui/menu_panel.go')
-rw-r--r--pkg/gui/menu_panel.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkg/gui/menu_panel.go b/pkg/gui/menu_panel.go
index 68041390d..f52ceda07 100644
--- a/pkg/gui/menu_panel.go
+++ b/pkg/gui/menu_panel.go
@@ -8,6 +8,12 @@ import (
"github.com/jesseduffield/lazygit/pkg/utils"
)
+// I need to store the handler function in state and it will take an interface and do something with it
+// I need to have another function describing how to display one of the structs
+// perhaps this calls for an interface where the struct is Binding and the interface has the methods Display and Execute
+// but this means that for the one struct I can only have one possible display/execute function, but I want to use whatever I want.
+// Would I ever need to use different handlers for different things? Maybe I should assume not given that I can cross that bridge when I come to it
+
func (gui *Gui) handleMenuPress(g *gocui.Gui, v *gocui.View) error {
lineNumber := gui.getItemPosition(v)
if gui.State.Keys[lineNumber].Key == nil {
@@ -106,11 +112,11 @@ func (gui *Gui) handleMenu(g *gocui.Gui, v *gocui.View) error {
content := append(contentPanel, contentGlobal...)
gui.State.Keys = append(bindingsPanel, bindingsGlobal...)
// append newline at the end so the last line would be selectable
- contentJoined := strings.Join(content, "\n") + "\n"
+ contentJoined := strings.Join(content, "\n")
// y1-1 so there will not be an extra space at the end of panel
x0, y0, x1, y1 := gui.getConfirmationPanelDimensions(g, contentJoined)
- menuView, _ := g.SetView("menu", x0, y0, x1, y1-1, 0)
+ menuView, _ := g.SetView("menu", x0, y0, x1, y1, 0)
menuView.Title = strings.Title(gui.Tr.SLocalize("menu"))
menuView.FgColor = gocui.ColorWhite