From e85310c0a92a89167530241bdc3fc5f66a48706d Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Sun, 10 Nov 2019 16:20:35 +1100 Subject: add mouse support --- pkg/gui/menu_panel.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'pkg/gui/menu_panel.go') diff --git a/pkg/gui/menu_panel.go b/pkg/gui/menu_panel.go index 2d08a010b..f15b99d76 100644 --- a/pkg/gui/menu_panel.go +++ b/pkg/gui/menu_panel.go @@ -82,7 +82,9 @@ func (gui *Gui) createMenu(title string, items interface{}, itemCount int, handl return gui.returnFocus(gui.g, menuView) } - for _, key := range []gocui.Key{gocui.KeySpace, gocui.KeyEnter} { + gui.State.Panels.Menu.OnPress = wrappedHandlePress + + for _, key := range []gocui.Key{gocui.KeySpace, gocui.KeyEnter, 'y'} { _ = gui.g.DeleteKeybinding("menu", key, gocui.ModNone) if err := gui.g.SetKeybinding("menu", key, gocui.ModNone, wrappedHandlePress); err != nil { @@ -101,3 +103,15 @@ func (gui *Gui) createMenu(title string, items interface{}, itemCount int, handl }) return nil } + +func (gui *Gui) handleMenuClick(g *gocui.Gui, v *gocui.View) error { + itemCount := gui.State.MenuItemCount + handleSelect := gui.handleMenuSelect + selectedLine := &gui.State.Panels.Menu.SelectedLine + + if err := gui.handleClick(v, itemCount, selectedLine, handleSelect); err != nil { + return err + } + + return gui.State.Panels.Menu.OnPress(g, v) +} -- cgit v1.2.3