diff --git a/src/interactive/widgets/entries.rs b/src/interactive/widgets/entries.rs index aff6c3d3..3bf66546 100644 --- a/src/interactive/widgets/entries.rs +++ b/src/interactive/widgets/entries.rs @@ -186,7 +186,12 @@ impl Entries { Style { fg, ..style } }, ); - vec![mtime, bar, bytes, left_bar, percentage, right_bar, name] + + if should_show_mtime_column(sort_mode) { + vec![mtime, bar, bytes, left_bar, percentage, right_bar, name] + } else { + vec![bytes, left_bar, percentage, right_bar, name] + } }, ); @@ -221,3 +226,10 @@ impl Entries { } } } + +fn should_show_mtime_column(sort_mode: &SortMode) -> bool { + match sort_mode { + SortMode::MTimeAscending | SortMode::MTimeDescending => true, + _ => false, + } +} diff --git a/src/traverse.rs b/src/traverse.rs index 6045d58e..bb002143 100644 --- a/src/traverse.rs +++ b/src/traverse.rs @@ -266,7 +266,7 @@ mod tests { fn size_of_entry_data() { assert_eq!( std::mem::size_of::(), - if cfg!(windows) { 56 } else { 48 }, + if cfg!(windows) { 72 } else { 64 }, "the size of this should not change unexpectedly as it affects overall memory consumption" ); }