git.lucas.co / cce-mail
mail client (IMAP/SMTP)
git clone https://git.lucas.co/cce-mail.git

commit7b29919a900ce59c13a99f3c65d90159666d84e8
parent4f56c8419c
authorLucas Galante <[email protected]>
date2026-09-18 15:35
fix: context menu labels in the menu font

The shared menu's label run was drawn with `None` for the family — a
TextLabel carries only a size — so the menu rendered in the default
sans while the surface under it wore the configured face. The family
now comes from `context_menu::label_font()`, the same face the labels
were laid out in. (The menu body here is still the legacy flat
`extra_quads` box rather than the DE's lit plate; that is a separate
question.)

Co-Authored-By: Claude Opus 5 <[email protected]>

 src/main.rs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/main.rs b/src/main.rs
index 9c9679e..88ed0e0 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -4948,6 +4948,10 @@ impl Application for ClearEmailApp {
                     qc,
                 );
             }
+            // The menu font's family: a TextLabel carries only a size, so
+            // `None` here drew the menu in the default sans while the labels
+            // had been laid out in the configured face.
+            let (menu_family, _) = cce_ui::widget::context_menu::label_font();
             for label in cce_ui::widget::context_menu::text_labels() {
                 __pc.text_with(
                     label.text.clone(),
@@ -4955,7 +4959,7 @@ impl Application for ClearEmailApp {
                     label.y,
                     label.font_size,
                     label.color,
-                    None,
+                    Some(menu_family.clone()),
                     menu_bounds,
                 );
             }