diff options
author | Robin Jarry <robin@jarry.cc> | 2022-02-22 20:10:54 +0100 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2022-02-23 11:27:19 +0100 |
commit | 8935c452939cd707d7bd060292da502157625fa4 (patch) | |
tree | 508896a9cc225a0df55bd2a9b0631f6cf5d4eca2 /commands | |
parent | df8c129235d9f26892caf89f056adc0e16b3d6b6 (diff) | |
download | aerc-8935c452939cd707d7bd060292da502157625fa4.tar.gz |
search/filter: display in extra status
Add an extra attribute to the status line. When non-empty, display it
after the current status.
Set that extra status after a successful :search or :filter. Remove it
after :clear.
Signed-off-by: Robin Jarry <robin@jarry.cc>
Diffstat (limited to 'commands')
-rw-r--r-- | commands/account/clear.go | 4 | ||||
-rw-r--r-- | commands/account/search.go | 9 |
2 files changed, 6 insertions, 7 deletions
diff --git a/commands/account/clear.go b/commands/account/clear.go index 3fecc132..259a9de8 100644 --- a/commands/account/clear.go +++ b/commands/account/clear.go @@ -2,8 +2,8 @@ package account import ( "errors" + "git.sr.ht/~rjarry/aerc/widgets" - "time" ) type Clear struct{} @@ -30,6 +30,6 @@ func (Clear) Execute(aerc *widgets.Aerc, args []string) error { return errors.New("Cannot perform action. Messages still loading") } store.ApplyClear() - aerc.PushStatus("Clear complete.", 10*time.Second) + aerc.ClearExtraStatus() return nil } diff --git a/commands/account/search.go b/commands/account/search.go index e12f9725..86d9deac 100644 --- a/commands/account/search.go +++ b/commands/account/search.go @@ -3,7 +3,6 @@ package account import ( "errors" "fmt" - "time" "git.sr.ht/~rjarry/aerc/widgets" ) @@ -34,16 +33,16 @@ func (SearchFilter) Execute(aerc *widgets.Aerc, args []string) error { var cb func([]uint32) if args[0] == "filter" { - aerc.PushStatus("Filtering...", 10*time.Second) + aerc.SetExtraStatus("Filtering...") cb = func(uids []uint32) { - aerc.PushStatus(fmt.Sprintf("Filter complete %s", args), 20*time.Second) + aerc.SetExtraStatus(fmt.Sprintf("%s", args)) acct.Logger().Printf("Filter results: %v", uids) store.ApplyFilter(uids) } } else { - aerc.PushStatus("Searching...", 10*time.Second) + aerc.SetExtraStatus("Searching...") cb = func(uids []uint32) { - aerc.PushStatus(fmt.Sprintf("Search complete %s", args), 20*time.Second) + aerc.SetExtraStatus(fmt.Sprintf("%s", args)) acct.Logger().Printf("Search results: %v", uids) store.ApplySearch(uids) // TODO: Remove when stores have multiple OnUpdate handlers |