summaryrefslogtreecommitdiffstats
path: root/pkg/gui/controllers/helpers/inline_status_helper.go
diff options
context:
space:
mode:
authorStefan Haller <stefan@haller-berlin.de>2024-04-14 20:06:25 +0200
committerStefan Haller <stefan@haller-berlin.de>2024-04-18 10:10:30 +0200
commit1869fda8006731ecc15b748028ce1b9742a4c756 (patch)
treef4f3793d6bcd55d14db39c6919c943b30a0848a6 /pkg/gui/controllers/helpers/inline_status_helper.go
parent5396a706611220077d32d01058d5e4b025eab0de (diff)
Make OnWorker callback return an error
This lets us get rid of a few more calls to Error(), and it simplifies things for clients of OnWorker: they can simply return an error from their callback like we do everywhere else.
Diffstat (limited to 'pkg/gui/controllers/helpers/inline_status_helper.go')
-rw-r--r--pkg/gui/controllers/helpers/inline_status_helper.go12
1 files changed, 3 insertions, 9 deletions
diff --git a/pkg/gui/controllers/helpers/inline_status_helper.go b/pkg/gui/controllers/helpers/inline_status_helper.go
index cfe7eb844..b13f19473 100644
--- a/pkg/gui/controllers/helpers/inline_status_helper.go
+++ b/pkg/gui/controllers/helpers/inline_status_helper.go
@@ -68,17 +68,11 @@ func (self *InlineStatusHelper) WithInlineStatus(opts InlineStatusOpts, f func(g
view := context.GetView()
visible := view.Visible && self.windowHelper.TopViewInWindow(context.GetWindowName(), false) == view
if visible && context.IsItemVisible(opts.Item) {
- self.c.OnWorker(func(task gocui.Task) {
+ self.c.OnWorker(func(task gocui.Task) error {
self.start(opts)
+ defer self.stop(opts)
- err := f(inlineStatusHelperTask{task, self, opts})
- if err != nil {
- self.c.OnUIThread(func() error {
- return err
- })
- }
-
- self.stop(opts)
+ return f(inlineStatusHelperTask{task, self, opts})
})
} else {
message := presentation.ItemOperationToString(opts.Operation, self.c.Tr)