summaryrefslogtreecommitdiffstats
path: root/src/event/app_event.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/app_event.rs')
-rw-r--r--src/event/app_event.rs18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/event/app_event.rs b/src/event/app_event.rs
index d628517..f6d538b 100644
--- a/src/event/app_event.rs
+++ b/src/event/app_event.rs
@@ -1,8 +1,10 @@
+use std::fmt::Debug;
use std::io;
use std::path;
use std::sync::mpsc;
use std::thread;
+use ratatui_image::protocol::Protocol;
use signal_hook::consts::signal;
use signal_hook::iterator::exfiltrator::SignalOnly;
use signal_hook::iterator::SignalsInfo;
@@ -17,6 +19,20 @@ use crate::fs::JoshutoDirList;
use crate::io::FileOperationProgress;
use crate::preview::preview_file::FilePreview;
+pub enum PreviewData {
+ Script(Box<FilePreview>),
+ Image(Box<dyn Protocol>),
+}
+
+impl Debug for PreviewData {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ Self::Script(_) => f.debug_tuple("Script").field(&"_").finish(),
+ Self::Image(_) => f.debug_tuple("Image").field(&"_").finish(),
+ }
+ }
+}
+
#[derive(Debug)]
pub enum AppEvent {
// User input events
@@ -38,7 +54,7 @@ pub enum AppEvent {
},
PreviewFile {
path: path::PathBuf,
- res: Box<io::Result<FilePreview>>,
+ res: io::Result<PreviewData>,
},
// terminal size change events
Signal(i32),