Build 10: width-gate the Pay numpad, mark the settings scroll edge

The numpad was platform-gated while the mobile shell is width-gated, so
narrow desktop windows showed neither numpad nor a visible input (sweep
P2). Settings rows clipping under the pinned profile card now meet a
hairline instead of slicing glyphs on an invisible edge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Claude
2026-06-11 04:52:50 -04:00
parent d8cf06b577
commit 9d36562bab
+15 -3
View File
@@ -723,9 +723,12 @@ impl GoblinWalletView {
}
ui.add_space(if tall { 32.0 } else { 16.0 });
// Numpad on mobile, typed input on desktop.
let typed_hint = View::is_desktop() && self.pay_amount.is_empty();
if !View::is_desktop() {
// Numpad at narrow (mobile-shell) widths, typed input on the wide
// desktop layout — gate by width like the shell itself, or narrow
// desktop windows get neither input.
let narrow = ui.available_width() < 700.0;
let typed_hint = !narrow && self.pay_amount.is_empty();
if narrow {
w::numpad(ui, &mut self.pay_amount);
} else {
w::amount_typed_input(ui, &mut self.pay_amount);
@@ -1134,6 +1137,15 @@ impl GoblinWalletView {
});
ui.add_space(16.0);
// Mark the scroll boundary: rows clipping under the pinned profile
// card otherwise read as sliced glyphs on an invisible edge.
let line_y = ui.cursor().min.y;
ui.painter().hline(
ui.max_rect().x_range(),
line_y,
eframe::epaint::Stroke::new(1.0, t.line),
);
ui.add_space(6.0);
ScrollArea::vertical()
.auto_shrink([false; 2])
.show(ui, |ui| {