Add option to always show mimetype in viewer
A user may want to be able to see what mimetype they are viewing, so that they can determine what program it may be opened in or for some other reason. The config option is under the [viewer] section and is called 'always-show-mime'. It defaults to false to preserve the current behaviour.
This commit is contained in:
parent
4a5aa7dc27
commit
fb124139f3
4 changed files with 21 additions and 8 deletions
|
@ -69,6 +69,11 @@ show-headers=false
|
|||
# Default: From|To,Cc|Bcc,Date,Subject
|
||||
header-layout=From|To,Cc|Bcc,Date,Subject
|
||||
|
||||
# Whether to always show the mimetype of an email, even when it is just a single part
|
||||
#
|
||||
# Default: false
|
||||
always-show-mime=false
|
||||
|
||||
[compose]
|
||||
#
|
||||
# Specifies the command to run the editor with. It will be shown in an embedded
|
||||
|
|
|
@ -77,10 +77,11 @@ type FilterConfig struct {
|
|||
}
|
||||
|
||||
type ViewerConfig struct {
|
||||
Pager string
|
||||
Alternatives []string
|
||||
ShowHeaders bool `ini:"show-headers"`
|
||||
HeaderLayout [][]string `ini:"-"`
|
||||
Pager string
|
||||
Alternatives []string
|
||||
ShowHeaders bool `ini:"show-headers"`
|
||||
AlwaysShowMime bool `ini:"always-show-mime"`
|
||||
HeaderLayout [][]string `ini:"-"`
|
||||
}
|
||||
|
||||
type AercConfig struct {
|
||||
|
|
|
@ -133,6 +133,11 @@ These options are configured in the *[viewer]* section of aerc.conf.
|
|||
|
||||
Default: false
|
||||
|
||||
*always-show-mime*
|
||||
Whether to always show the mimetype of an email, even when it is just a single part.
|
||||
|
||||
Default: false
|
||||
|
||||
## COMPOSE
|
||||
|
||||
These options are configured in the *[compose]* section of aerc.conf.
|
||||
|
|
|
@ -38,9 +38,10 @@ type MessageViewer struct {
|
|||
|
||||
type PartSwitcher struct {
|
||||
ui.Invalidatable
|
||||
parts []*PartViewer
|
||||
selected int
|
||||
showHeaders bool
|
||||
parts []*PartViewer
|
||||
selected int
|
||||
showHeaders bool
|
||||
alwaysShowMime bool
|
||||
}
|
||||
|
||||
func NewMessageViewer(acct *AccountView, conf *config.AercConfig,
|
||||
|
@ -165,6 +166,7 @@ func createSwitcher(switcher *PartSwitcher, conf *config.AercConfig,
|
|||
store *lib.MessageStore, msg *models.MessageInfo) error {
|
||||
var err error
|
||||
switcher.showHeaders = conf.Viewer.ShowHeaders
|
||||
switcher.alwaysShowMime = conf.Viewer.AlwaysShowMime
|
||||
|
||||
if len(msg.BodyStructure.Parts) == 0 {
|
||||
switcher.selected = 0
|
||||
|
@ -312,7 +314,7 @@ func (ps *PartSwitcher) Event(event tcell.Event) bool {
|
|||
|
||||
func (ps *PartSwitcher) Draw(ctx *ui.Context) {
|
||||
height := len(ps.parts)
|
||||
if height == 1 {
|
||||
if height == 1 && !ps.alwaysShowMime {
|
||||
ps.parts[ps.selected].Draw(ctx)
|
||||
return
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue