aboutsummaryrefslogtreecommitdiffstats
path: root/worker/notmuch/worker.go
diff options
context:
space:
mode:
Diffstat (limited to 'worker/notmuch/worker.go')
-rw-r--r--worker/notmuch/worker.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/worker/notmuch/worker.go b/worker/notmuch/worker.go
index ef4d4bfb..96ec0cb5 100644
--- a/worker/notmuch/worker.go
+++ b/worker/notmuch/worker.go
@@ -153,6 +153,7 @@ func (w *worker) handleConnect(msg *types.Connect) error {
return err
}
w.done(msg)
+ w.emitLabelList()
return nil
}
@@ -383,6 +384,8 @@ func (w *worker) handleModifyLabels(msg *types.ModifyLabels) error {
if err != nil {
return err
}
+ // and update the list of possible tags
+ w.emitLabelList()
w.done(msg)
return nil
}
@@ -460,6 +463,15 @@ func (w *worker) emitMessageInfo(m *Message,
return nil
}
+func (w *worker) emitLabelList() {
+ tags, err := w.db.ListTags()
+ if err != nil {
+ w.w.Logger.Printf("could not load tags: %v", err)
+ return
+ }
+ w.w.PostMessage(&types.LabelList{Labels: tags}, nil)
+}
+
func (w *worker) sort(uids []uint32,
criteria []*types.SortCriterion) ([]uint32, error) {
if len(criteria) == 0 {