on master help sign in
ui: Only render menu scrollbar if it doesn't fit
f10a06fBlaž Hrastnik
helix-term/src/ui/menu.rs+4−2
@@ -304,12 +304,14 @@ impl<T: Item + 'static> Component for Menu<T> {
304 },
304 },
305 );
305 );
306
306
307+ let fits = len <= win_height;
308+
307 for (i, _) in (scroll..(scroll + win_height).min(len)).enumerate() {
309 for (i, _) in (scroll..(scroll + win_height).min(len)).enumerate() {
308 let is_marked = i >= scroll_line && i < scroll_line + scroll_height;
310 let is_marked = i >= scroll_line && i < scroll_line + scroll_height;
309
311
310− if is_marked {
312+ if !fits && is_marked {
311 let cell = &mut surface[(area.x + area.width - 2, area.y + i as u16)];
313 let cell = &mut surface[(area.x + area.width - 2, area.y + i as u16)];
312− cell.set_symbol("▐ ");
314+ cell.set_symbol("▐");
313 // cell.set_style(selected);
315 // cell.set_style(selected);
314 // cell.set_style(if is_marked { selected } else { style });
316 // cell.set_style(if is_marked { selected } else { style });
315 }
317 }