From d0708bfee1d81b074bc5109469c55521b7ed3269 Mon Sep 17 00:00:00 2001 From: Joscha Date: Fri, 25 Feb 2022 22:41:26 +0100 Subject: [PATCH] Change format of empty rooms list --- cove-tui/src/ui.rs | 4 ++-- cove-tui/src/ui/rooms.rs | 16 ++++++---------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/cove-tui/src/ui.rs b/cove-tui/src/ui.rs index 00edff1..aa3cb66 100644 --- a/cove-tui/src/ui.rs +++ b/cove-tui/src/ui.rs @@ -162,8 +162,8 @@ impl Ui { ]) .split(frame.size()); - // frame.render_stateful_widget(Rooms::new(&self.rooms), outer[0], &mut self.rooms_state); - frame.render_stateful_widget(Rooms::dummy(), outer[0], &mut self.rooms_state); + frame.render_stateful_widget(Rooms::new(&self.rooms), outer[0], &mut self.rooms_state); + // frame.render_stateful_widget(Rooms::dummy(), outer[0], &mut self.rooms_state); let scroll = if self.log.len() as u16 > outer[1].height { self.log.len() as u16 - outer[1].height diff --git a/cove-tui/src/ui/rooms.rs b/cove-tui/src/ui/rooms.rs index 1396fc6..f0edd97 100644 --- a/cove-tui/src/ui/rooms.rs +++ b/cove-tui/src/ui/rooms.rs @@ -65,9 +65,6 @@ impl StatefulWidget for Rooms { fn render(self, area: Rect, buf: &mut Buffer, state: &mut Self::State) { let title_style = Style::default().add_modifier(Modifier::BOLD); - let empty_style = Style::default() - .fg(Color::Gray) - .add_modifier(Modifier::ITALIC); let room_style = Style::default().fg(Color::LightBlue); let selected_room_style = room_style.add_modifier(Modifier::BOLD); @@ -78,13 +75,12 @@ impl StatefulWidget for Rooms { width: area.width - 1, ..area }; - let mut lines = vec![Spans::from(Span::styled("Rooms", title_style))]; - if self.rooms.is_empty() { - lines.push(Spans::from(vec![ - Span::raw("\r\n"), - Span::styled("none", empty_style), - ])); - } + let title = if let Some(selected) = self.selected { + format!("Rooms ({}/{})", selected + 1, self.rooms.len()) + } else { + format!("Rooms ({})", self.rooms.len()) + }; + let mut lines = vec![Spans::from(Span::styled(title, title_style))]; for (i, room) in self.rooms.iter().enumerate() { let name = format!("&{}", room.name); if Some(i) == self.selected {