From 11ebc775050f0dbd7efc15b4a12c8364caa6909a Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Thu, 1 Feb 2024 10:37:33 -0600 Subject: [PATCH] correctly delete window gocui views Signed-off-by: Jeff Carr --- plugin.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plugin.go b/plugin.go index a1c6a08..bc1fed8 100644 --- a/plugin.go +++ b/plugin.go @@ -105,6 +105,18 @@ func action(a widget.Action) { log.Log(INFO, "action() END") } +func (w *guiWidget) deleteGocuiViews() { + if w.v == nil { + // no gocui view to delete for this widget + } else { + me.baseGui.DeleteView(w.cuiName) + w.v = nil + } + for _, child := range w.children { + child.deleteGocuiViews() + } +} + func (w *guiWidget) deleteNode() { p := w.parent for i, child := range p.children { @@ -118,6 +130,7 @@ func (w *guiWidget) deleteNode() { for i, child := range p.children { log.Log(NOW, "parent now has child:", i, child.cuiName, child.String()) } + w.deleteGocuiViews() } func (w *guiWidget) AddText(text string) {