summaryrefslogtreecommitdiffstats
path: root/src/interactive/widgets/entries.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/interactive/widgets/entries.rs')
-rw-r--r--src/interactive/widgets/entries.rs30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/interactive/widgets/entries.rs b/src/interactive/widgets/entries.rs
index 279a7fa..62d24e3 100644
--- a/src/interactive/widgets/entries.rs
+++ b/src/interactive/widgets/entries.rs
@@ -10,7 +10,8 @@ use tui::{
buffer::Buffer,
layout::Rect,
style::{Color, Modifier, Style},
- widgets::{Block, Borders, Text},
+ text::Span,
+ widgets::{Block, Borders},
};
use tui_react::util::rect::line_bound;
use tui_react::{
@@ -78,7 +79,7 @@ impl Entries {
}
);
let block = Block::default()
- .title(&title)
+ .title(title.as_str())
.border_style(*border_style)
.borders(Borders::ALL);
let entry_in_view = selected.map(|selected| {
@@ -107,34 +108,32 @@ impl Entries {
false
};
if is_selected {
- style.modifier.insert(Modifier::REVERSED);
+ style.add_modifier.insert(Modifier::REVERSED);
}
if *is_focussed & is_selected {
- style.modifier.insert(Modifier::BOLD);
+ style.add_modifier.insert(Modifier::BOLD);
}
- let bytes = Text::Styled(
+ let bytes = Span::styled(
format!(
"{:>byte_column_width$}",
display.byte_format.display(w.size).to_string(), // we would have to impl alignment/padding ourselves otherwise...
byte_column_width = display.byte_format.width()
- )
- .into(),
+ ),
Style {
- fg: Color::Green,
+ fg: Color::Green.into(),
..style
},
);
- let percentage = Text::Styled(
+ let percentage = Span::styled(
format!(
" |{}| ",
display.byte_vis.display(w.size as f32 / total as f32)
- )
- .into(),
+ ),
style,
);
- let name = Text::Styled(
+ let name = Span::styled(
fill_background_to_right(
format!(
"{prefix}{}",
@@ -142,15 +141,14 @@ impl Entries {
prefix = if *is_dir && !is_top(*root) { "/" } else { " " }
),
area.width,
- )
- .into(),
+ ),
{
let is_marked = marked.map(|m| m.contains_key(node_idx)).unwrap_or(false);
let fg = if !exists {
// non-existing - always red!
- Color::Red
+ Some(Color::Red)
} else {
- entry_color(style.fg, !is_dir, is_marked)
+ entry_color(style.fg, !*is_dir, is_marked)
};
Style { fg, ..style }
},