summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--commands/msg/move.go22
1 files changed, 11 insertions, 11 deletions
diff --git a/commands/msg/move.go b/commands/msg/move.go
index d7e1ea9..37402ef 100644
--- a/commands/msg/move.go
+++ b/commands/msg/move.go
@@ -45,27 +45,27 @@ func (Move) Execute(aerc *widgets.Aerc, args []string) error {
}
}
- widget := aerc.SelectedTab().(widgets.ProvidesMessage)
- acct := widget.SelectedAccount()
- if acct == nil {
- return errors.New("No account selected")
+ h := newHelper(aerc)
+ store, err := h.store()
+ if err != nil {
+ return err
}
- store := widget.Store()
- if store == nil {
- return errors.New("Cannot perform action. Messages still loading")
+ uids, err := h.uids()
+ if err != nil {
+ return err
}
- msg, err := widget.SelectedMessage()
+ acct, err := h.account()
if err != nil {
return err
}
- _, isMsgView := widget.(*widgets.MessageViewer)
+ _, isMsgView := h.msgProvider.(*widgets.MessageViewer)
if isMsgView {
- aerc.RemoveTab(widget)
+ aerc.RemoveTab(h.msgProvider)
}
store.Next()
acct.Messages().Scroll()
joinedArgs := strings.Join(args[optind:], " ")
- store.Move([]uint32{msg.Uid}, joinedArgs, createParents, func(
+ store.Move(uids, joinedArgs, createParents, func(
msg types.WorkerMessage) {
switch msg := msg.(type) {