aboutsummaryrefslogtreecommitdiffstats
path: root/worker
diff options
context:
space:
mode:
authorBence Ferdinandy <bence@ferdinandy.com>2024-06-21 21:55:33 +0200
committerRobin Jarry <robin@jarry.cc>2024-06-23 22:13:30 +0200
commite2a9cd0881593c3b3a24863ceb535367c5570888 (patch)
tree1b8310bb83f0c9f8f6f1504e9d9e17674ac57b55 /worker
parenta37ae231061e027233dc159900846f75c32a6d18 (diff)
downloadaerc-e2a9cd0881593c3b3a24863ceb535367c5570888.tar.gz
query: allow forcing overwrite of existing folder
Currently, when using :query the user is forced to create a new folder for every query, since aerc doesn't allow overwriting an existing folder. Actually, "overwriting" an existing folder with a query is a non-destructive operation in the sense, that the underlying maildir is not touched, the only thing lost is the state in aerc. The current behaviour doesn't allow for a simple `:query -n query ` type of binding. Allow overwriting an existing folder with the -f flag. Changelog-added: Allow using existing directory name with `:query -f`. Signed-off-by: Bence Ferdinandy <bence@ferdinandy.com> Acked-by: Robin Jarry <robin@jarry.cc>
Diffstat (limited to 'worker')
-rw-r--r--worker/notmuch/worker.go2
-rw-r--r--worker/types/messages.go1
2 files changed, 2 insertions, 1 deletions
diff --git a/worker/notmuch/worker.go b/worker/notmuch/worker.go
index fe41446e..a36b44d4 100644
--- a/worker/notmuch/worker.go
+++ b/worker/notmuch/worker.go
@@ -365,7 +365,7 @@ func (w *worker) handleOpenDirectory(msg *types.OpenDirectory) error {
q, exists = w.dynamicNameQueryMap[msg.Directory]
}
}
- if !exists {
+ if !exists || msg.Force {
q = msg.Query
if q == "" {
q = msg.Directory
diff --git a/worker/types/messages.go b/worker/types/messages.go
index bbc430ca..9a2d43f8 100644
--- a/worker/types/messages.go
+++ b/worker/types/messages.go
@@ -102,6 +102,7 @@ type OpenDirectory struct {
Context context.Context
Directory string
Query string
+ Force bool
}
type FetchDirectoryContents struct {