From 965d0b1cc4b6441080fd5593c7348e3a31ccb5d3 Mon Sep 17 00:00:00 2001 From: Michael T Date: Mon, 10 Jan 2022 13:25:13 +0500 Subject: [PATCH] fix pop for menu --- pkg/gui/view_helpers.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkg/gui/view_helpers.go b/pkg/gui/view_helpers.go index d7a327d4..89c92ea5 100644 --- a/pkg/gui/view_helpers.go +++ b/pkg/gui/view_helpers.go @@ -125,7 +125,10 @@ func (gui *Gui) pushPreviousView(name string) { } func (gui *Gui) returnFocus(g *gocui.Gui, v *gocui.View) error { - previousViewName := gui.popPreviousView() + previousViewName := gui.peekPreviousView() + if g.CurrentView() != nil && !gui.isPopupPanel(g.CurrentView().Name()) { + gui.popPreviousView() + } previousView, err := g.View(previousViewName) if err != nil { // always fall back to services view if there's no 'previous' view stored @@ -143,6 +146,7 @@ func (gui *Gui) switchFocus(g *gocui.Gui, oldView, newView *gocui.View, returnin // we assume we'll never want to return focus to a popup panel i.e. // we should never stack popup panels if oldView != nil && !gui.isPopupPanel(oldView.Name()) && !returning { + gui.popPreviousView() gui.pushPreviousView(oldView.Name()) }