What changed, and why it matters
This commit is a minor user-interface improvement that lets text on buttons break onto a new line at colon characters, not just spaces. The stated purpose is to better display MAC addresses (which contain colons) on a connection button. There is no security relevance visible in the code or commit message.
No security action needed. Treat as a normal UI/UX change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The change modifies text-wrapping logic in the Rust UI layer. In font.rs, the word-boundary detection used to consider only the space character (’ ‘) when deciding where to split a line; it now also treats ‘:’ as a valid split point. In button.rs, a helper that builds menu-style buttons switches from a single-line text renderer to a multi-line text renderer so the new wrapping behavior can take effect. No cryptographic, input-validation, memory-safety, or authentication logic is touched.
Changed components
core/embed/rust/src/ui/display/font.rscore/embed/rust/src/ui/layout_eckhart/component/button.rsInspect captured patch +2 / −2
diff --git a/core/embed/rust/src/ui/display/font.rs b/core/embed/rust/src/ui/display/font.rs
index 6823fab1f..eb36800c6 100644
--- a/core/embed/rust/src/ui/display/font.rs
+++ b/core/embed/rust/src/ui/display/font.rs
@@ -342,7 +342,7 @@ impl FontInfo {
// Another character would not fit => split at the previous word boundary
return &text[0..prev_word_boundary];
}
- if c == ' ' {
+ if c == ' ' || c == ':' {
prev_word_boundary = i;
}
text_width += c_width;
diff --git a/core/embed/rust/src/ui/layout_eckhart/component/button.rs b/core/embed/rust/src/ui/layout_eckhart/component/button.rs
index 880643105..374b875f3 100644
--- a/core/embed/rust/src/ui/layout_eckhart/component/button.rs
+++ b/core/embed/rust/src/ui/layout_eckhart/component/button.rs
@@ -159,7 +159,7 @@ impl Button {
}
});
- Self::with_single_line_text_and_subtext_marquee(text, subtext, subtext_style, Some(icon))
+ Self::with_text_and_subtext(text, subtext, subtext_style, Some(icon))
.with_text_align(Self::MENU_ITEM_ALIGNMENT)
.with_content_offset(Self::MENU_ITEM_CONTENT_OFFSET)
.styled(stylesheet)
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.