From 0c756b55e9b73dc8301815cbffb3c35879742573 Mon Sep 17 00:00:00 2001 From: Tim Bendt Date: Thu, 1 May 2025 12:31:10 -0400 Subject: [PATCH] working email headers display --- maildir_gtd/app.py | 9 +++++++++ maildir_gtd/email_viewer.tcss | 3 ++- maildir_gtd/widgets/EnvelopeHeader.py | 11 +++++++---- .../EnvelopeHeader.cpython-311.pyc | Bin 1398 -> 1626 bytes 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/maildir_gtd/app.py b/maildir_gtd/app.py index 927bb0c..e7550cc 100644 --- a/maildir_gtd/app.py +++ b/maildir_gtd/app.py @@ -56,6 +56,7 @@ class EmailViewerApp(App): CSS_PATH = "email_viewer.tcss" folder = reactive("INBOX") markdown: Reactive[str] = reactive("Loading...") + header_expanded = False def get_system_commands(self, screen: Screen) -> Iterable[SystemCommand]: yield from super().get_system_commands(screen) @@ -75,6 +76,7 @@ class EmailViewerApp(App): Binding("e", "archive", "Archive message"), Binding("o", "open", "Open message", show=False), Binding("q", "quit", "Quit application"), + Binding("h", "toggle_header", "Toggle Envelope Header"), Binding("t", "create_task", "Create Task") ] @@ -162,6 +164,13 @@ class EmailViewerApp(App): """Display a status message using the built-in notify function.""" self.notify(message, title="Status", severity=severity, timeout=1, markup=True) + def action_toggle_header(self) -> None: + """Toggle the visibility of the EnvelopeHeader panel.""" + header = self.query_one(EnvelopeHeader) + header.styles.height = "1" if self.header_expanded else "auto" + self.header_expanded = not self.header_expanded + + def action_next(self) -> None: action_next(self) diff --git a/maildir_gtd/email_viewer.tcss b/maildir_gtd/email_viewer.tcss index 93fffe5..6a48183 100644 --- a/maildir_gtd/email_viewer.tcss +++ b/maildir_gtd/email_viewer.tcss @@ -24,10 +24,11 @@ StatusTitle { EnvelopeHeader { width: 100%; - height: auto; + height: 1; background: $panel; } #main_content { padding: 1 2; } + diff --git a/maildir_gtd/widgets/EnvelopeHeader.py b/maildir_gtd/widgets/EnvelopeHeader.py index 99300a5..5dfd7cc 100644 --- a/maildir_gtd/widgets/EnvelopeHeader.py +++ b/maildir_gtd/widgets/EnvelopeHeader.py @@ -8,16 +8,19 @@ class EnvelopeHeader(Static): from_ = Reactive("") to = Reactive("") date = Reactive("") + cc = Reactive("") + bcc = Reactive("") """Header for the email viewer.""" def on_mount(self) -> None: """Mount the header.""" def render(self) -> RenderResult: - return f"[b][dim]Subject:[/dim] {self.subject}[/] \r\n" \ - f"[dim]From:[/dim] {self.from_} \r\n" \ - f"[dim]To:[/dim] {self.to} \r\n" \ - f"[dim]Date:[/dim] {self.date}" + return f"[b]{self.subject}[/b] [dim]({self.date})[/] \r\n" \ + f"[dim]From:[/dim] {self.from_} [dim]To:[/dim] {self.to} \r\n" \ + f"[dim]Date:[/dim] {self.date} \r\n" \ + f"[dim]CC:[/dim] {self.cc} \r\n" \ + f"[dim]BCC:[/dim] {self.bcc} \r\n" \ diff --git a/maildir_gtd/widgets/__pycache__/EnvelopeHeader.cpython-311.pyc b/maildir_gtd/widgets/__pycache__/EnvelopeHeader.cpython-311.pyc index b44a98a1357bc082a13b821f6914db87d7b0f7f6..c725b67d8a5fcb558827382a0cdc79b5d3bb8a05 100644 GIT binary patch delta 692 zcmeyyb&H30IWI340}%8t6wdfCk#{5Gii!JEotPL>nNt{-F)}c$24V<^;=n4($;pty zmcr7)62+Cml**mPl)?&R^Gvp4yvN8tS&~VCiyx?;8HhhuOm=2+txsXCVaS4;Ivc1P z$Y+6C!T{v61Np2-e2%&N!3>(5epSrTNwHPj(fUcT3ehQb>~ z7E4NEN$M@uG@xDax0p)uZ!sk&-(pTmPM*xptY0q#bartKkZ54|z{DbAJVRuT%m)S_ z159jC*`kTy-B8h3;`M+$*xQaTpU0x%s~9vZE`-7tKD3VU@eb1TZvg-ZwlMJLNJtIBAy++r_==(@$422>J%i>W047E4NEN$TV&%=(D} zKWIiwe8DQduvicIM56m#`14Y#(;vZOH+z)IFDjG{HKd{3E z7??Triv)qDX)+ao0>Dp`dvZ97zLW@%T_g%3#6Sed(jpcRAwGE(iy~vyS4^=I&WU;t7$iOI>V1&nf&udw=?^D_dKVG