Skip to content

Commit d83cfeb

Browse files
committed
feat: let user know when save is disabled
1 parent 814879d commit d83cfeb

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

src/app.rs

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -728,7 +728,13 @@ impl LogViewerApp {
728728
(false, _, total_len) => as_string_with_separators(total_len),
729729
};
730730
ui.label(format!("# Rows: {row_count_text}"));
731-
ui.label(format!("Size: {}", data.file_size_display()));
731+
let size_text = format!("Size: {}", data.file_size_display());
732+
if self.does_data_exceeded_max_size() {
733+
ui.colored_label(ui.visuals().warn_fg_color, size_text)
734+
.on_hover_text("Save disabled because data size is over max set");
735+
} else {
736+
ui.label(size_text);
737+
}
732738
}
733739
});
734740
}
@@ -776,17 +782,16 @@ impl LogViewerApp {
776782
}
777783

778784
fn should_save(&mut self) -> bool {
779-
// Check if size of data allows saving
780-
if let (Some(data), Some(max_data_size)) =
781-
(self.data.as_ref(), self.max_data_save_size.as_ref())
785+
!self.does_data_exceeded_max_size() && self.is_changed_since_last_save()
786+
}
787+
788+
fn does_data_exceeded_max_size(&self) -> bool {
789+
if let (Some(data), Some(max_size)) = (self.data.as_ref(), self.max_data_save_size.as_ref())
782790
{
783-
if &data.file_size_as_bytes > max_data_size {
784-
return false;
785-
}
791+
&data.file_size_as_bytes > max_size
792+
} else {
793+
false
786794
}
787-
788-
// Size of data does not prevent saving, check if there are changes to be saved
789-
self.is_changed_since_last_save()
790795
}
791796
}
792797

0 commit comments

Comments
 (0)