From ce1211641830029000f7f3c56444dc509487d6b2 Mon Sep 17 00:00:00 2001 From: Joe Lim <50560759+joelim-work@users.noreply.github.com> Date: Sun, 7 Apr 2024 23:47:49 +1000 Subject: Run `on-quit` when terminal closes (#1681) --- app.go | 6 ++---- eval.go | 6 ++++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app.go b/app.go index f48bfce..2f1fec9 100644 --- a/app.go +++ b/app.go @@ -64,6 +64,8 @@ func newApp(ui *ui, nav *nav) *app { } func (app *app) quit() { + onQuit(app) + if gOpts.history { if err := app.writeHistory(); err != nil { log.Printf("writing history file: %s", err) @@ -320,10 +322,6 @@ func (app *app) loop() { continue } - if cmd, ok := gOpts.cmds["on-quit"]; ok { - cmd.eval(app, nil) - } - app.quit() app.nav.previewChan <- "" diff --git a/eval.go b/eval.go index 3786119..02d1dda 100644 --- a/eval.go +++ b/eval.go @@ -580,6 +580,12 @@ func onSelect(app *app) { } } +func onQuit(app *app) { + if cmd, ok := gOpts.cmds["on-quit"]; ok { + cmd.eval(app, nil) + } +} + func splitKeys(s string) (keys []string) { for i := 0; i < len(s); { r, w := utf8.DecodeRuneInString(s[i:]) -- cgit v1.2.3