feat(config): add auto_restart option
This commit is contained in:
parent
8fb95ccf22
commit
da19664f5b
|
@ -54,6 +54,8 @@ pub trait Config: Send {
|
|||
// Defines the key that disables/enables espanso when double pressed
|
||||
fn toggle_key(&self) -> Option<ToggleKey>;
|
||||
|
||||
fn auto_restart(&self) -> bool;
|
||||
|
||||
fn is_match<'a>(&self, app: &AppProperties<'a>) -> bool;
|
||||
}
|
||||
|
||||
|
|
|
@ -29,11 +29,13 @@ pub(crate) struct ParsedConfig {
|
|||
|
||||
pub backend: Option<String>,
|
||||
pub clipboard_threshold: Option<usize>,
|
||||
pub auto_restart: Option<bool>,
|
||||
|
||||
pub pre_paste_delay: Option<usize>,
|
||||
|
||||
pub toggle_key: Option<String>,
|
||||
|
||||
|
||||
// Includes
|
||||
pub includes: Option<Vec<String>>,
|
||||
pub excludes: Option<Vec<String>>,
|
||||
|
|
|
@ -42,6 +42,9 @@ pub(crate) struct YAMLConfig {
|
|||
#[serde(default)]
|
||||
pub toggle_key: Option<String>,
|
||||
|
||||
#[serde(default)]
|
||||
pub auto_restart: Option<bool>,
|
||||
|
||||
#[serde(default)]
|
||||
pub includes: Option<Vec<String>>,
|
||||
|
||||
|
@ -92,6 +95,7 @@ impl TryFrom<YAMLConfig> for ParsedConfig {
|
|||
label: yaml_config.label,
|
||||
backend: yaml_config.backend,
|
||||
clipboard_threshold: yaml_config.clipboard_threshold,
|
||||
auto_restart: yaml_config.auto_restart,
|
||||
|
||||
pre_paste_delay: yaml_config.pre_paste_delay,
|
||||
|
||||
|
@ -125,6 +129,7 @@ mod tests {
|
|||
clipboard_threshold: 200
|
||||
pre_paste_delay: 300
|
||||
toggle_key: CTRL
|
||||
auto_restart: false
|
||||
|
||||
use_standard_includes: true
|
||||
includes: ["test1"]
|
||||
|
@ -148,6 +153,7 @@ mod tests {
|
|||
|
||||
backend: Some("clipboard".to_string()),
|
||||
clipboard_threshold: Some(200),
|
||||
auto_restart: Some(false),
|
||||
|
||||
pre_paste_delay: Some(300),
|
||||
|
||||
|
|
|
@ -150,6 +150,10 @@ impl Config for ResolvedConfig {
|
|||
.unwrap_or(DEFAULT_CLIPBOARD_THRESHOLD)
|
||||
}
|
||||
|
||||
fn auto_restart(&self) -> bool {
|
||||
self.parsed.auto_restart.unwrap_or(true)
|
||||
}
|
||||
|
||||
fn pre_paste_delay(&self) -> usize {
|
||||
self
|
||||
.parsed
|
||||
|
@ -244,6 +248,7 @@ impl ResolvedConfig {
|
|||
label,
|
||||
backend,
|
||||
clipboard_threshold,
|
||||
auto_restart,
|
||||
pre_paste_delay,
|
||||
toggle_key,
|
||||
includes,
|
||||
|
|
|
@ -210,6 +210,10 @@ impl Config for LegacyInteropConfig {
|
|||
}
|
||||
}
|
||||
|
||||
fn auto_restart(&self) -> bool {
|
||||
self.config.auto_restart
|
||||
}
|
||||
|
||||
fn match_paths(&self) -> &[String] {
|
||||
&self.match_paths
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user