diff options
author | Robin Jarry <robin@jarry.cc> | 2023-10-10 00:08:31 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-10-10 11:38:01 +0200 |
commit | bc176bd61ba726351a489cabf4da16a47dc5ec3b (patch) | |
tree | bbf06f731592d072f3d6f76f1648d61989375f2e /commands/account/search.go | |
parent | 598e4a5803578ab3e291f232d6aad31b4efd8ea4 (diff) | |
download | aerc-bc176bd61ba726351a489cabf4da16a47dc5ec3b.tar.gz |
app: export global functions
The single Aerc object is passed around in almost all command functions.
This hinders readability.
Store the single Aerc instance as a global variable. Export public
functions from the app package to access methods of that object. Remove
all explicit references to *app.Aerc and replace them with calls to
these functions. For references to private/unexported fields and
functions from within the app package, directly access the global aerc
object.
Signed-off-by: Robin Jarry <robin@jarry.cc>
Acked-by: Moritz Poldrack <moritz@poldrack.dev>
Diffstat (limited to 'commands/account/search.go')
-rw-r--r-- | commands/account/search.go | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/commands/account/search.go b/commands/account/search.go index 04f7ddc3..51bd3042 100644 --- a/commands/account/search.go +++ b/commands/account/search.go @@ -27,7 +27,6 @@ func (SearchFilter) Aliases() []string { } func (s SearchFilter) CompleteOption( - aerc *app.Aerc, r rune, search string, ) []string { @@ -36,20 +35,20 @@ func (s SearchFilter) CompleteOption( case 'x', 'X': valid = commands.GetFlagList() case 't', 'f', 'c': - valid = commands.GetAddress(aerc, search) + valid = commands.GetAddress(search) case 'd': valid = commands.GetDateList() default: } - return commands.CompletionFromList(aerc, valid, []string{search}) + return commands.CompletionFromList(valid, []string{search}) } -func (SearchFilter) Complete(aerc *app.Aerc, args []string) []string { +func (SearchFilter) Complete(args []string) []string { return nil } -func (SearchFilter) Execute(aerc *app.Aerc, args []string) error { - acct := aerc.SelectedAccount() +func (SearchFilter) Execute(args []string) error { + acct := app.SelectedAccount() if acct == nil { return errors.New("No account selected") } @@ -60,7 +59,7 @@ func (SearchFilter) Execute(aerc *app.Aerc, args []string) error { if args[0] == "filter" { if len(args[1:]) == 0 { - return Clear{}.Execute(aerc, []string{"clear"}) + return Clear{}.Execute([]string{"clear"}) } acct.SetStatus(state.FilterActivity("Filtering..."), state.Search("")) store.SetFilter(args[1:]) |