summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManos Pitsidianakis <el13635@mail.ntua.gr>2019-05-07 21:53:36 +0300
committerManos Pitsidianakis <el13635@mail.ntua.gr>2019-06-10 19:40:47 +0300
commit0f4db97b75ce6301197fe4b88c8ed669d4300419 (patch)
treef95ee5a063fc43e67e81d4762f0ca5f8fa5f610d
parentc26dd0685b6774d7ec9746c38d4d4abd3f0bc09e (diff)
ui: display headers in ViewMode::Raw
-rw-r--r--ui/src/components/mail/view.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/ui/src/components/mail/view.rs b/ui/src/components/mail/view.rs
index 1c569775..105d65e5 100644
--- a/ui/src/components/mail/view.rs
+++ b/ui/src/components/mail/view.rs
@@ -409,6 +409,28 @@ impl Component for MailView {
self.mode = ViewMode::Subview;
}
ViewMode::Subview | ViewMode::ContactSelector(_) => {}
+ ViewMode::Raw => {
+ let text = {
+ let mailbox_idx = self.coordinates; // coordinates are mailbox idxs
+ let mailbox = &context.accounts[mailbox_idx.0][mailbox_idx.1]
+ .as_ref()
+ .unwrap();
+ let envelope: &Envelope = &mailbox.collection[&mailbox_idx.2];
+ let mut op = context.accounts[mailbox_idx.0]
+ .backend
+ .operation(envelope.hash(), mailbox.folder.hash());
+ op.as_bytes()
+ .map(|v| String::from_utf8_lossy(v).into_owned())
+ .unwrap_or_else(|e| e.to_string())
+ };
+ self.pager = Some(Pager::from_string(
+ text,
+ Some(context),
+ None,
+ Some(width!(area)),
+ ));
+ self.subview = None;
+ }
_ => {
let text = {
self.attachment_to_text(&body, context)