diff options
author | rabite <rabite@posteo.de> | 2020-01-23 04:24:35 +0100 |
---|---|---|
committer | rabite <rabite@posteo.de> | 2020-01-23 15:17:28 +0100 |
commit | fa73d2cb8c1730eda07d660ed6b0e05202875062 (patch) | |
tree | aaecf3264b35ba832e815747f99c60db921d16de /src/file_browser.rs | |
parent | bf166ce7ff7294672e687498f7adbffc8bd60ce5 (diff) |
fix lag in mediaview by moving availability check to config
Diffstat (limited to 'src/file_browser.rs')
-rw-r--r-- | src/file_browser.rs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/file_browser.rs b/src/file_browser.rs index ddeea91..2da07f6 100644 --- a/src/file_browser.rs +++ b/src/file_browser.rs @@ -661,9 +661,20 @@ impl FileBrowser { self.preview_widget_mut()?.set_stale().log(); return Ok(()); } - let file = self.selected_file()?.clone(); + + let file = self.selected_file()?; + + // Don't even call previewer on empty files to save CPU cycles + match (file.is_dir(), file.calculate_size()) { + (false, Ok((size, unit))) => if size == 0 && unit.as_str() == "" { + self.preview_widget_mut()?.set_stale().log(); + return Ok(()); + }, + _ => {} + } + let preview = self.preview_widget_mut()?; - preview.set_file(&file).log(); + preview.set_file(file).log(); Ok(()) } |