2019-03-21 21:32:22 +01:00
|
|
|
package terminal
|
2019-03-17 22:23:53 +01:00
|
|
|
|
|
|
|
import (
|
|
|
|
"errors"
|
|
|
|
|
|
|
|
"git.sr.ht/~sircmpwn/aerc2/widgets"
|
|
|
|
)
|
|
|
|
|
|
|
|
func init() {
|
2019-03-21 21:32:22 +01:00
|
|
|
register("close", CommandClose)
|
2019-03-17 22:23:53 +01:00
|
|
|
}
|
|
|
|
|
2019-03-21 21:32:22 +01:00
|
|
|
func CommandClose(aerc *widgets.Aerc, args []string) error {
|
2019-03-17 22:23:53 +01:00
|
|
|
if len(args) != 1 {
|
2019-03-17 22:45:44 +01:00
|
|
|
return errors.New("Usage: close")
|
2019-03-17 22:23:53 +01:00
|
|
|
}
|
2019-03-17 22:39:22 +01:00
|
|
|
thost, ok := aerc.SelectedTab().(*widgets.TermHost)
|
2019-03-17 22:23:53 +01:00
|
|
|
if !ok {
|
|
|
|
return errors.New("Error: not a terminal")
|
|
|
|
}
|
2019-03-17 22:39:22 +01:00
|
|
|
thost.Terminal().Close(nil)
|
2019-03-30 16:58:24 +01:00
|
|
|
aerc.RemoveTab(thost)
|
2019-03-17 22:39:22 +01:00
|
|
|
return nil
|
2019-03-17 22:23:53 +01:00
|
|
|
}
|