diff options
Diffstat (limited to 'commands')
-rw-r--r-- | commands/compose/postpone.go | 8 | ||||
-rw-r--r-- | commands/compose/send.go | 8 | ||||
-rw-r--r-- | commands/move-tab.go | 15 |
3 files changed, 16 insertions, 15 deletions
diff --git a/commands/compose/postpone.go b/commands/compose/postpone.go index e1c0568..4b1e441 100644 --- a/commands/compose/postpone.go +++ b/commands/compose/postpone.go @@ -35,9 +35,13 @@ func (Postpone) Execute(aerc *widgets.Aerc, args []string) error { if acct == nil { return errors.New("No account selected") } - composer, _ := aerc.SelectedTabContent().(*widgets.Composer) + tab := aerc.SelectedTab() + if tab == nil { + return errors.New("No tab selected") + } + composer, _ := tab.Content.(*widgets.Composer) config := composer.Config() - tabName := aerc.TabNames()[aerc.SelectedTabIndex()] + tabName := tab.Name if config.Postpone == "" { return errors.New("No Postpone location configured") diff --git a/commands/compose/send.go b/commands/compose/send.go index 776779e..cca1540 100644 --- a/commands/compose/send.go +++ b/commands/compose/send.go @@ -43,8 +43,12 @@ func (Send) Execute(aerc *widgets.Aerc, args []string) error { if len(args) > 1 { return errors.New("Usage: send") } - composer, _ := aerc.SelectedTabContent().(*widgets.Composer) - tabName := aerc.TabNames()[aerc.SelectedTabIndex()] + tab := aerc.SelectedTab() + if tab == nil { + return errors.New("No selected tab") + } + composer, _ := tab.Content.(*widgets.Composer) + tabName := tab.Name config := composer.Config() if config.Outgoing == "" { diff --git a/commands/move-tab.go b/commands/move-tab.go index 4151bd7..8648ed3 100644 --- a/commands/move-tab.go +++ b/commands/move-tab.go @@ -34,18 +34,11 @@ func (MoveTab) Execute(aerc *widgets.Aerc, args []string) error { return fmt.Errorf("failed to parse index argument: %v", err) } - i := aerc.SelectedTabIndex() - l := aerc.NumTabs() - - if strings.HasPrefix(joinedArgs, "+") { - i = (i + n) % l - } else if strings.HasPrefix(joinedArgs, "-") { - i = (((i + n) % l) + l) % l - } else { - i = n + var relative bool + if strings.HasPrefix(joinedArgs, "+") || strings.HasPrefix(joinedArgs, "-") { + relative = true } - - aerc.MoveTab(i) + aerc.MoveTab(n, relative) return nil } |