diff --git a/pkg/gui/list_view.go b/pkg/gui/list_view.go index ccec0b60e..bea7ce233 100644 --- a/pkg/gui/list_view.go +++ b/pkg/gui/list_view.go @@ -110,8 +110,8 @@ func (gui *Gui) getListViews() []*listView { viewName: "menu", getItemsLength: func() int { return gui.getMenuView().LinesHeight() }, getSelectedLineIdxPtr: func() *int { return &gui.State.Panels.Menu.SelectedLine }, - handleFocus: gui.handleMenuSelect, - handleItemSelect: gui.handleMenuSelect, + handleFocus: gui.wrappedHandler(gui.handleMenuSelect), + handleItemSelect: gui.wrappedHandler(gui.handleMenuSelect), // need to add a layer of indirection here because the callback changes during runtime handleClickSelectedItem: gui.wrappedHandler(func() error { return gui.State.Panels.Menu.OnPress(gui.g, nil) }), gui: gui, diff --git a/pkg/gui/menu_panel.go b/pkg/gui/menu_panel.go index b8fc80b81..bfa29cd75 100644 --- a/pkg/gui/menu_panel.go +++ b/pkg/gui/menu_panel.go @@ -16,8 +16,8 @@ type menuItem struct { // list panel functions -func (gui *Gui) handleMenuSelect(g *gocui.Gui, v *gocui.View) error { - v.FocusPoint(0, gui.State.Panels.Menu.SelectedLine) +func (gui *Gui) handleMenuSelect() error { + gui.getMenuView().FocusPoint(0, gui.State.Panels.Menu.SelectedLine) return nil } diff --git a/pkg/gui/view_helpers.go b/pkg/gui/view_helpers.go index d9a9c0a94..66c601d95 100644 --- a/pkg/gui/view_helpers.go +++ b/pkg/gui/view_helpers.go @@ -219,7 +219,7 @@ func (gui *Gui) previousView(g *gocui.Gui, v *gocui.View) error { func (gui *Gui) newLineFocused(g *gocui.Gui, v *gocui.View) error { switch v.Name() { case "menu": - return gui.handleMenuSelect(g, v) + return gui.handleMenuSelect() case "status": return gui.handleStatusSelect(g, v) case "files":