feat: default order of created time, reset sorted, closes #18

This commit is contained in:
Jack Wills
2022-12-04 21:42:54 +00:00
parent c93870e5fb
commit cf14ba4989
4 changed files with 41 additions and 19 deletions
+9 -6
View File
@@ -121,13 +121,16 @@ impl InputHandler {
self.mouse_capture = !self.mouse_capture;
}
/// Sort containers based on a given header, switch asc to desc if already sorted, else always desc
fn sort(&self, header: Header) {
let mut output = Some((header, SortedOrder::Desc));
/// Sort containers based on a given header, if headings match, and already ascending, remove sorting
fn sort(&self, selected_header: Header) {
let mut locked_data = self.app_data.lock();
if let Some((h, order)) = locked_data.get_sorted().as_ref() {
if &SortedOrder::Desc == order && h == &header {
output = Some((header, SortedOrder::Asc));
let mut output = Some((selected_header, SortedOrder::Desc));
if let Some((current_header, order)) = locked_data.get_sorted() {
if current_header == selected_header {
match order {
SortedOrder::Asc => output = None,
SortedOrder::Desc => output = Some((selected_header, SortedOrder::Asc)),
}
}
}
locked_data.set_sorted(output);