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/ct.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/ct.go')
-rw-r--r-- | commands/ct.go | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/commands/ct.go b/commands/ct.go index e6b29b58..1b5659c7 100644 --- a/commands/ct.go +++ b/commands/ct.go @@ -19,21 +19,21 @@ func (ChangeTab) Aliases() []string { return []string{"ct", "change-tab"} } -func (ChangeTab) Complete(aerc *app.Aerc, args []string) []string { +func (ChangeTab) Complete(args []string) []string { if len(args) == 0 { - return aerc.TabNames() + return app.TabNames() } joinedArgs := strings.Join(args, " ") - return FilterList(aerc.TabNames(), joinedArgs, "", aerc.SelectedAccountUiConfig().FuzzyComplete) + return FilterList(app.TabNames(), joinedArgs, "", app.SelectedAccountUiConfig().FuzzyComplete) } -func (ChangeTab) Execute(aerc *app.Aerc, args []string) error { +func (ChangeTab) Execute(args []string) error { if len(args) == 1 { return fmt.Errorf("Usage: %s <tab>", args[0]) } joinedArgs := strings.Join(args[1:], " ") if joinedArgs == "-" { - ok := aerc.SelectPreviousTab() + ok := app.SelectPreviousTab() if !ok { return errors.New("No previous tab to return to") } @@ -43,21 +43,21 @@ func (ChangeTab) Execute(aerc *app.Aerc, args []string) error { switch { case strings.HasPrefix(joinedArgs, "+"): for ; n > 0; n-- { - aerc.NextTab() + app.NextTab() } case strings.HasPrefix(joinedArgs, "-"): for ; n < 0; n++ { - aerc.PrevTab() + app.PrevTab() } default: - ok := aerc.SelectTabIndex(n) + ok := app.SelectTabIndex(n) if !ok { return errors.New( "No tab with that index") } } } else { - ok := aerc.SelectTab(joinedArgs) + ok := app.SelectTab(joinedArgs) if !ok { return errors.New("No tab with that name") } |