summaryrefslogtreecommitdiff
path: root/commands/msgview/toggle-key-passthrough.go
diff options
context:
space:
mode:
Diffstat (limited to 'commands/msgview/toggle-key-passthrough.go')
-rw-r--r--commands/msgview/toggle-key-passthrough.go35
1 files changed, 35 insertions, 0 deletions
diff --git a/commands/msgview/toggle-key-passthrough.go b/commands/msgview/toggle-key-passthrough.go
new file mode 100644
index 0000000..6cd575b
--- /dev/null
+++ b/commands/msgview/toggle-key-passthrough.go
@@ -0,0 +1,35 @@
+package msgview
+
+import (
+ "errors"
+
+ "git.sr.ht/~rjarry/aerc/widgets"
+)
+
+type ToggleKeyPassthrough struct{}
+
+func init() {
+ register(ToggleKeyPassthrough{})
+}
+
+func (ToggleKeyPassthrough) Aliases() []string {
+ return []string{"toggle-key-passthrough"}
+}
+
+func (ToggleKeyPassthrough) Complete(aerc *widgets.Aerc, args []string) []string {
+ return nil
+}
+
+func (ToggleKeyPassthrough) Execute(aerc *widgets.Aerc, args []string) error {
+ if len(args) != 1 {
+ return errors.New("Usage: toggle-key-passthrough")
+ }
+ mv, _ := aerc.SelectedTab().(*widgets.MessageViewer)
+ keyPassthroughEnabled := mv.ToggleKeyPassthrough()
+ if keyPassthroughEnabled {
+ aerc.SetExtraStatus("[passthrough]")
+ } else {
+ aerc.ClearExtraStatus()
+ }
+ return nil
+}