summaryrefslogtreecommitdiffstats
path: root/src/config/raw/app/display/preview.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/config/raw/app/display/preview.rs')
-rw-r--r--src/config/raw/app/display/preview.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/config/raw/app/display/preview.rs b/src/config/raw/app/display/preview.rs
index 60bb032..ee3682e 100644
--- a/src/config/raw/app/display/preview.rs
+++ b/src/config/raw/app/display/preview.rs
@@ -1,14 +1,27 @@
+use ratatui_image::picker::ProtocolType;
use serde::Deserialize;
pub const fn default_max_preview_size() -> u64 {
2 * 1024 * 1024 // 2 MB
}
+#[derive(Clone, Debug, Deserialize, Default)]
+#[serde(rename_all = "snake_case")]
+pub enum PreviewProtocol {
+ #[default]
+ Auto,
+ Disabled,
+ #[serde(untagged)]
+ ProtocolType(ProtocolType),
+}
+
#[derive(Clone, Debug, Deserialize)]
pub struct PreviewOptionRaw {
#[serde(default = "default_max_preview_size")]
pub max_preview_size: u64,
#[serde(default)]
+ pub preview_protocol: PreviewProtocol,
+ #[serde(default)]
pub preview_script: Option<String>,
#[serde(default)]
pub preview_shown_hook_script: Option<String>,
@@ -20,6 +33,7 @@ impl std::default::Default for PreviewOptionRaw {
fn default() -> Self {
Self {
max_preview_size: default_max_preview_size(),
+ preview_protocol: PreviewProtocol::Auto,
preview_script: None,
preview_shown_hook_script: None,
preview_removed_hook_script: None,