aboutsummaryrefslogtreecommitdiffstats
path: root/commands/msgview/open.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/msgview/open.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/msgview/open.go')
-rw-r--r--commands/msgview/open.go12
1 files changed, 6 insertions, 6 deletions
diff --git a/commands/msgview/open.go b/commands/msgview/open.go
index 1f74bc7a..6c806c7c 100644
--- a/commands/msgview/open.go
+++ b/commands/msgview/open.go
@@ -28,11 +28,11 @@ func (Open) Aliases() []string {
return []string{"open"}
}
-func (Open) Complete(aerc *app.Aerc, args []string) []string {
+func (Open) Complete(args []string) []string {
return nil
}
-func (o Open) Execute(aerc *app.Aerc, args []string) error {
+func (o Open) Execute(args []string) error {
opts, optind, err := getopt.Getopts(args, o.Options())
if err != nil {
return err
@@ -46,7 +46,7 @@ func (o Open) Execute(aerc *app.Aerc, args []string) error {
}
}
- mv := aerc.SelectedTabContent().(*app.MessageViewer)
+ mv := app.SelectedTabContent().(*app.MessageViewer)
if mv == nil {
return errors.New("open only supported selected message parts")
}
@@ -71,14 +71,14 @@ func (o Open) Execute(aerc *app.Aerc, args []string) error {
tmpFile, err := os.CreateTemp(os.TempDir(), "aerc-*"+extension)
if err != nil {
- aerc.PushError(err.Error())
+ app.PushError(err.Error())
return
}
_, err = io.Copy(tmpFile, reader)
tmpFile.Close()
if err != nil {
- aerc.PushError(err.Error())
+ app.PushError(err.Error())
return
}
@@ -89,7 +89,7 @@ func (o Open) Execute(aerc *app.Aerc, args []string) error {
}
err = lib.XDGOpenMime(tmpFile.Name(), mimeType, args[optind:])
if err != nil {
- aerc.PushError("open: " + err.Error())
+ app.PushError("open: " + err.Error())
}
}()
})