From 5225c841ae5b9c86a0826aff006247f036e170c6 Mon Sep 17 00:00:00 2001 From: GyDi Date: Mon, 30 May 2022 00:57:31 +0800 Subject: [PATCH] chore: adjust code --- src-tauri/src/core/mod.rs | 19 ++++++++++++++----- src-tauri/src/core/multi.rs | 26 -------------------------- src-tauri/src/core/verge.rs | 4 ---- src/services/enhance.ts | 1 + 4 files changed, 15 insertions(+), 35 deletions(-) delete mode 100644 src-tauri/src/core/multi.rs diff --git a/src-tauri/src/core/mod.rs b/src-tauri/src/core/mod.rs index ec4e396..f9abfe9 100644 --- a/src-tauri/src/core/mod.rs +++ b/src-tauri/src/core/mod.rs @@ -28,6 +28,10 @@ pub use self::profiles::*; pub use self::service::*; pub use self::verge::*; +/// close the window for slient start +/// after enhance mode +static mut WINDOW_CLOSABLE: bool = true; + #[derive(Clone)] pub struct Core { pub clash: Arc>, @@ -48,10 +52,9 @@ pub struct Core { impl Core { pub fn new() -> Core { let clash = Clash::new(); - let mut verge = Verge::new(); + let verge = Verge::new(); let profiles = Profiles::new(); let service = Service::new(); - verge.launch_flag = Some(true); Core { clash: Arc::new(Mutex::new(clash)), @@ -383,11 +386,17 @@ impl Core { result.error.map(|err| log::error!("{err}")); }); - let mut verge = self.verge.lock(); + let verge = self.verge.lock(); let silent_start = verge.enable_silent_start.clone(); - if silent_start.unwrap_or(false) && verge.launch_flag.unwrap_or(false) { + + let closable = unsafe { WINDOW_CLOSABLE }; + + if silent_start.unwrap_or(false) && closable { + unsafe { + WINDOW_CLOSABLE = false; + } + window.emit("script-handler-close", payload).unwrap(); - verge.launch_flag = Some(false); } else { window.emit("script-handler", payload).unwrap(); } diff --git a/src-tauri/src/core/multi.rs b/src-tauri/src/core/multi.rs deleted file mode 100644 index d779830..0000000 --- a/src-tauri/src/core/multi.rs +++ /dev/null @@ -1,26 +0,0 @@ -use anyhow::{Context, Result}; -use std::env::current_exe; - -pub struct CoreItem { - pub name: String, - pub path: String, -} - -pub struct Multi {} - -impl Multi { - pub fn list() -> Result> { - let paths = current_exe() - .unwrap() - .parent() - .unwrap() - .read_dir() - .context("failed to current dir")?; - - for path in paths { - dbg!(path.unwrap().path().metadata().unwrap().permissions().); - } - - Ok(vec![]) - } -} diff --git a/src-tauri/src/core/verge.rs b/src-tauri/src/core/verge.rs index 0db1621..a03bde4 100644 --- a/src-tauri/src/core/verge.rs +++ b/src-tauri/src/core/verge.rs @@ -37,10 +37,6 @@ pub struct Verge { /// enable proxy guard pub enable_proxy_guard: Option, - /// launch flag - #[serde(skip_serializing)] - pub launch_flag: Option, - /// set system proxy bypass pub system_proxy_bypass: Option, diff --git a/src/services/enhance.ts b/src/services/enhance.ts index 803ee2e..1fbee88 100644 --- a/src/services/enhance.ts +++ b/src/services/enhance.ts @@ -136,6 +136,7 @@ class Enhance { emit(payload.callback, JSON.stringify(result)).catch(console.error); } + // setup the handler setup() { if (this.isSetup) return;