From a6925b89316573dd0caac1f48316aab40f029ce4 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Wed, 3 Jan 2024 06:56:05 +0000 Subject: [PATCH] Give MenuKeypressLine a width reset option. Then when I change menu items on the fly they won't always remember the largest width the menu has ever had. --- src/text.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/text.rs b/src/text.rs index fc12771..7f1250b 100644 --- a/src/text.rs +++ b/src/text.rs @@ -1293,6 +1293,7 @@ fn test_filestatus_render() { pub struct MenuKeypressLine { keypress: Keypress, lwid: usize, + rwid: usize, lmaxwid: usize, rmaxwid: usize, } @@ -1310,12 +1311,17 @@ impl MenuKeypressLine { description, }, lwid, + rwid, lmaxwid: lwid, rmaxwid: rwid, } } - pub fn get_widths(&self) -> (usize, usize) { (self.lmaxwid, self.rmaxwid) } + pub fn get_widths(&self) -> (usize, usize) { (self.lwid, self.rwid) } + pub fn reset_widths(&mut self) { + self.lmaxwid = self.lwid; + self.rmaxwid = self.rwid; + } pub fn ensure_widths(&mut self, lmaxwid: usize, rmaxwid: usize) { self.lmaxwid = max(self.lmaxwid, lmaxwid); self.rmaxwid = max(self.rmaxwid, rmaxwid); -- 2.30.2