aboutsummaryrefslogtreecommitdiffstats
path: root/commands/ct.go
diff options
context:
space:
mode:
authorRobin Jarry <robin@jarry.cc>2023-10-10 00:08:31 +0200
committerRobin Jarry <robin@jarry.cc>2023-10-10 11:38:01 +0200
commitbc176bd61ba726351a489cabf4da16a47dc5ec3b (patch)
treebbf06f731592d072f3d6f76f1648d61989375f2e /commands/ct.go
parent598e4a5803578ab3e291f232d6aad31b4efd8ea4 (diff)
downloadaerc-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.go18
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")
}