From 4275bb1aef4a12a6293899f37aa6e934ae73af05 Mon Sep 17 00:00:00 2001 From: l0ng-ai <24760907+l0ng-ai@users.noreply.github.com> Date: Sat, 8 Aug 2026 09:00:47 +0800 Subject: [PATCH] Revert the settings row wrap that broke every long description MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 5423301 gave `settings_row` `flex_wrap()` and swapped the label column's `min_w_0` for `flex_1` + a 200px floor, so the SSH host form would stack instead of overflowing in a narrow pane. On every other settings page that stopped long descriptions wrapping at all: the text ran under its own control and out past the row it belongs to, which is plainly worse than the case it was meant to fix. The row goes back to what it was. `#ssh-detail` keeps its `min_w_0` — that half of the commit is what actually fixed the 1200px overflow, and it is independent of the row. The SSH form still degrades below roughly 1000px, where the label column squeezes to a word per line. That is the real remaining bug and it needs a different answer than wrapping this row. --- src/ui/settings.rs | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/ui/settings.rs b/src/ui/settings.rs index c9c536e5..8eb6a30e 100644 --- a/src/ui/settings.rs +++ b/src/ui/settings.rs @@ -1063,15 +1063,9 @@ impl Tty7App { }; h_flex() .id(element_id) - // A settings pane can end up narrow — the SSH page spends 500px on - // its two lists before this row gets any. Wrapping puts the control - // on its own line rather than pushing it off the right edge, and the - // floor below stops the label shrinking into one word per line. - .flex_wrap() .items_center() .justify_between() - .gap_x_8() - .gap_y_2() + .gap_8() .py_2() .px_2p5() .mx_neg_2p5() @@ -1083,8 +1077,7 @@ impl Tty7App { .child( v_flex() .gap_0p5() - .flex_1() - .min_w(px(200.)) + .min_w_0() .child( div() .text_sm()