Fix alternatives config

This commit is contained in:
Drew DeVault 2019-07-19 17:26:43 -04:00
parent d8518909cc
commit 97bee661b7
1 changed files with 5 additions and 2 deletions

View File

@ -56,7 +56,6 @@ func NewMessageViewer(acct *AccountView, conf *config.AercConfig,
}) })
switcher := &PartSwitcher{} switcher := &PartSwitcher{}
switcher.selected = -1
err := createSwitcher(switcher, conf, store, msg) err := createSwitcher(switcher, conf, store, msg)
if err != nil { if err != nil {
return &MessageViewer{ return &MessageViewer{
@ -164,7 +163,9 @@ func enumerateParts(conf *config.AercConfig, store *lib.MessageStore,
func createSwitcher(switcher *PartSwitcher, conf *config.AercConfig, func createSwitcher(switcher *PartSwitcher, conf *config.AercConfig,
store *lib.MessageStore, msg *models.MessageInfo) error { store *lib.MessageStore, msg *models.MessageInfo) error {
var err error var err error
switcher.selected = -1
switcher.showHeaders = conf.Viewer.ShowHeaders switcher.showHeaders = conf.Viewer.ShowHeaders
switcher.alwaysShowMime = conf.Viewer.AlwaysShowMime switcher.alwaysShowMime = conf.Viewer.AlwaysShowMime
@ -185,6 +186,7 @@ func createSwitcher(switcher *PartSwitcher, conf *config.AercConfig,
return err return err
} }
selectedPriority := -1 selectedPriority := -1
fmt.Printf("Selecting best message from %v\n", conf.Viewer.Alternatives)
for i, pv := range switcher.parts { for i, pv := range switcher.parts {
pv.OnInvalidate(func(_ ui.Drawable) { pv.OnInvalidate(func(_ ui.Drawable) {
switcher.Invalidate() switcher.Invalidate()
@ -192,7 +194,8 @@ func createSwitcher(switcher *PartSwitcher, conf *config.AercConfig,
// Switch to user's preferred mimetype // Switch to user's preferred mimetype
if switcher.selected == -1 && pv.part.MIMEType != "multipart" { if switcher.selected == -1 && pv.part.MIMEType != "multipart" {
switcher.selected = i switcher.selected = i
} else if selectedPriority == -1 { }
if selectedPriority == -1 {
for idx, m := range conf.Viewer.Alternatives { for idx, m := range conf.Viewer.Alternatives {
if m != pv.part.MIMEType+"/"+pv.part.MIMESubType { if m != pv.part.MIMEType+"/"+pv.part.MIMESubType {
continue continue